| Age | Commit message (Collapse) | Author |
|
make the default set of ngit-relays configurable
|
|
if you haven't cloned an existing nostr repo
|
|
allow exporting npub as well as nsec
|
|
as it usually full of inappropriate relays like purplepages.
|
|
instead of replacing ngit-relays with additoinal relays , suppliment
|
|
for git push, a wait longer to allow ngit-relays to create repo
|
|
otherwise it tries all the protocols and reprots on each
|
|
make sure blossom server is also present
|
|
when creating announcment with `ngit init`
|
|
should have done it at 4dc5d0c9fb170981cf4fade5558d7cc8da404aa3
|
|
add a blossom tag to the repo announcement
|
|
introduce ngit-relays as a way of setting git servers and relays at
the same time using a standard for specific repo locations:
https://<domain-port-path>/<npub>/<identifer>.git
add simple and advanced modes.
prompt less. eg always set remote origin to nostr url.
automatically push main or master branch.
|
|
the details are included as default options
|
|
reduce the scenarios where we confuse users about state
|
|
via git config so they can be overwritten locally and globally
|
|
update nix dependancies to latest version using default update options
run `cargo clippy --fix` and `cargo fmt` to fix new clippy errors
|
|
with new format. but both default option and when previous web
string used legacy format
|
|
and fix all of the breaking changes
|
|
improve clarity by renaming variables and methods
defend against `branch-name` tag with an unsafe name
|
|
simplify to allow the removal of warning:
`#[allow(clippy::too_many_arguments)]`
|
|
If the user has NIP-05 set up in profile, and it resolves at the time
of running `ngit init`, NIP-05 will be used in the nostr remote url.
|
|
update the rust nightly `fmt` overlay which needs to be pinned
to a specific version (this case by date)
update formatting in main files via `cargo fmt`
|
|
update nix dependancies to latest version using default update options
fix warning related to idomatic patterns
|
|
prevent a panic when tags are of an unexpect length
|
|
enable nostr git url format
alongside and
format
Merge branch 'pr/nip05-lez(ff1845c0)'
|
|
prioritise using nip05 nostr url format when the nip05, public key
mapping is stored in the (usually local) git config.
|
|
replace `NostrUrlDecoded::from_str` with
`NostrUrlDecoded::parse_and_resolve`
store nip05 pubkey mapping in git cache
|
|
get the latest user relay list before pushing patches and repo
announcement events
|
|
when nostr address is unknown and user is prompted, validate that
a the entered repo exists (there are events related to it) before
proceeding
|
|
git-remote-nostr is always called with a nostr remote that specifies
a single repository coordinate whereas `ngit` commands need to
discover this.
this change moves from getting this value from the following places
in priority order:
1. git config item `nostr.repo`
2. first nostr remote discovered
2. maintainers.yaml
3. prompt the user
to:
1. nostr remote - if multiple, prompt the user to select
2. git config item `nostr.repo`
3. maintainers.yaml - removing the legacy format
4. prompt the user - now with support for nostr remote format
|
|
previously fetch supported fetching multiple trusted coordinates at
once. The additional complexity trade off isn't worth it.
It will still fetch events related to the coordinates of maintainers
that the trusted maintainer lists.
A scenario where there might be multiple trusted coordinates is
where a large repo is split into multiple nostr repos to manage
pull requests and issues in seperate sub-units. I might therefore
have different remotes that target different identifiers.
There also might be different set of maintainers groups that are
have different views on the latest state of the same codebase and
they haven't split off into using different identifiers.
Its simplier ngit to fetch these different nostr repos independantly
when requested. git-remote-nostr will do this automatically as it
works through remotes but for ngit cmds a further change is required
so `get_repo_coordinates` and `try_and_get_repo_coordinates` prompts
to select the desired one.
|
|
add a "maintainers.yaml" title to prevent a wall of unbroken text
|
|
check whether remote `origin` is nostr url and if not attempt
to set it.
|
|
if nostr added as origin remote before repo announcement sent
|
|
because feedback is that its too confusing. mot removing it for
existing projects that use it
|
|
as default instead of user write or none
|
|
because feedback was recieved that it doesnt appear like a menu
|
|
so relays come straight after git server because they both require choices
with some sort of mental burden
|
|
use RelayUrl in repo_ref which I had resisted as it mutates relay
urls when printed to append a slash
|
|
instead of all the time. this also fixes the tests.
|
|
but instead use the value in user_ref
|
|
and move it below maintainers input
|
|
to make the onboarding experience smoother
|
|
to simplify the api and encourage use of the git remote helper
|
|
rather than using `ngit login` which is less intuative
|
|
as part of the easy on-boaridng flow
|
|
to reflect the new interface and testing only nsec login
|
|
when already logged, the option to login locally with different keys
try to login globally
|
|
in nearly all cases 'cannot' was used when an action was tried and
failed. 'failed to' is strictly better because:
* just because the action didn't work that time doesnt mean it
cannot work
* it is better at drawing the users attention to a problem
|
|
adding a prompt makes it easier for the eye to pick up the issue.
|
|
to guide the users how to login dispite the git config errors
|
|
instead of needing to include the local flag
|
|
if a local and or global account is already logged in, prompt to
logout before overwriting with new login details
|
|
previously cli args were only used during other commands to bypass
normal login
|
|
it previously only worked from within or near a git repo directory
|
|
* simplify login menu, making it more accessable to newcomers and
easier to select remote signer options
* enable `ngit login` to work from anywhere (not just a git repo)
* assume fresh login details saved to global git config but fallback
to local repository
* maintain local repository login via `ngit login --local`
* maintain login via CLI arguments eg `ngit send --nsec nsec123`
* nudge users to remember nsec when pasting in ncryptsec for a
better UX, whilst maintaining the option to be prompted for
password everytime
* create placeholder menu items for help menu and create account
|
|
bump all rust-nostr packages to latest issued version.
there have been some breaking changes to nip46 and this applies
these changes.
|
|
This reverts commit 43b5e9b38bf5dcfbac85637a2d3efc69ddfe77ac.
|
|
simplify api to encougage use of the git plugin
|
|
when multiple maintainers enable opting out of storing state on nostr
this prevents other maintainers from pushing a state to the
git server which nostr servers wouldnt see because they are using the
nostr state.
|
|
by first asking if the user is the only maintainer and if so not
showing the npub selection option
|
|
based on user testing and feedback
|
|
when the user has set a remote to a nostr url but hasn't initiated
the repository on nostr - dont error but instead use the identifier
in the remote
|
|
bump all rust-nostr packages
|
|
so it is done consistantly across ngit and the remote helper
|
|
so that it only finds branch name not prefixed with `pr/` if
you are the author of the pr as there may be duplicate named prs.
|
|
as since `cl.get_branch_name` has been introduced branch names
could be prefixed with a pr and sometimes postfixed with an event id
|
|
move some functions out of ngit and into lib/mod
and lib/git_events
remove MockConnect from binaries so it is only used in the library.
this was done:
* mainly because automocks were not being imported from
lib into each binary
* but also because the these functions were being
tested with MockConnect
|
|
the make the code more readable
this commit just moves the files, the next commit should fix the imports
|