Commit Graph

260 Commits

Author SHA1 Message Date
Mike Dilger
f583276aa9 ui: Selection of relays to post on 2022-12-28 13:08:49 +13:00
Mike Dilger
825fc8b5bb Overlord to save dirty relays on "save_relays" message (post field only) 2022-12-28 12:18:20 +13:00
Mike Dilger
0bca661974 DbRelay.dirty, a dirty hack flag we will use until we refactor persistence 2022-12-28 12:14:59 +13:00
Mike Dilger
70b161fd7e DbRelay: add 2 fields 2022-12-28 12:14:25 +13:00
Mike Dilger
6be709a9ed schema 6: relay.post 2022-12-28 12:14:21 +13:00
Mike Dilger
7d2985def1 Save keys after importing 2022-12-28 07:30:22 +13:00
Mike Dilger
e327891a52 Generate or Import a Key pair 2022-12-27 23:37:06 +13:00
Mike Dilger
e440475755 If no RUST_LOG env is set, default to Info 2022-12-27 22:59:17 +13:00
Mike Dilger
388e92ac05 Load Signer at startup 2022-12-27 21:58:26 +13:00
Mike Dilger
2802fe01a0 Settings: added PublicKey and EncryptedPrivateKey 2022-12-27 21:58:13 +13:00
Mike Dilger
ef7849e659 Signer 2022-12-27 21:57:51 +13:00
Mike Dilger
83c603a5b6 Switch from Mutex locks to to RwLocks where it makes sense 2022-12-27 20:55:38 +13:00
Mike Dilger
b1995ead86 Strip out dead setting handling code, we use the Setting object now 2022-12-27 19:24:26 +13:00
Mike Dilger
8e95ccab00 New settings: num_relays_per_person, max_relays (with new relay picker logic) 2022-12-27 17:48:49 +13:00
Mike Dilger
c8c6fb04af Increase size of to_minions() channel buffer 2022-12-27 17:43:27 +13:00
Mike Dilger
1c377e058a Fix overlord's wrong usage of default settings 2022-12-27 17:02:46 +13:00
Mike Dilger
daac5124bf bugfix 2022-12-27 16:30:05 +13:00
Mike Dilger
0fdbd03fa1 Follow via public key and relay 2022-12-27 13:25:32 +13:00
Mike Dilger
863b680f04 small style tweak 2022-12-27 12:13:55 +13:00
Mike Dilger
03611e7323 Tweak NIP-35 follow support to work even if relays missing 2022-12-27 11:48:34 +13:00
Mike Dilger
5653bb781a NIP-35 support 2022-12-27 11:32:18 +13:00
Mike Dilger
2072a445df Improve seek by desiring entire reply chain at once 2022-12-26 21:33:26 +13:00
Mike Dilger
ae33ab24f5 Improve search for missing events 2022-12-26 21:16:50 +13:00
Mike Dilger
a86776f5f2 get_missing_events button on feed 2022-12-26 21:07:23 +13:00
Mike Dilger
4f57ad26f5 fix: restore debug logging 2022-12-26 21:07:00 +13:00
Mike Dilger
8b2e8bd4e5 Improve tracing output 2022-12-26 18:50:04 +13:00
Mike Dilger
26a6261312 Even more Url validation 2022-12-26 18:39:12 +13:00
Mike Dilger
ccf969f717 Get desired events (from relays) at startup at least (and minion logging improvements) 2022-12-26 18:27:28 +13:00
Mike Dilger
28c2439989 better new event logging 2022-12-26 17:35:58 +13:00
Mike Dilger
0d503a5857 Tunstenite and reqwest connect timeout 2022-12-26 15:01:49 +13:00
Mike Dilger
a5c5627749 Start driving minions with messages 2022-12-26 14:44:29 +13:00
Mike Dilger
eb8df21e2e overlord: refactor handle_tasknextjoined() 2022-12-26 13:17:22 +13:00
Mike Dilger
bd9f57cb44 overlord: track urls we are watching 2022-12-26 13:05:57 +13:00
Mike Dilger
3795034b1e More Url validation 2022-12-26 12:33:18 +13:00
Mike Dilger
5255d33fdd Update more data on event processing 2022-12-26 12:33:18 +13:00
Mike Dilger
67859ef9e5 On relay success, update relay table, not person_relay last_fetched 2022-12-26 12:14:05 +13:00
Mike Dilger
d693907cf4 Schema 4: relay.last_success_at 2022-12-26 12:14:05 +13:00
Mike Dilger
90563d4da6 ui: relays page: sorted 2022-12-26 09:50:48 +13:00
Mike Dilger
3fc0221413 Add relays from 'e' and 'p' tags on startup 2022-12-26 09:50:37 +13:00
Mike Dilger
c394f833b0 Downgrade a warning 2022-12-25 09:06:44 +13:00
Mike Dilger
8ab8f750bb ui: People page looking better 2022-12-25 09:04:19 +13:00
Mike Dilger
9ec7c80792 Start of showing relays and connect button (we also need to know if we are already connected) 2022-12-24 21:00:21 +13:00
Mike Dilger
84bac254b1 Store all relays in globals (ui will need for relay page) 2022-12-24 20:52:23 +13:00
Mike Dilger
28290a49b0 Fix shutdown issues where minions were getting cut off 2022-12-24 20:38:30 +13:00
Mike Dilger
7e2766ac95 fix: don't bump relay error count if exiting gracefully 2022-12-24 20:17:53 +13:00
Mike Dilger
79d2e2ca3a Bring over some overlord minion-exit handling we forgot from the tauri branch 2022-12-24 20:17:53 +13:00
Mike Dilger
a9a4688b7e If send is pressed with empty text buffer, don't do anything 2022-12-24 20:17:53 +13:00
Mike Dilger
af3f2f8258 Method for overlord to tell ui to shut down 2022-12-24 17:59:30 +13:00
Mike Dilger
9f5f9b1a46 Strip/update dead code 2022-12-24 17:59:30 +13:00
Mike Dilger
7e18d33f71 PART 4 of globals/process revamp: strip out feed_event and feed_event map from globals; get_feed rewritten 2022-12-24 17:59:30 +13:00
Mike Dilger
b544603d5e PART 3 of globals/process revamp: Switch processing over to the new process 2022-12-24 17:59:29 +13:00
Mike Dilger
9302b36a57 PART 2 of globals/process revamp: mod process with process_new_event() to replace old add_event() 2022-12-24 17:59:05 +13:00
Mike Dilger
cd59a66a1c PART 1 of globals/process revamp: Added 3 new maps and 3 accessor functions 2022-12-24 17:04:17 +13:00
Mike Dilger
2be8b12ffd Move GLOBALS accessors into Globals impl 2022-12-24 17:04:17 +13:00
Mike Dilger
91b0c5bd6f Relationship enum 2022-12-24 17:04:17 +13:00
Mike Dilger
4f8667da82 schema3: extended person_relay, event_relationship, event_hashtag 2022-12-24 17:04:17 +13:00
Mike Dilger
07e904ffac Lookback filter to include RelaysList 2022-12-23 23:31:54 +13:00
Mike Dilger
2d67625017 Lookback for recommended relays and contacts lists 2022-12-23 23:04:42 +13:00
Mike Dilger
4008bea2bf Basic people page - cannot follow or unfollow yet [plus cleanup] 2022-12-23 20:36:58 +13:00
Mike Dilger
a6feac8d4f Settings page setup and plumbed 2022-12-23 19:55:41 +13:00
Mike Dilger
2dfaee72ab Depend on nostr-types 0.1 (nostr-proto has been promoted as) 2022-12-23 17:54:11 +13:00
Mike Dilger
f1f905e595 Settings overhaul: put in Globals, load syncronously at startup; load/save as a unit 2022-12-23 17:21:42 +13:00
Mike Dilger
422c60062b ui: feed: (i) hover to see Id of message 2022-12-23 16:00:25 +13:00
Mike Dilger
162c1be486 ui: feed: Render pubkey weak 2022-12-23 15:57:36 +13:00
Mike Dilger
48964b18ee ui: feed: render threaded if setting is on (forced on currently) 2022-12-23 15:56:25 +13:00
Mike Dilger
561421f35a ui: feed: skip events that are not TextNotes (just in case get_feed is buggy) 2022-12-23 15:51:45 +13:00
Mike Dilger
fdd0e8ab01 ui: feed: restructure code 2022-12-23 15:50:02 +13:00
Mike Dilger
600b90159a Feed computation now threaded (will respect setting soon) 2022-12-23 15:46:49 +13:00
Mike Dilger
d8567da83a cleanup 2022-12-23 14:44:06 +13:00
Mike Dilger
21c1619953 Database version 2 (3 new settings) 2022-12-23 14:23:57 +13:00
Mike Dilger
dd04a5df19 Improve event processing/threading code 2022-12-23 09:36:57 +13:00
Mike Dilger
52ae2236db Try to avoid missing ticks 2022-12-22 20:15:03 +13:00
Mike Dilger
55c0ee4db2 Ping relays every 55 seconds to keep the connection alive 2022-12-22 18:50:40 +13:00
Mike Dilger
08f6bd1224 Refresh metadata on start (in globals and database) 2022-12-22 18:50:28 +13:00
Mike Dilger
5e0c38462d Fix a deadlock 2022-12-22 17:37:10 +13:00
Mike Dilger
d5aeaf1ba5 Area to type in your message 2022-12-22 06:38:40 +13:00
Mike Dilger
eb1d3a8141 Undo the font tweaks on Inconsolata, it messes with line height 2022-12-22 06:38:34 +13:00
Mike Dilger
e44936d7d1 Feed UI work 2022-12-22 06:34:54 +13:00
Mike Dilger
c304c6ed7e Fix feed event selection 2022-12-22 06:29:20 +13:00
Mike Dilger
ec07c2272e Process and show reactions 2022-12-22 06:29:20 +13:00
Mike Dilger
bd592aacc7 Change back to linear feed for now 2022-12-22 06:24:19 +13:00
Mike Dilger
8a46e2d5fe Remove globals.events; everything is now in globals.feed_events 2022-12-22 06:20:28 +13:00
Mike Dilger
6bd043004b Rename EventRelated to FeedEvent, and add the event to it 2022-12-22 06:13:52 +13:00
Mike Dilger
fd1954b2fc Process events as they come in 2022-12-22 06:13:11 +13:00
Mike Dilger
0d5803ce72 clean up 2022-12-22 06:13:11 +13:00
Mike Dilger
b7e2e576e4 Feed date_ago 2022-12-21 19:42:51 +13:00
Mike Dilger
cb19731353 Some feed page work 2022-12-21 19:42:45 +13:00
Mike Dilger
7aa14cc37c UI work - style, about page 2022-12-21 19:42:28 +13:00
Mike Dilger
0200cbe3d2 More UI work 2022-12-21 19:42:16 +13:00
Mike Dilger
8911270edc Subscriptions 2022-12-21 10:12:00 +13:00
Mike Dilger
319e6eb9bf Use random strings for subscription ids on the wire 2022-12-21 09:31:08 +13:00
Mike Dilger
974f1fb09a Start of private key code 2022-12-21 09:01:53 +13:00
Mike Dilger
7c2e0b0c73 Remove allow(dead_code) on code that is now in use 2022-12-21 08:40:48 +13:00
Mike Dilger
f9b54572e3 Bring in minions 2022-12-21 08:33:46 +13:00
Mike Dilger
25b8ceee2e Depend on more packages, handle their error types 2022-12-21 08:33:46 +13:00
Mike Dilger
81c0967e02 follow_key_and_relay() 2022-12-21 08:33:46 +13:00
Mike Dilger
79ddb6f626 About 2022-12-21 08:33:46 +13:00
Mike Dilger
7b8490c5f2 UI fiddling 2022-12-21 08:33:46 +13:00
Mike Dilger
36da2c831d Overlord, and shutdown handling 2022-12-21 08:33:46 +13:00
Mike Dilger
170270d83e App icon showing 2022-12-21 08:33:46 +13:00
Mike Dilger
27a4377888 Nostr data in GLOBALS 2022-12-21 08:33:46 +13:00
Mike Dilger
df637fc6eb EventRelated 2022-12-21 08:33:46 +13:00
Mike Dilger
6c19ba1564 Settings 2022-12-21 08:33:46 +13:00
Mike Dilger
fe541f9e6e Initial egui-eframe hello world application 2022-12-21 08:33:46 +13:00
Mike Dilger
b31d1f4334 Database code copied in 2022-12-21 08:33:46 +13:00
Mike Dilger
6449757005 Globals/GLOBALS 2022-12-21 08:33:46 +13:00
Mike Dilger
52a94eb32c Error type 2022-12-21 08:33:46 +13:00
Mike Dilger
3988efce54 BusMessage 2022-12-21 08:33:46 +13:00
Mike Dilger
bbe7bb642b Setup tracing/logging 2022-12-20 18:31:57 +13:00
Mike Dilger
665ba0bf12 initial commit 2022-12-20 17:40:30 +13:00