| Age | Commit message (Collapse) | Author |
|
for git push, a wait longer to allow ngit-relays to create repo
|
|
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.
|
|
we have had some bugs related to git2 so moving to the latest version
|
|
update nix dependancies to latest version using default update options
run `cargo clippy --fix` and `cargo fmt` to fix new clippy errors
|
|
rust-nostr upgrade to v0.40 removed this `p` tag
|
|
and fix all of the breaking changes
|
|
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`
|
|
publish a merge event when the commit author signature and timestamp
match patches within an open proposal
|
|
now that the remote helper uses the commit author timestamp to
determine if commit was applied from a proposal, the timestamps
in the test proposal can no longer be identical.
this makes them deterministically different based on the file name
|
|
allow any order of the commit ids
|
|
should alway list only the three-way merge commit id.
|
|
get the latest user relay list before pushing patches and repo
announcement events
|
|
when a proposal was merged using fast-forward status rather than
by creating a three way merge commit.
if there are multiple revisions, the first one that contains merged
proposal tip will be referenced.
if there are multiple proposals that contain one of the commits,
they will all be marked as merged.
the nip needs to be updated as there is no single `merge-commit-id`
so that tag needs to support multiple values
|
|
update the tests to reflect the changes in the previous 4 commits
|
|
check whether remote `origin` is nostr url and if not attempt
to set it.
|
|
otherwise the test never ends or fails
|
|
as creation by default was removed in 9bee5f12efa5ed751468c68073c9122e12c22b5f
|
|
use RelayUrl in repo_ref which I had resisted as it mutates relay
urls when printed to append a slash
|
|
this was missed during a find and replace
|
|
to simplify the api and encourage use of the git remote helper
|
|
move login, logout export-keys commands to sub commands under account
|
|
to reflect the new interface and testing only nsec login
|
|
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
|
|
there was a bug in `Interactor` so that reports were turned off by
default for choices.
This was embodied into the CLI tests but this turns them on in these
scenarios.
|
|
appended 'via cli arguments' to 'logged in as fred' during login step
|
|
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
|
|
bump all rust-nostr packages
refactoring code based on breaking changes
upgrading to patched version to address signer issue:
nostr:nevent1qvzqqqqqqypzq6xcz9jerqgqkldy8lpg7lglcyj4g3nwzy2cs6u70wejdaj7csnjqy88wumn8ghj7mn0wvhxcmmv9uqzpsw5ph8le2n2kh6uchftawt74hddazk9tp7wjmz967y2l0uva5rc7hsstq
|
|
bump all rust-nostr packages
|
|
so that each file is ran as a seperate crate
this makes it easier to see which tests are causing other tests to
fail as they are in a smaller group.
|
|
or nostrconnect url string which is a much better UX flow for nip46
|
|
originally this was disabled because there was a concern that it
would effect the operation of the remote helper due as it prints
to stdout.
it now only writes to stderr.
|
|
make poorly formatted patches fail silently. we stop trusting that the
`commit` tag in the latest patch can be produced by apply the patches.
to achieve this we must recreate the commit during the list command,
which require fetching the parent oids.
support patches without optional `commit` and `parent-commit` tags.
|
|
to both tell users where events have been sent / failed to be sent
and to provide a status update so the user doesn't think its crashed
|
|
warngins ~> warnings
|
|
so they match v1.8.2 used in updated git2
|
|
fixing what should have been picked up in:
7718a56ab05038e743401ea01628d85edc50ed34
|
|
reverting change in 73480c03e194808bec7cbbf8c2d7064743d03369
|
|
which enables some failing `fetch` tests to pass
|
|
as changes to status updates has causes many tests to fail
|
|
which enables fetch tests to pass
|
|
to make it more like native git
|
|
which potentially were only identified when a dependancy was updated
|
|
to make it easier to read and navigate
|
|
in prep for splitting git_remote_nostr tests
|
|
so that it the filesystem url is shown
|
|
bump all rust-nostr packages
I'm not sure I'm completely happy with allowing mutable_key_type
but it is just run inside tests
it appears that Event didn't have the Copy trait in v0.33.0 so I'm
not sure why this warning suddenly appeared
the timeout of client.get_events_of needed to be doubled which could
indicate that an ineffiency has been introduced in v0.34.0
the primary motivation for upgrading now was to get this fix:
nostr:nevent1qqsffl2ld678pjj77rh9k2g4edljmxdu6ew4lvgnglxv7jhu3ru8vvcpp4mhxue69uhkummn9ekx7mqzyzsq3hh327t0h2dq6matqn5064cgj2zanl2stkj6s0lg4t2h5dty6rm2ucm
as I suspect it is also effecting other repositories
eg nostr-profile-manager
|
|
as this has reduced in importance as the user begins by
selecting a trusted maintainer
|
|
from `prs/`.
whilst plural reflects usage of `heads` and `tags` in git refs,
singular is shorter and more reflective of usage of branch prefixes
such as `feature/` `fix/`
|
|
so the user knows that a merge commit event will be issued
|
|
when a merge commit is being pushed that merges a patch in a proposal
|
|
issue new proposal when new branch is pushed into `prs/*` namespace,
which doesn't match an existing proposal
|
|
remove the (<short id>) post fix for remote proposal branches when
the current user is the author
this enables pushing new proposals without having to change the
upstream branch in a way that remote helpers weren't designed to do
|
|
fix [PATCH n/n] when no cover letter and patches great than 1
fixes error where the first patch would be
[PATCH] followed by [PATCH n/n]
|
|
will issue a proposal revision
|
|
by allowing the output assert to fail rather than hang
|
|
push 2 commits to an existing proposal
there are a lot of asserts in here but if they were split out into
their own tests the suite would take much longer to run as we are
waiting a few seconds in the test to ensure the
timestamps are different
|
|
that have been proposal tips returned by `list` can be found
|
|
as the `refs/heads/` prefix wasn't present
|
|
so that user knows what step we are on
|
|
and filters out other branches in `prs/*` namespace
|
|
to align with changes in 557a5d98c6ea373db117d6fe19489086b4461aa7
|
|
1. don't attempt to push to a remote which is already up-to-date
2. don't attempt to delete branch on remote if it is already deleted
3. only push when out of sync if remote tip is ancestor of pushed
commit
4. force push to remote if user force pushed and remote is in sync
with nostr
|
|
where it is not needed so code is easier to read
|
|
because this is how git uses the git remote helper
|
|
to:
1. test helper response (ok printed) seperately
2. make failing tests end and print failure rather than hanging
3. remove `async_run_test` function when it isn't needed
|
|
update test to refelect warning message
|
|
so it is more concise and clear
|
|
use stderr to write lines that get displayed when run
as a git-remote-helper
|
|
This reverts commit 6b63f150ba9e7c69bf83bcbd24543051c765c9f6.
|
|
use `stderr` to write lines that get displayed when run
as a git-remote-helper
|
|
listed in the announcement `clone` tag
|
|
initially we push to the first server, if successful update the
state event, then siliently push to the others and silently fail
|
|
and falls back to git server is state event cant be found
|
|
in nostr state event
|
|
ensure refs are included in state event
use `HashMap` to improve `RepoState` struct
|
|
if no previous state events can be found it replicates git server
otherwise it just updates pushed value
|
|
on the git server and in local remote refs
|
|
in the local git repository
|
|
for multiple branches send in a batch
|
|
from git server specified in announcement
|
|
and ignore the branch ordering
|
|
returns head and main branch head
|
|
create test helpers and setup basic test to verifiy
fetch was ran
|
|
add missing or updated identifier to maintainers.yaml
as we were not checking whether it has changed or added
also update if relays do not match
|
|
instead of Kind::Custom(u16) as v33 of rust-nostr introduced them
|
|
`pull` test.
It's failing and only tests for different copy in an obscure scenario
|
|
to enable improved debugging
|
|
if branch is ahead of main or master
|
|
it was so much clearer what the problem was after
abstracting reused test code
|
|
into lib which makes reading and maintaining tests easier
|
|
into lib which makes reading and maintaining tests easier
|
|
to prevent accidental name conflicts. also moved to prs/* namespace
`pull` and `push` integration tests are intermitantly failing to end
at least for `push` they work when run individually but not
when run together
|
|
when finding repo announcements
add a hint to find naddr on gitworkshop.dev
|
|
as part of a project to use fetch and the stored cache everywhere
|
|
the last set of pull integration test fails:
when_latest_event_rebases_branch
we are planning on replacing pull so I'm not sure
whether it is worth fixing
|
|
as part of a project to use `fetch` and the stored cache everywhere
|
|
reworking the tests and test suite as appropriate
|
|
set repo.nostr to naddr reflecting the announcement just issued
|