| Age | Commit message (Collapse) | Author |
|
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
|
|
`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
|
|
of proposals
this is the same fix applied to `list` tests in
bc1e9e7ff8d2c3747a7dbc3b649930ac5bc6425d but
applied to `push` and `pull`
|
|
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
|
|
bump all rust-nostr packages
move from using patched nip46 nip05 function to profile function in v33
fix send_events_to error message
|
|
to avoid tests intermitantly failing when there is no problem
|
|
when looking for proposal roots 'pull' was not filtering out
proposal revisions
issue identified in failing test, which it now passes
|
|
as part of a project to use fetch and the stored cache everywhere
|
|
as soon as they are successfully sent to at least one relay
|
|
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
|
|
to proposal which is displayed at the end of the functon
|
|
reworking the tests and test suite as appropriate
|
|
when fetching a user profile from user relays it throw an error
when an existing version of the profile wasn't found
|
|
prevent an infinite loop when a new maintainer is identified
that hasn't issued a repo event yet
make it clear when repo_coordinates must not have relays
|
|
as any profile event was being recorded as a update
|
|
rather than ending the loop without fetching them
|
|
prevent infinite loop when new coordinates are found
|
|
into cache directory rather than config directories
also removed CodeCollaboration from path as this isn't helpful
whilst this is a breaking change, the cache was only introduced
during development of this version so it is not
highlighted as such
|
|
rather than as new profiles
|
|
add a message for the temporary situation where a maintainers.yaml
exists without an identifier listed
|
|
add the ability to fetch more than just the current user from
their user write relays
|
|
which will enable the following`list` test to pass once `fetch`
is intergrated into `list`:
finds_based_on_naddr_on_embeded_relay
|
|
only the profile from the saved user was being fetched.
tests are using cli login parameters and expecting to see the
user's name but it was only showing the npub.
fixed by allowing the explicit request of specfic user profiles.
|
|
set repo.nostr to naddr reflecting the announcement just issued
|
|
fetch automatically gets updates to logged in user profile / relays
fetching without specifying repo pointers will just fetch user
profiles so that can be used during login, if user profile isn't
in cache
login now uses fetch
|
|
just from repository / fallback relays and only if we don't already
have a version in cache
this is because we are only using it for the user's name
|
|
as 'fetching... updates:' feels more like further updates are
being fetched than 'fetching... found'
|
|
so it only counts commits and statues to existing proposals
|
|
to increase the likelihood that all events are found
|
|
im preparation for identifying new inbox relays
|
|
enabler to add simplicity, efficency and offline
capability to other functions
improve repo announcement selection
|
|
show open proposal by defult and include options to filter
by other statuses
there are not tests for this currently as the intention is
to transform 'list' further by adding a 'fetch'
|