Awiteb
035e22a6ba
chore: Fix typos
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-28 10:29:38 +00:00
Awiteb
043ef6fc96
chore: Add the repository to authorized issue status users
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-24 11:40:48 +00:00
Awiteb
54cae48123
chroe: Check if the naddrs exists for issue new and patch send
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-14 10:46:55 +00:00
Awiteb
1651fd5a47
fix: Not to return an error if nostr-address file does not exist
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-14 10:45:00 +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
63f6c1fb11
chore(cli): Improve run_command macro
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-11 16:54:33 +00:00
Awiteb
3e6fed8bc6
chore: Remove unnecessary ToString::to_string call
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-11 10:28:11 +00:00
Awiteb
431bfd2512
chore: Update CONTRIBUTING.md
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-11 10:18:03 +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
2a3e2e09c0
chore: Improve single letter tags
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-10 08:53:22 +00:00
Awiteb
8870f8ced3
chore: Fix a typo
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-10 08:41:36 +00:00
Awiteb
da96985a40
feat: New issue view command to view an issue
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-09 22:09:55 +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
7ba98bbbe8
chore: Update README.md
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-09 10:01:35 +00:00
Awiteb
8f70778c26
chore: Improve unreachable panic message
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-08 20:35:49 +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
b1027b3b04
refactor: Improve commands running and make the signer optional for some commands
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-08 20:35:49 +00:00
Awiteb
5dc8e31eb3
feat: New config relays command to set the default fallbacks relays
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-07 21:12:34 +00:00
Awiteb
51bd239024
feat: New config pow command to set the default PoW difficulty
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-07 19:54:40 +00:00
Awiteb
53a2eb5bda
chore: Remove toml prefix from CliConfig::{load,dump}_toml
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-07 19:01:53 +00:00
Awiteb
a6a61aedf1
refactor: Store the config in CliOptions instead of its path
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-07 19:00:29 +00:00
Awiteb
30b3056d39
test: Add a new patch parsing unit test
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-06 21:23:27 +00:00
Awiteb
8fe6755d3b
chore: Run the tests in the CI
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-06 21:15:33 +00:00
Awiteb
812a06a276
feat: Add description tag to the patch
...
The tag value is the patch subject
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-04 22:10:10 +00:00
Awiteb
494cced9cb
feat: Add alt tag to the git issue
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-04 22:05:21 +00:00
Awiteb
16e6300c81
chore(cli): Return Future and make the function sync CommandRunner:run
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-04 22:04:48 +00:00
Awiteb
ef8d6c1c4f
feat: New patch send command to send patches
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-04 12:45:36 +00:00
Awiteb
01f5fa60e6
chore(issue-new): Add naddrs relays to write relays
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-04 06:56:18 +00:00
Awiteb
7d9b968f16
chore(cli): Add author read relays to discovery relays
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-03 14:28:04 +00:00
Awiteb
57fc868b63
chore: Move NostrEvent to crate::cli::types
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-03 09:27:20 +00:00
Awiteb
08505151bd
chore: More steps in Patch Guidelines
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-02 17:54:41 +00:00
Awiteb
864f3018f6
chore: Update README.md
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-01 12:46:10 +00:00
Awiteb
37128a8c1a
chore(justfile): Improve the changelog body
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-01 12:45:25 +00:00
Awiteb
ce0068be53
chore: Bump the version to v0.2.0
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-01 12:32:24 +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
d6d3f8a52f
chore: Add more relays to the repo address
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-01 11:59:49 +00:00
Awiteb
84bfafa2e9
deps: Add serde@1.0.219, dirs@6.0.0 and toml@0.8.22
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-06-01 11:59:12 +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
a9b9a7a02a
chore: Remove unused import
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-27 11:04:58 +00:00
Awiteb
1abb8e3f36
feat: Events and naddrs can starts with nostr:
...
Suggested-by: DanConwayDev <DanConwayDev@protonmail.com >
Fixes: note1jwgfl095vuhduepxxpwhdqme0dnlhawzvcal0xnl0e6d82wx5jys5z92hj
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-27 10:48:33 +00:00
Awiteb
15d834dc0f
chore: Deduplicate tags
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-27 08:45:20 +00:00
Awiteb
ea862dac5f
chore: Add a newline after the naddr
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-27 08:29:36 +00:00
Awiteb
55a4868813
fix(utils-repo_naddr): Create a valid naddr string
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-27 08:29:13 +00:00
Awiteb
60978f43b5
chore: Add a header to nostr-address file
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-27 08:02:37 +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
87da5035da
chore(todo): Some tasks
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-24 14:08:25 +00:00
Awiteb
ddea5028ee
feat: Make the relays list optional
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-24 12:30:40 +00:00
Awiteb
de68d61c3f
feat: Enter repository as nip5
...
For example, `4rs.nl/n34` and `_@4rs.nl/n34`
Signed-off-by: Awiteb <a@4rs.nl>
2025-05-24 11:00:37 +00:00
Awiteb
f7e837e3ab
deps: Enable nip05 feature of nostr crate
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-24 10:57:15 +00:00
Awiteb
02070c2868
feat: A --quote-to flag to quote the replied to content in the editor
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-24 06:06:32 +00:00
Awiteb
998ef8f4b1
deps: Add chrono@0.4.41 to the dependencies
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-24 06:03:17 +00:00
Awiteb
6fdf0dbcf5
feat: Read the nostr-address file in reply command
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-23 13:38:21 +00:00
Awiteb
15c0eaa5dc
chore: Make commands module
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-23 13:15:37 +00:00
Awiteb
226909ef16
feat: Read the nostr-address file in issue new command
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-23 12:38:26 +00:00
Awiteb
8ca88804dd
feat: Read the nostr-address file in repo view command
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-23 12:36:48 +00:00
Awiteb
55f9b9194e
chore: Utils to work with the nostr-address file
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 20:45:01 +00:00
Awiteb
a26116702d
chore: Errors to work with the nostr-address file
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 20:44:41 +00:00
Awiteb
35d376ca6c
chore: Add nostr-address file
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 19:19:27 +00:00
Awiteb
57b48c7368
feat: Add --address-file flag to repo announce command
...
This flag creates a file in the current working directory and writes
the `naddr` into it. This allows n34 and other tools to recognize the
repository address automatically, eliminating the need for manual input
by the user.
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 19:17:07 +00:00
Awiteb
b29937a04e
chore(changelog): Update the body
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 15:15:49 +00:00
Awiteb
06374fe1fc
feat: add --force-id flag to bypass case validation in repo announce
...
The new flag allows users to skip the kebkab case ID check when announcing
repositories.
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 08:27:13 +00:00
Awiteb
2d5c0bf549
chore(git-cliff): Upper first after the trim
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 08:27:13 +00:00
Awiteb
0a5b4656c3
chore(taplo): Exclude target dir
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 08:27:13 +00:00
Awiteb
cad2c7faa3
chore: Update CONTRIBUTING.md
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 08:27:13 +00:00
Awiteb
19cfecb9ea
chore(readme): Add Contributions & Changes section
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-22 06:11:28 +00:00
Awiteb
89d0710ce5
chore(justfile): Add a subject to the tag message
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 23:57:16 +00:00
Awiteb
c1afa9a93d
chore: Bump the version to v0.1.0
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 22:41:37 +00:00
Awiteb
92165de6fd
chore: Improve the changelog
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 22:07:24 +00:00
Awiteb
c5085b3af7
chore: Update the bugs report location
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 22:07:24 +00:00
Awiteb
ecee54c9a3
chore: Update README.md
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 22:07:23 +00:00
Awiteb
55aa48c1fe
chore: Add CONTRIBUTING.md, AUTHORS and DCO files
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
0cc656b780
chore: Update the repository url
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
8bff000b33
chore: Format rustfmt.toml
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
5c201b0cec
chore(justfile): A new recipe to release n34
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
c608f2120b
chore: Add taplo to the packages
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
60ad1fe5bb
chore: Improve issue new command code
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
b3b7ce7a4b
chore(repo-announce): Ensure that the event author is not a duplicate maintainer
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +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
724e2707c6
deps: Bump nostr and nostr_sdk to 0.42.0
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:06 +00:00
Awiteb
9444fc1a8c
feat: New reply command
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:05 +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
56316d36d3
chore: Add events errors
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-21 21:45:05 +00:00
Awiteb
074245733e
chore(nostr): A util to get the content from a string or editor
...
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
bd086538fd
deps: Add futures@0.3.31 to the dependencies
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-08 13:32:44 +00:00
Awiteb
54f1c7e0e6
feat: Add issue new command
...
Command to create a new issue on a repo
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-08 13:03:09 +00:00
Awiteb
f1378a2eb7
chore: More errors for issue subcommand
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-08 13:02:04 +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
c69fbca2a0
chore(justfile): Add some fancy emojis
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-08 12:56:43 +00:00
Awiteb
552136400d
chore: Improve the MSRV check
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-08 12:40:01 +00:00
Awiteb
ac7c1e6216
chore: Add MSRV
...
Signed-off-by: Awiteb <a@4rs.nl >
2025-05-08 12:32:50 +00:00