83 Commits

Author SHA1 Message Date
fiatjaf
65ddf7b821 use appendUnique from nostrlib. 2026-04-02 03:24:05 -03:00
fiatjaf
e19306b124 event: --outbox flag for publishing. 2026-04-02 03:14:19 -03:00
fiatjaf
e059fba487 event/req: accept -h tag and addresses in -a tag. 2026-03-30 12:20:52 -03:00
mattn
de599c64f6 Merge pull request #118 from fiatjaf/fix/event-split-safety
fix: use strings.Cut instead of strings.Split to avoid potential panic
2026-03-30 14:10:25 +09:00
Yasuhiro Matsumoto
3d650ee502 fix: use strings.Cut instead of strings.Split to avoid potential panic
strings.Split(url, "://")[1] panics if the URL has no "://" separator.
strings.Cut handles this safely by returning an empty string.
2026-03-30 13:43:29 +09:00
fiatjaf
3b318fec54 event: must clear events before reusing. 2026-03-24 22:34:10 -03:00
fiatjaf
faac4d9440 ensure an event is not resigned if it was already signed and wasn't changed. 2026-03-17 19:32:47 -03:00
fiatjaf
c1e72e0af1 convert tags to appropriate hex pubkeys, ids etc, even from nip05, but check the tag name first for better (hardcoded) context. 2026-03-13 00:30:46 -03:00
fiatjaf
2a5ce3b249 blossom mirror to only take a URL and do its thing, not try to list blobs. 2026-01-18 14:47:28 -03:00
fiatjaf
c6da13649d hopefully eliminate the weird case of cron and githubactions calling nak with an empty stdin and causing it to do nothing.
closes https://github.com/fiatjaf/nak/issues/90
2026-01-16 16:11:07 -03:00
fiatjaf
e91d4429ec switch the local databases to lmdb so they can be accessed by multiple nak instances at the same time. 2025-12-22 00:18:56 -03:00
fiatjaf
e0ca768695 also parse npub/nevent/naddr when used as tag values, turn them into their corresponding hex or address format. 2025-11-11 16:32:14 -03:00
fiatjaf
ecb7f8f195 event: renew relay connection before publishing if necessary. 2025-09-07 18:56:51 -03:00
fiatjaf
550c89d8d7 slightly improve some error messages. 2025-06-27 13:50:28 -03:00
fiatjaf
1e237b4c42 do not fill .Content when "content" is received empty from stdin.
fixes https://github.com/fiatjaf/nak/issues/71
2025-06-23 17:57:45 -03:00
fiatjaf
67e291e80d nak publish 2025-05-06 00:56:49 -03:00
fiatjaf
02f22a8c2f nak event --confirm 2025-05-03 21:44:59 -03:00
fiatjaf
d733a31898 convert to using nostrlib. 2025-04-20 18:11:21 -03:00
fiatjaf
703c186958 much more colors everywhere and everything is prettier. 2025-04-03 14:50:25 -03:00
fiatjaf
9547711e8d nice dynamic UI when connecting to relays, and go much faster concurrently. 2025-04-03 11:42:33 -03:00
fiatjaf
f5316a0f35 preliminary (broken) dvm support. 2025-03-05 22:01:24 -03:00
fiatjaf
43a3e5f40d event: support reading --content from a file if the name starts with @. 2025-02-18 18:19:36 -03:00
fiatjaf
26930d40bc migrate to urfave/cli/v3 again now that they have flags after arguments. 2025-02-16 13:02:04 -03:00
fiatjaf
60d1292f80 parse multiline json from input on nak event and nak req, use iterators instead of channels for more efficient stdin parsing. 2025-02-05 09:44:16 -03:00
fiatjaf
6e43a6b733 reword NIP-XX to nipXX everywhere. 2025-01-29 19:13:30 -03:00
fiatjaf
fd5cd55f6f replace encoding/json with json-iterator everywhere so we get rid of HTML encoding and maybe be faster. 2024-12-03 00:43:52 -03:00
fiatjaf
a187e448f2 get rid of some of the HTML escaping that plagues golang json. 2024-11-11 23:09:15 -03:00
fiatjaf
847f8aaa69 remove duplicated password decryption prompts by returning the bare key together with the Keyer when it is given. 2024-10-29 21:11:15 -03:00
fiatjaf
134d1225d6 nak event: presence of key flags indicates the need to resign a given event.
fixes https://github.com/fiatjaf/nak/issues/41
2024-10-29 13:33:35 -03:00
fiatjaf
d7c0ff2bb7 update go-nostr keyer interface and make req --auth work again. 2024-09-22 19:21:41 -03:00
fiatjaf
dae7eba8ca use keyer.Keyer in most places instead of raw bunkers and plaintext keys, simplifies the code a little at the cost of some abstraction but I think it's strictly good this time. 2024-09-17 11:33:02 -03:00
fiatjaf
2b5f3355bc use a single global sdk.System and its Pool. 2024-09-17 11:33:02 -03:00
arkinox
9bbc87b27a specify how ; can separate multiple tag values 2024-09-10 19:13:25 -03:00
fiatjaf
36c32ae308 make it possible to have empty content on kind 1.
fixes https://github.com/fiatjaf/nak/issues/32
2024-08-26 15:49:13 -03:00
fiatjaf
cfdea699bc fix using NOSTR_SECRET_KEY environment variable. 2024-08-21 10:46:29 -03:00
fiatjaf
014c6bc11d --pow: parallel work. 2024-08-20 23:06:14 -03:00
fiatjaf
9d43e66fac nak event --pow
closes https://github.com/fiatjaf/nak/issues/29
2024-08-20 10:34:47 -03:00
fiatjaf
c90e61dbec set .DisableSliceFlagSeparator to true.
fixes nostr:nevent1qqs9qwgwnr2rzguzrgt99hhhyv8e84mcdr4mnk86uvm6ndjvzl4rjxqpzpmhxue69uhkztnwdaejumr0dshsz9mhwden5te0vf5hgcm0d9hx2u3wwdhkx6tpdshszxnhwden5te0vfhhxarj9ekx2cm5w4exjene9ehx2ap0j8u0fj
2024-08-07 11:46:08 -03:00
fiatjaf
928c73513c just move imports around. 2024-07-30 11:43:14 -03:00
fiatjaf
220fe84f1b hardcode our fork of urfave/cli because go is stupid.
fixes https://github.com/fiatjaf/nak/issues/26
2024-07-23 15:23:13 -03:00
fiatjaf
49ce12ffc2 use natural date parser thing for req "since", "until" and event "ts". 2024-07-13 13:07:49 -03:00
fiatjaf
a5013c513d disallow negative kinds and limits. 2024-07-13 13:07:49 -03:00
fiatjaf
8f51fe757b remove nson.
it's not being used by anyone and didn't gain enough traction, and also
now I think I have a more efficient way of encoding this, so using that
new scheme in the future will be better than this.
2024-07-13 13:06:51 -03:00
fiatjaf
316d94166e fix lineProcessingError() -- it wasn't returning a ctx so it was a noop. 2024-07-11 15:33:44 -03:00
fiatjaf
ac00c5065f nak req: --force-pre-auth flag. 2024-07-10 14:48:02 -03:00
fiatjaf
dba2ed0b5f update to cli v3. 2024-06-25 22:18:26 -03:00
fiatjaf
71dfe583ed rename flags from --musig2-... to --musig-..., add id to event and other small tweaks. 2024-05-14 23:52:56 -03:00
fiatjaf
81968f6c0c nak key combine and nak event --musig2 2024-05-14 15:23:08 -03:00
fiatjaf
ffe2db7f96 event: accept tags with a single item. 2024-02-21 09:47:34 -03:00
fiatjaf
6626001dd2 --connect-as to specify client pubkey when using --connect to bunker 2024-02-06 12:47:46 -03:00