| Age | Commit message (Collapse) | Author |
|
changelog:
* fix only maintainers can push normal branches / tags
|
|
and update / issue a state event.
normal users can only push branches prefiex with pr/
and these go on nostr, not the git server.
|
|
changelog:
* fix pushing tags in git-remote-nostr
|
|
use ^{} postfix for the commit id and without postfix for the tag id
|
|
as publishing to crates.io now gives error:
`
The following category slugs are not currently supported on crates.io: git
`
|
|
changelog:
* add git-remote-nostr binary
|
|
and include a primer on how it works
|
|
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/`
|
|
unless nostr.repo git config is set look for coodinates in git
remotes that use the nostr format
|
|
as the function is getting to long and we are about to add more to it
|
|
so it can be used by repo_ref which doesnt import git_remote_helper
|
|
if binaries in git-exec-path are copied to
tmp-git-exec-path if the dir doesnt exist
some enties fail to copy which was causing the first test to hang
|
|
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
|
|
will updates the proposal rather than trying to issue a new one
|
|
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]
|
|
to avoid tests intermitantly failing when there is no problem
|
|
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
|
|
in the event of a proposal revisions
|
|
so that ancestors come first
|
|
not when only a proposal branch was being pushed
|
|
add a test helper function to enable the git remote helper to be run
as intended (via git) rather than calling it directly
|
|
this caused `git clone` to fail and obviously changed HEAD
broken by 406f6d70f6a71cbd8796268f6c36711e893ab9d5
|
|
so that only the author and repo maintainers can push to a proposal
|
|
push commits as patches to a proposal or propoal revision
|
|
so that we can inspect the state of a test repo
|
|
dont send refspec to a git server which was rejected due to
a conflict highlighted on a different git server
|
|
that have been proposal tips returned by `list` can be found
|
|
rather than head / working directory so that we can create commits
in the background
|
|
as the `refs/heads/` prefix wasn't present
|
|
as the namespace is reserved for nostr patches
|
|
so that user knows what step we are on
|
|
and filters out other branches in `prs/*` namespace
|
|
to align with changes in 557a5d98c6ea373db117d6fe19489086b4461aa7
|
|
but behind local.
correctly report on situation and allow push
|
|
instead of the full url so messages are easier to read
|
|
so it is clearer and easier to read
|
|
so it is clearer and easier to read
|
|
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
|
|
In preparation for its reuse within `push`
|
|
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 we have a status update and know which server is slow
|
|
so it is more concise and clear
|
|
with git servers.
this will also form the basis of preventing failed pushes
|
|
to get latest fixes applied
|
|
as it was hardcoded to test value
|
|
This reverts commit 3d2e031294b467be725a4ac5f5e65e029d25699a.
|
|
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
|
|
as `stderr` is being used when it shouldn't be
|
|
This reverts commit 4a38d5f4179114fce60f84c4694284a49f648c64.
|
|
unless there were errors and detailed report doesnt clear
|
|
as rust-nostr doesn't add trailing slash to relays
|
|
instead of manually set. aligns with ngit version.
|
|
support with optional relays as query parameter
|
|
in prep for supporting new format
|
|
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
|
|
so that if the git server is ahead of the state announcement,
only the commits in the state annoucement will be downloaded
|
|
and falls back to git server is state event cant be found
|
|
in nostr state event
|
|
previously `recreate_as_bare` was using clone and therefore just
copying main branch
|
|
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
|
|
as gitlib2 cannot push to a non bare git repo in a directory
|
|
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
|
|
to more easily access state details
|
|
and move code identifying git server url into `list`, `fetch` and `push`.
|
|
in preparation for managing state via nostr
|
|
if multiple maintainers produce state events with the same
timestamp, the event with the largest event_id will be used
|
|
only update remote ref when push was successful
|
|
so main doesn't grow too large
|
|
pass outcome back to git to enable reporting
|
|
requests so that the git_server is called once
rather than many time in serial
|
|
by using GitAuthenticatior credential callback directly
rather than its `push` method
|
|
push was not updating remote refs after the anon remote was being pushed
|
|
in the future we could implement our own credentials callback function
to remove the dependancy
|
|
as a simple proxy to the first git server listed in announcement
parse clone url as `nostr://naddr123...`
|
|
changelog:
- fix(init): update maintainers.yaml if identifier or relays have changed
|
|
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
|
|
removed in fc3f22eac2bb81823f170f61ba9d39baff76b933 as rust-nostr
made it private
attempts were made to reintroduce it in
https://github.com/DanConwayDev/ngit-cli/pull/5
finally we can close #5, the last github PR
|
|
as it was proving slow. It will sometime timeout
it will consistantly take 3-4s longer than other relays
|
|
so that users can more easily find the repo announcement
|
|
changelog:
* NIP-46 remote signing (from Amber, etc)
* `list` breaks down proposals by status
* local cache in `.git` to enable viewing proposals offline
and reuse by other git clients
* introduced `fetch` to download recent proposals
* improved repo selection and handling of multiple maintainers
* unqiue branch names for proposals to prevent name conflicts
* login to different npubs for different repositories
* store login details in git config so they can be reused
by other git clients ran locally
* add NIP-31 alt tags to events
* add euc marker per NIP-34 tweak
* fix: ensure repo events of all maintainers are tagged in proposals
* fix: stop filtering out very large patches
|
|
from readme to bring it up-to-date
|
|
instead of Kind::Custom(u16) as v33 of rust-nostr introduced them
|