Commit Graph

35 Commits

Author SHA1 Message Date
Awiteb
904d14064f feat: Sign using NIP-07
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:22:40 +00:00
Awiteb
67339a8a47 chore: verify subscriptions
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-04 06:28:32 +00:00
Awiteb
67e25da8c0 feat: New flag to patch apply and merge to mention patches
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-03 15:24:04 +00:00
Awiteb
4e0ecdceaf feat: Support signing using NIP-46 bunker
Suggested-by: DanConwayDev <DanConwayDev@protonmail.com>
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-18 21:43:50 +00:00
Awiteb
9e840be820 chore: Use new stabilized let-chains feature
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 09:34:32 +00:00
DanConwayDev
7c589f1c6c fix: spelling in help content
reposotoies ~> repositories
2025-06-30 12:10:26 +00:00
Awiteb
8b09cff5e3 feat: New patch subcommands apply,close,draft,merge and reopen to manage the patch status
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-28 13:47:31 +00:00
Awiteb
ec08a1febc chore: Improve maintainers handling
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-14 10:36:01 +00:00
Awiteb
a9a2cb2b16 feat: New issue {reopen,close,resolve} commands to manage issue status
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-14 09:38:00 +00:00
Awiteb
364356a573 feat: New patch fetch command to fetch patches
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-10 16:23:08 +00:00
Awiteb
8870f8ced3 chore: Fix a typo
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-10 08:41:36 +00:00
Awiteb
76b76bc8d6 chore(nostr_utils): Move the username logic to the utils
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-09 21:12:17 +00:00
Awiteb
983d2f209d chore(NostrClient): Limit the events to 1 in fetch_event function
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-09 10:29:17 +00:00
Awiteb
9069adbe22 chore: Add the signer to the client if found
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-08 20:35:49 +00:00
Awiteb
4c6578ccb1 feat: Support relays and naddrs sets
This commit introduces support for 'sets', a feature that simplifies
referencing multiple relays or naddrs with a single word.

Sets are stored in the config directory under `n34` as `config.toml` in
`TOML` format. The config path follows the `$XDG_CONFIG_HOME` standard,
defaulting to `$HOME/.config` if unset.

The `n34 sets` command allows managing sets, adding, removing, updating,
or displaying them. When using the main `--relays` flag, a set name can
be provided to automatically expand its relays (an error occurs if the
set contains no relays). Similarly, any command accepting naddrs can
reference a set to extract its naddrs.

Sets can also be merged by updating a set while specifying another
set in `--repo` merges their naddrs, while `--set-relays` merges their
relays. Removal follows the same pattern.

Signed-off-by: Awiteb <a@4rs.nl>
2025-06-01 12:12:09 +00:00
Awiteb
24e8522268 chore: Move the write relays definition to the end of the commands
To make it clear, we can review exactly what was collected instead of
having it spread throughout the body of the command.

Signed-off-by: Awiteb <a@4rs.nl>
2025-05-27 19:20:42 +00:00
Awiteb
f670859b92 chore: Remove the vector parameter from add_{read,write}_relays
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-27 12:35:26 +00:00
Awiteb
bca86f115f perf(NostrClient::send_event_to): Join the event sending
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-27 12:00:10 +00:00
Awiteb
37cf601c01 refactor: Support more than one naddr instead of one
This commit supports multiple naddrs for sending issues to and searching
for repositories by extracting the embedded relays, and appending to the
address file instead of overwriting its previous contents. A header has
also been added to the `nostr-address` file to clarify its purpose.

This enhancement accommodates maintainers who distribute issue tracking
across multiple repositories, preventing confusion if the primary
maintainer steps down. Now, issues and patches will reference all
relevant repositories, not just one.

Note that repositories won't automatically include all maintainers'
addresses unless explicitly specified. Maintainers may manage a
repository under a project-specific public key rather than individual
keys. Addresses are only added to issues and patches when explicitly
provided via the command or written to the address file. This prevents
unintended inclusions and ensures clarity.

Suggested-by: DanConwayDev <DanConwayDev@protonmail.com>
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-27 07:05:13 +00:00
Awiteb
a137a3f9de chore: Rename nostr::nips::nip22::Comment to CommentTarget
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-21 21:45:06 +00:00
Awiteb
a324ba2ff7 chore: Add comments helper functions
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-21 21:45:05 +00:00
Awiteb
661266c67b chore(nostr): A function to add user read relays to a vector
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-21 21:45:05 +00:00
Awiteb
a9b088d8a5 chore(NostrClient-add_relays): If the relays is empty do nothing
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-21 21:44:51 +00:00
Awiteb
1af731ef67 chore: Improve event fetchers functions
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-19 20:26:29 +00:00
Awiteb
4298ca5d2d chore: Use Coordinate instead of Nip19Coordinate in NostrClient::fetch_repo
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-19 20:26:29 +00:00
Awiteb
70ee4a59b2 perf: Connect to relays in a separate task
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-08 14:25:09 +00:00
Awiteb
2627fe7980 chore: Function to returns the event author if found
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-08 13:01:20 +00:00
Awiteb
42508fc8b9 chore: Returns the relays that successfully received the event on NostrClient::send_event_to
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-08 13:01:05 +00:00
Awiteb
577de41054 chore(repo-announce): Utils to creates the bech32
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-07 06:04:28 +00:00
Awiteb
3857753b7d chore: Log the event result inside send_event_to function
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-07 05:42:07 +00:00
Awiteb
93c8743dc7 chore: Add the relays for read and write
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-06 12:24:33 +00:00
Awiteb
6fc59bfe59 chore: Send the repo announce to the author relays list
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-06 11:20:41 +00:00
Awiteb
273058fe3f chore: A method to send an event builder
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-05 19:56:41 +00:00
Awiteb
99e46d7633 chore: Add a extension trait for Tags type
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-05 19:56:40 +00:00
Awiteb
d962732e52 feat: Setup the CLI and create repo view command
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-03 15:58:45 +00:00