Commit Graph
100 Commits
Author SHA1 Message Date
Awiteb df54a53b7c deps: add io-std feature to tokio
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-24 15:47:03 +00:00
Awiteb 95a46a798f feat(logs): log to stderr and a file
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-24 10:50:10 +00:00
Awiteb 03b3d89f48 chore(tasks): add some check to release task
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-22 07:04:43 +00:00
Awiteb 9122557281 chore: replace justfile with nu script
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-18 12:10:33 +00:00
Awiteb dfa7467b1e chore: do not check the MSRV
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-18 09:05:38 +00:00
Awiteb 8d8ad5f1e5 feat: add --personal-fork flag to repo announce command
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-16 20:11:59 +00:00
Awiteb f73245f9c3 chore: improve querying
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-13 09:18:55 +00:00
Awiteb c3be6248b5 chore: move patch::PatchPrStatus to types::PatchPrStatus
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-12 10:13:01 +00:00
Awiteb 4df73316a0 chore(config): skip serializing nip07 if Option::is_none
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-12 10:13:01 +00:00
Awiteb be3cdc440d chore: fix docs issues
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-12 10:13:01 +00:00
Awiteb 4bcf104c80 docs: update commands titles and descriptions
Signed-off-by: Awiteb <a@4rs.nl>
2025-09-12 10:12:58 +00:00
Awiteb 4360aa192c feat: support pull requests
Support for pull requests, it's not standard in NIPs yet[1] but there must be
two clients that support it to be included in NIPs, n34 is one of them.

This support:
- Create a new PR `n34 pr new`
- Update PR tip `n34 pr update`
- View a PR `n34 pr view`
- List PRs `n34 pr list`
- Add `PR` and `PR-update` kinds as roots in `NostrClient::find_root`
- Support issuing statuses for PRs
- Support GRASP PR and PR-update
- Update the docs

[1] https://github.com/nostr-protocol/nips/pull/1966
2025-09-12 06:43:23 +00:00
Awiteb cc3aed0e89 chore: Rename PatchStatus to PatchPrStatus
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-27 22:57:17 +00:00
Awiteb f996fd351b chore: Move repo::view::format_list to utils::format_iter
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-25 14:51:58 +00:00
Awiteb 518e573467 chore: Move issue-view run block to common_commands::view_pr_issue
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-25 14:51:58 +00:00
Awiteb 1e9e00a4f3 chore: Rename GitIssueUtils trait to GitIssuePrMetadata
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-25 12:12:11 +00:00
Awiteb c308dc1b42 docs: Update commands help messages
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-24 10:06:55 +00:00
Awiteb 089b62a0ef fix(n34-patch-apply): required the applied_commits
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-21 15:01:38 +00:00
Awiteb 5e76e413ab chore: fix the Breaking Change group
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-18 13:35:47 +00:00
Awiteb ed1bfaf161 fix(issue)!: make subject mandatory and optional content
BREAKING CHANGE: When the editor contains only one line, it is now
treated as the subject instead of being used as the issue content.

