| Age | Commit message (Collapse) | Author |
|
allow specifying ref for pushing PR to custom clone url
|
|
if the repo doesnt list any grasp servers, or pushing to them fails
|
|
send as a PR if the commit would make patches that are too big for
nostr events.
send as a PR update if the proposal is PR.
send as a PR, revising a patch root, if patches would be too big.
in tests `get_pretend_proposal_root_event` has to be a actual proposal
with a tip, rather than just a cover letter, so we have replaced it.
|
|
for future use in `ngit send`
|
|
so that we can use it in `ngit send`
|
|
where just the nevent will do
|
|
as the function is too long
|
|
so we can use it in ngit as well as remote helper
|
|
|
|
required for rust-nostr v0.43 update
|
|
as its now 'bring your own transport'
|
|
with trival breaking changes. nip05 changes will
be done seperately.
|
|
update patches ahead of wider upgrade
|
|
I have now replicated the issue discussed in the last commit by
overwriting my global git config item tag.gpgSign and setting
it back to false, which is default the default.
ngit was only supporting annotated tags and fiatjaf was pushing
a lightweight tag.
I'm confident that this will resolve the issue
|
|
fiatjaf reported panic:
```
<commit-id> can not be successfully peeled into a tag (git_object_t=4).
```
when making a tag and running `git push --tags`
I could not replicate but line it was coming from should use 'from'
rather than 'to'.
|
|
|
|
with nostr state. optionally use 'force' flag
|
|
to enable forthcoming ngit sync cmd
|
|
to enable forthcoming `ngit sync` cmd
|
|
|
|
and show a more helpful message when proposal can be checked out
using the remote
|
|
adjust the help text to reflect availablity of PR event for when a
patch is selected that doesnt list a parent commit id
|
|
using the recently abstracted `get_status` function
|
|
as these events use `c` instead of `commit`
|
|
for use by `ngit list`
|
|
as a temporary measure
|
|
and include e tag, etc per nip
|
|
when an upgrade to a pr is needed, dont also try and send patches
|
|
erorr if the pushed ref would produce a proposal with no patches, or
if the ref is in origin/<main-or-master>
|
|
Rename `params.fallback_relays` and `client.fallback_relays` to
`relay_default_set`. Rename `params.fallback_grasp_servers` to
`grasp_default_set`. This includes updating associated getters and
usages across the codebase.
|
|
so that they can be used as part of push and send
|
|
when a patch is upgraded to a pr, eg because new commits would be
too large to be additional patches, the patch receives a closed
staus and the new pr 'e' tags the original root patch.
we therefore need to inherit the new pr's status instead of using
the closed status.
the closed status was used so that clients don't have to support
pr revisions of patches, and still have a good UX.
|
|
instead of status events from any pubkey
|
|
issue a pull request update if pushing or force pushing
a pull request
issue a pull request with an e tag for original patch and close status
for the original patch when pushing or force pushing against a patch
when the new commits are too big to be iussed as patches
|
|
to reflect there new role of also pushing prs to git severs
|
|
but only for new proposals
|
|
a grasp server doesnt need to appear in repo announcement event
`blossoms` tag as blossom has been removed from the grasp spec
|
|
we try and get them from clone urls of repo and fallback to
those specified by contributor
|
|
remote will list the refs under `pr/*` namespace.
`ngit list` will display in the list of open / draft proposals.
it won't yet fetch the related oids to enable fetching or checking
out the branch.
|
|
as the first stage of adding support
|
|
in anticipation of moving to the nip22 style
|
|
- apply nip46 breaking changes as remote signers remove nip04 support
- apply relay connection timeout once, instead of per request batch
- add git server timeouts
- bump all dependancies
|
|
|
|
to latest available and apply fmt fixes
|
|
required running:
`cargo fix --allow-dirty --allow-staged`
`cargo clippy --fix --allow-dirty -- -D warnings`
to fix problems
and then manually fixing some too
|
|
upgrade packages with potentially incomaptible updates
breaking changes don't impact ngit
|
|
no breaking changes this time!
|
|
as the breaking changes don't impact ngit
|
|
command available after `cargo install cargo-edit` and it bumps
packages with no-breaking changes in Cargo.toml
|
|
in prep for upgrade rust-nostr
|
|
Prevent repeated attempts to connect to relays that have previously
failed due to connection timeouts within the current session,
improving overall performance and reliability.
Added a `relays_not_to_retry` map to the `Client` struct to store
relays to skip and their reasons. Implemented methods
`skip_relay_for_session` and `is_relay_skipped_for_session` to
manage this map.
Relays are added to the skip list upon connection timeouts. Subsequent
attempts to use these skipped relays during the same session will
immediately fail with the recorded reason, avoiding unnecessary network
calls. Progress bars are updated to reflect skipped relays and their
reasons.
|
|
to improve reliability
|
|
the doc shouldn't have been commited to the project in the
first place.
|
|
changelog:
- rename ngit-relay to grasp
- fix: always include HEAD in state event
|
|
in function, params and variable names
|
|
includes a change to a git config itme name
|
|
try and add the HEAD when the state event is built, rather than just
when its parsed.
|
|
in preparation for enforcing the inclusion of HEAD
|
|
changelog:
- fix clone when HEAD isn't in nostr state even
|
|
to fix nostr: note17kwthy92v8tkpgw2kfkhv5x5j9tdves0mznu80qcflly7vunteaqxwag94
|
|
changelog:
- fix add support for `git://` clone urls
|
|
based on jb55 trying to use this with damus
nostr:event1qvzqqqqqqypzqvhpsfmr23gwhv795lgjc8uw0v44z3pe4sg2vlh08k0an3wx3cj9qy88wumn8ghj7mn0wvhxcmmv9uq3jamnwvaz7tmjv4kxz7fwwdhx7un59eek7cmfv9kz7qpqec3c59c4yu4yrsa9fedu27rnygnemj2cfmumf6fw7385wfthg57slj72ux
|
|
work was done to produce more reslient binaries builds to work across
different distros and version b98d2819288f86dd5b316c726cda0f84a1f63eb5
this commit fixes the job runner so they actual get built
|
|
changelog:
- add quality-of-life features for ngit-relay users
- detect ngit-relays and only attempt using unauthenticeted http
protocols
- better sync and less errors as nostr is the only way to push
- overhaul `ngit init`
- add simple / advanced mode
- add support for ngit-relays
- specifiy blossom servers
- sensible defaults
- misc
- add resiliency - push to all maintainer's relays and git servers
- require additional maintainers to publish announcements before
pushing
- allow users to specific fallback relays see `ngit --customize`
- add show npub
- fixes:
- use newest state event found, rather than oldest
- more resilient builds for platforms and distros
- ignore dereferenced tags in state
|
|
as they are just noise
|
|
to comply with changes in 5f45edbebe310decb06f955d95665a6ad387c6cb
|
|
that of the current users pubkey. ngit will push to the git servers of
other maintainers anyway.
|
|
To ensure additional maintainers publish an annoucement event,
require it for them to push
|
|
as we have just pushed to 3 ngit relays
|
|
this was identified when testing with multiple maintainers
|
|
and cross compile where possible
|
|
make the default set of ngit-relays configurable
|
|
if you haven't cloned an existing nostr repo
|
|
we need to be careful with git servers with their own permissions so
a ngit user doesn't inadvertantly push changes on top of a another
user who pushed directly to the git server without using the
force flag.
We dont have this problem with ngit-relay so we can always force
push, even if the user didnt as nostr is the authority of state.
|
|
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
|
|
so we dont try and fetch from both
|
|
otherwise it tries all the protocols and reprots on each
|
|
applying this change to blossom: 25e58e52624210f5852a9183495821526add5928
|
|
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
|
|
rewrite of 25e58e52624210f5852a9183495821526add5928 which took
relays & git servers from all maintainer
some test failed due to incorrect ordering. its better to start with
the ones the trusted maintainer selected.
|
|
of how to customise ngit via git config items
|
|
via git config so they can be overwritten locally and globally
|
|
in prep for optionally getting some of this config from git config overrides
|
|
but other details from trusted maintainer.
This maximises the likelihood that all git servers and relays
have the correct state.
|
|
changelog:
fix: fallback to http protocol if ssh is unavailable
|
|
remove the code that guessed whether it was an authentication failure
and gave up is it wasn't. this prevents it from trying http for push
when ssh is not supported eg. ngit-relay
|
|
as the github runner for this version has been removed
|
|
applied fix included in v1.6.1
|
|
changelog:
- add event description for remote signing process
- fix custom ports use for git servers
- bump all dependancies to latest major versions
|
|
to point to new url structure
|
|
and fix breaking changes
|