Fishcake
c464a26151
use nostr.build api v2 with optional nip98 support
...
Closes: https://github.com/damus-io/damus/pull/1471
Signed-off-by: William Casarin <jb55@jb55.com >
2023-08-20 16:29:33 -07:00
Fishcake
1432087edf
add nostr event 27235 (nip-98)
...
Closes: https://github.com/damus-io/damus/pull/1471
Signed-off-by: William Casarin <jb55@jb55.com >
2023-08-20 16:29:33 -07:00
William Casarin
ae2f7255a7
Mute hellthreads everywhere
...
Changelog-Fixed: Mute hellthreads everywhere
Fixes: https://damus.io/note1rn3ckl76myga6xcefr0le52d8czd0wqe8apguewqknyv7m55mmpq3rv3hv
2023-08-20 11:45:25 -07:00
William Casarin
006a6ef16f
Show possibly invalid zaps if we don't have the event in cache
...
Changelog-Fixed: Fix zaps sometimes not appearing
2023-08-10 10:32:57 -07:00
William Casarin
25e022d933
reply: ensure the person you're replying to is the first entry in the reply description
...
Suggested-by: Tanel
Changelog-Fixed: Ensure the person you're replying to is the first entry in the reply description
2023-08-06 15:37:32 -07:00
William Casarin
e642913944
notifications: don't cutoff text
...
Changelog-Fixed: don't cutoff text in notifications
2023-08-06 14:58:32 -07:00
William Casarin
bd2193251f
build: fix some build issues with the last revert
...
Fixes: 1a2ac976a3 ("Fix old notifications always appearing on first start")
2023-08-06 11:30:28 -07:00
William Casarin
1a2ac976a3
Fix old notifications always appearing on first start
...
Revert "home: debounce last notified"
This is technically incorrect, as debouncing can prevent saving
important events.
The proper way to do this is to save it locally in memory, and then
debouncing the saving itself. Will do this soon.
Reverts: a9b4cfd424
Fixes: https://github.com/damus-io/damus/issues/1439
Changelog-Fixed: Fixed old notifications always appearing on first start
2023-08-06 09:22:28 -07:00
Bryan Montz
cddb88b890
fix: crash when muting threads
...
Fixes a crash when the user mutes a thread. UserDefaults didn't know how
to serialize a NoteId for storage, so we'll convert it to the hex id
first.
Changelog-Fixed: Crash when muting threads
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-08-04 09:35:35 -07:00
William Casarin
14ba33674b
setting: adjustable font size for jack the zapper
...
Changelog-Added: Adjustable font size
2023-08-03 18:38:20 -07:00
William Casarin
cebd1f48ca
ndb: switch to nostrdb notes
...
This is a refactor of the codebase to use a more memory-efficient
representation of notes. It should also be much faster at decoding since
we're using a custom C json parser now.
Changelog-Changed: Improved memory usage and performance when processing events
2023-08-03 13:20:36 -07:00
William Casarin
88306d00a3
key: generate a FullKeypair when generating new keys
2023-08-01 21:53:19 -07:00
William Casarin
616de2eebc
state: improve damus state init
...
It's a bit cleaner now
2023-08-01 21:53:19 -07:00
William Casarin
a9b4cfd424
home: debounce last notified
...
Calling UserDefaults fast in a loop is not good
2023-07-31 05:38:19 -07:00
William Casarin
66e204eb91
notifications: don't do expensive id calculation
2023-07-31 05:38:19 -07:00
William Casarin
7040235605
refactor: add Pubkey, Privkey, NoteId string aliases
...
This is a non-behavioral change in preparation for the actual switchover
from Strings to Ids. The purpose of this kit is to reduce the size of
the switchover commit which is going to be very large.
2023-07-31 05:38:19 -07:00
William Casarin
b40c595a7c
notify: switch over to new typesafe notifications
2023-07-30 11:02:44 -07:00
William Casarin
1463ce5e3a
profile: don't notify on notice
...
this is just a waste of cpu at this point and could cause main thread
blocking issues
2023-07-30 10:52:02 -07:00
Suhail Saqan
d11cd76e6a
Add multiple reaction support
...
Changelog-Added: Add support for multiple reactions
Closes: https://github.com/damus-io/damus/issues/1335
2023-07-29 10:03:55 -07:00
William Casarin
593d0e2abe
ndb: sync up a few remaining NdbNote tag differences
2023-07-25 16:22:25 -07:00
William Casarin
2f8aa29e92
ndb: make NostrEvents immutable
...
Since we can't mutate NdbNotes, let's update the existing codebase to
generate and sign ids on NostrEvent constructions. This will allow us to
match NdbNote's constructor
2023-07-25 15:34:05 -07:00
William Casarin
e3c04465fc
ndb: move to uint32 for kind and created_at
2023-07-25 15:24:26 -07:00
William Casarin
b5dd90b36a
notes: generalize event_is_reply a bit
...
so that it works with NdbNote as well
2023-07-24 12:39:55 -07:00
William Casarin
1e9e4a7f3a
ndb: implement eventref building from ndb notes
2023-07-24 10:55:34 -07:00
William Casarin
1854e10486
mentions: add ndb mention parser
2023-07-22 17:19:47 -07:00
William Casarin
af7ea7024f
misc: don't immediately hex encode event commitment
...
keep it separate for now, since we're moving to more low level. We
probably won't even use this, but this is cleaner logicwise anyway.
2023-07-22 17:19:47 -07:00
William Casarin
2a4ee6c48c
zaps: don't spam lnurls when validate zaps
...
lnurls.lookup_or_fetch not fetched lnurl1dp68gurn8ghj7um9dej8xct5wvhxcmmv9uh8wetvdskkkmn0wahz7mrww4excup0df3r2dg3mj444
fetching static payreq lnurl1dp68gurn8ghj7um9dej8xct5wvhxcmmv9uh8wetvdskkkmn0wahz7mrww4excup0df3r2dg3mj444
lnurls.lookup_or_fetch already fetching lnurl1dp68gurn8ghj7um9dej8xct5wvhxcmmv9uh8wetvdskkkmn0wahz7mrww4excup0df3r2dg3mj444
lnurls.lookup_or_fetch already fetching lnurl1dp68gurn8ghj7um9dej8xct5wvhxcmmv9uh8wetvdskkkmn0wahz7mrww4excup0df3r2dg3mj444
lnurls.lookup_or_fetch already fetching lnurl1dp68gurn8ghj7um9dej8xct5wvhxcmmv9uh8wetvdskkkmn0wahz7mrww4excup0df3r2dg3mj444
lnurls.lookup_or_fetch already fetching lnurl1dp68gurn8ghj7um9dej8xct5wvhxcmmv9uh8wetvdskkkmn0wahz7mrww4excup0df3r2dg3mj444
Changelog-Fixed: Don't spam lnurls when validating zaps
2023-07-17 14:12:41 -07:00
William Casarin
160b293359
performance: don't spam nip05 validation on startup
...
Since we don't show these on events anymore, we don't need to spam nip05
validation. We can just check when we go to the profile page
Changelog-Fixed: Eliminate nostr address validation bandwidth on startup
2023-07-17 13:25:56 -07:00
William Casarin
d04f1c6867
login: allow user to login to deleted profile
...
If they every change their mind.
Changelog-Fixed: Allow user to login to deleted profile
2023-07-17 13:25:56 -07:00
William Casarin
4033ad66ba
test: fix crash in ci
2023-07-17 13:25:56 -07:00
William Casarin
bd4c29604f
Fix broken markdown renderer
...
This switches away from the old markdown renderer to the new one at
https://github.com/damus-io/swift-markdown-ui
Changelog-Fixed: Fix broken markdown renderer
2023-07-16 15:27:24 -07:00
William Casarin
571ed39d52
Fixed issue where hashtags were leaking in DMs
...
Now we never add any tags to DMs, we only add the p tag of the user
you're talking to.
Changelog-Fixed: Fixed issue where hashtags were leaking in DMs
2023-07-16 15:24:06 -07:00
William Casarin
1135c19fea
test: add setting property tests
...
Some initial UserSettingsStore property tests
2023-07-16 13:05:18 -07:00
William Casarin
0c95071de7
project: rename parse_mentions to parse_note_content
...
This is more accurate
2023-07-16 11:46:23 -07:00
Bryan Montz
47e7505573
fix typos
...
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-07-16 07:37:55 -07:00
Bryan Montz
0f1390f412
Swift cleanup: remove duplicate or unnecessary initializers using default values
...
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-07-16 07:37:55 -07:00
Bryan Montz
6bf5293701
Swift cleanup: don't capture case values only to ignore them in switch statements
...
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-07-16 07:37:55 -07:00
Bryan Montz
3d6909bf62
Swift cleanup: simplify "Task.init {}" to "Task {}"
...
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Reviewed-by: William Casarin <jb55@jb55.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-07-16 07:37:55 -07:00
Bryan Montz
ecd8b64b8b
Swift cleanup: prefer case list over fallthrough in switch statements
...
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-07-16 07:37:55 -07:00
Bryan Montz
0c627ae0a0
Swift cleanup: "init (" -> "init("
...
Signed-off-by: Bryan Montz <bryanmontz@me.com >
Signed-off-by: William Casarin <jb55@jb55.com >
2023-07-16 07:37:55 -07:00
William Casarin
05e73a3711
actually subscribe to likes. oops
2023-07-13 11:43:52 -07:00
William Casarin
31fa63debf
home: hide users and hashtags from home timeline when you unfollow
...
Add the ability to resubscribe to home filters so that it will be
updated when you follow and unfollow people
Changelog-Fixed: Hide users and hashtags from home timeline when you unfollow
2023-07-13 11:08:09 -07:00
William Casarin
122655bea3
home: separate home filters
...
we will want to resubscribe to these, so pull them out
2023-07-13 11:08:09 -07:00
William Casarin
9a714943fd
contacts: get followed hashtags function
...
todo: cache these
2023-07-13 11:08:09 -07:00
William Casarin
1136808afa
contacts: generalize following to allow any reference
...
I noticed we are not using the PostBox when following new users. Not
good! This is probably why following users sometimes does not work.
Changelog-Fixed: Fixed a bug where following a user might not work due to poor connectivity
2023-07-13 09:04:55 -07:00
William Casarin
d96ea593a5
search: allow searching longform articles by hashtag
2023-07-11 12:17:22 -07:00
William Casarin
7514a741c0
docs: make note to replace old bech32 parser
2023-07-11 12:17:09 -07:00
William Casarin
db2ec0a00a
Fix npub mention bugs, fix slowness when parsing large posts
...
Switch the post parser to use the same code as the content parser. This
was causing many issues, including performance issues.
Changelog-Fixed: Fix lag when creating large posts
Changelog-Fixed: Fix npub mentions failing to parse in some cases
Changelog-Added: Add r tag when mentioning a url
Changelog-Removed: Remove old @ and & hex key mentions
2023-07-11 09:15:13 -07:00
cr0bar
2353f97114
Change to is_hashtag_chat to support non-latin characters
2023-07-11 06:39:12 -07:00
William Casarin
374610a21a
artifacts: allow unseparated note artifacts
...
This is needed for longform events. Right now we treat unseparated note
artifacts as a list of blocks, but we will likely need to render these
blocks into lists of attributed texts with image blocks inbetween.
2023-07-10 18:24:43 -07:00