Signed-off-by: Awiteb <a@4rs.nl>
2025-08-18 13:35:18 +00:00
Awiteb ec68e972f7 fix: check the nip07 signer in CliOptions::ensure_signer
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-18 12:24:59 +00:00
Awiteb 629de42215 chore: Add [script] to deploy recipe
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-13 17:02:22 +00:00
Awiteb dd05e050cd feat: New command repo state
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-13 16:33:15 +00:00
Awiteb 9aa3b62de0 chore: Bump the version to v0.4.0
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-08 15:21:35 +00:00
Awiteb a8015d618b chore: Use nushell as a script interpreter
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-08 15:20:20 +00:00
Awiteb 2bcdb29a88 chore: Add nushell to dev shell
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-08 14:29:22 +00:00
Awiteb 4a4c0dcd34 chore: Show the lifetime
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-08 14:29:22 +00:00
Awiteb 43ca689190 chore: installation using Nix
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:26:11 +00:00
Awiteb 14ab9b38e2 chore(cargo): Add package.documentation and package.homepage
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:22:40 +00:00
Awiteb 802da70056 chore(flake): Add packages.default output
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:22:40 +00:00
Awiteb cff0b2f3b2 chore(flake): Update lock file
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:22:40 +00:00
Awiteb 9c55bf8af1 chore: use the existing signer to get the pubkey instead of a new one
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:22:40 +00:00
Awiteb 904d14064f feat: Sign using NIP-07
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-07 23:22:40 +00:00
Awiteb ad215002e2 chore: backward compatibility with ngit revision patch hashtag
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-04 09:22:45 +00:00
Awiteb 67339a8a47 chore: verify subscriptions
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-04 06:28:32 +00:00
Awiteb 1d83e445a4 deps: Upgrade to nostr@0.43.0
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-03 15:24:05 +00:00
Awiteb 8bb4cf0da4 refactor: Move root and root-revision to constants
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-03 15:24:05 +00:00
Awiteb e17e75e53b refactor: Move the trait extensions to traits.rs
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-03 15:24:04 +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 bc8c6f3154 deps: Remove url from n34 dependencies
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-03 00:17:30 +00:00
Awiteb 0ba58dcbd0 tests: Move the patch tests to tests.rs
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-02 09:50:21 +00:00
Awiteb 78113c7402 docs: Fix status command docs
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-02 09:14:21 +00:00
Awiteb bd3ba1bdbf docs: n34 book
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-01 20:32:48 +00:00
Awiteb 2630104e99 chore: Fix a typo in the description
Signed-off-by: Awiteb <a@4rs.nl>
2025-08-01 20:17:42 +00:00
Awiteb 03d5c8020e feat: Keyring the secret key n34 config keyring --enable
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-27 00:55:53 +00:00
Awiteb c3aef2e0ad chore: Add installation section to README.md
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-18 22:24:03 +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 f0c20c3677 deps: Add keyring, nostr-connect, nostr-keyring and url to the dependencies
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-18 21:17:02 +00:00
Awiteb e6943aefab chore(flake): Add dbus to the packages
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-10 12:05:14 +00:00
Awiteb 353358f0ed chore: Move the naddr parsers to parsers.rs
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-07 12:35:01 +00:00
Awiteb c029ddf86c chore: Bump the version to v0.3.0
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 12:20:19 +00:00
Awiteb fc7d7baeb6 chore: Bump the MSRV to 1.88.0
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 12:16:37 +00:00
Awiteb 8715cd5547 chore: Use cargo-msrv to check the msrv instead of rustup
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 12:15:53 +00:00
Awiteb 70e76f1699 chore: Update patch filename test case
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 12:03:31 +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
Awiteb 3fb7abe62a chore: Fix docs issues
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 08:48:34 +00:00
Awiteb 3814d1b4ec chore: Inlined format args
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 08:45:13 +00:00
Awiteb 1c11b8f6bb chore: Add rust-analyzer to flake.nix
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 08:41:28 +00:00
Awiteb 74d05033f8 chore: Update flake.lock
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 08:33:13 +00:00
Awiteb 9bbeda8de8 chore: Update rustfmt nightly version
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-05 08:32:59 +00:00
Awiteb 3510b59fbb feat: Improve exit codes and make them more specific
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-04 10:50:24 +00:00
Awiteb 05b4ae30f7 feat: New issue list commands to list the repo issues
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-02 22:07:03 +00:00
Awiteb 387dd32a37 feat: New patch list commands to list the repo patches
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-02 22:07:03 +00:00
Awiteb 5c5987e07b chore: Enable optimization
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-01 15:20:44 +00:00
Awiteb 9e1e5d7c42 chore: Inline small functions
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-01 15:20:30 +00:00
Awiteb 7e479f3c7a chore: issues utils
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-01 15:07:04 +00:00
Awiteb 4cc01668fd fix: Require a repo in repo view command
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-01 12:47:03 +00:00
Awiteb 7d700602ef fix: Fix a typo in EmptySetRelays error message
Signed-off-by: Awiteb <a@4rs.nl>
2025-07-01 12:45:53 +00:00
Awiteb f3a09d30ea chore: Update SignerRequired error message
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-30 11:33:23 +00:00
Awiteb 2874ba8457 remove: Remove --euc flag from patch send command and use the repo euc
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-30 11:17:05 +00:00
Awiteb 55e5d86c03 deps: Remove bitcoin_hashes and use nostr::hashes re-export
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-30 11:16:52 +00:00
Awiteb 6467bc3bb5 remove: Remove the --to flag from reply command and make it an argument
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-29 20:24:57 +00:00
Awiteb da284a084c feat: View the repo maintainers as npub
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-29 20:20:58 +00:00
Awiteb 45ea7d25f2 remove: Remove the --repo option and make the repo an argument
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-29 20:17:14 +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 d6dd63f576 chore: Use bitcoin_hashes::Sha1 instead of bitcoin_hashes::sha1::Hash
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-28 12:51:43 +00:00
Awiteb ae6cff1a1d chore(patch-fetch): Remove the repo coordinate from the filter
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-28 12:49:08 +00:00
Awiteb a38a811cbf deps: Update nostr to 0.42.2
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-28 12:47:40 +00:00
Awiteb 93136fb767 deps: Add either@1.15.0 to the dependencies
Signed-off-by: Awiteb <a@4rs.nl>
2025-06-28 12:46:49 +00:00
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