upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2024-10-28chore: bump rust-nostr to patch near v0.36.0DanConwayDev
bump all rust-nostr packages refactoring code based on breaking changes upgrading to patched version to address signer issue: nostr:nevent1qvzqqqqqqypzq6xcz9jerqgqkldy8lpg7lglcyj4g3nwzy2cs6u70wejdaj7csnjqy88wumn8ghj7mn0wvhxcmmv9uqzpsw5ph8le2n2kh6uchftawt74hddazk9tp7wjmz967y2l0uva5rc7hsstq
2024-09-25chore: bump rust-nostr v0.35DanConwayDev
bump all rust-nostr packages
2024-09-24test: restructure ngit integration testsDanConwayDev
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.
2024-09-24feat(login): login via nip46 QR codeDanConwayDev
or nostrconnect url string which is a much better UX flow for nip46
2024-09-23fix(remote): enable login through remote helperDanConwayDev
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.
2024-09-23fix(remote): add resilience to `prs`DanConwayDev
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.
2024-09-20feat(remote): add send events status reportingDanConwayDev
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
2024-09-19test: fix test name typo@RandyMcMillan
warngins ~> warnings
2024-09-18test: fix gitlib2 version in sampleDanConwayDev
so they match v1.8.2 used in updated git2
2024-09-18test(renote): fix whitespace in push` testsDanConwayDev
fixing what should have been picked up in: 7718a56ab05038e743401ea01628d85edc50ed34
2024-09-18test(renote): fix whitespace in push` testsDanConwayDev
reverting change in 73480c03e194808bec7cbbf8c2d7064743d03369
2024-09-18test: fix `generate_repo_with_state_event`DanConwayDev
which enables some failing `fetch` tests to pass
2024-09-17test(remote): fix test to ignore status updatesDanConwayDev
as changes to status updates has causes many tests to fail
2024-09-17test(remote): fix generate_repo_with_state_eventDanConwayDev
which enables fetch tests to pass
2024-09-12fix(remote): update copyDanConwayDev
to make it more like native git
2024-09-11refactor: fix fmt and clippy issuesDanConwayDev
which potentially were only identified when a dependancy was updated
2024-09-09test(remote): refactor split into multiple filesDanConwayDev
to make it easier to read and navigate
2024-09-09test: refactor into binary subdirsDanConwayDev
in prep for splitting git_remote_nostr tests
2024-09-06fix(remote): `fetch` and `list` status copyDanConwayDev
so that it the filesystem url is shown
2024-08-28chore: bump rust-nostr to v0.34.0DanConwayDev
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
2024-08-27fix(init): make maintainer.yaml copy clearerDanConwayDev
as this has reduced in importance as the user begins by selecting a trusted maintainer
2024-08-20feat: set proposal branch prefix to `pr/`DanConwayDev
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/`
2024-08-18feat(remote): `push` log merge event creationDanConwayDev
so the user knows that a merge commit event will be issued
2024-08-18feat(remote): `push` publish merge eventDanConwayDev
when a merge commit is being pushed that merges a patch in a proposal
2024-08-09feat(remote): `push` new proposalDanConwayDev
issue new proposal when new branch is pushed into `prs/*` namespace, which doesn't match an existing proposal
2024-08-09feat(remote): remove pr id postfix for authorsDanConwayDev
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
2024-08-08fix(send): patch countDanConwayDev
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]
2024-08-08feat(remote): `push` force push proposalDanConwayDev
will issue a proposal revision
2024-08-08test(remote): improve robustness of testDanConwayDev
by allowing the output assert to fail rather than hang
2024-08-08test(remote): `push` to existing proposalDanConwayDev
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
2024-08-07feat(remote): `fetch` applies proposal commitsDanConwayDev
that have been proposal tips returned by `list` can be found
2024-08-06fix(remote): `list` correct proposal refsDanConwayDev
as the `refs/heads/` prefix wasn't present
2024-08-06feat(remote): `fetch` report on progressDanConwayDev
so that user knows what step we are on
2024-08-06feat(remote): `list` includes open proposalsDanConwayDev
and filters out other branches in `prs/*` namespace
2024-08-06test(remote): `list` fix warning copyDanConwayDev
to align with changes in 557a5d98c6ea373db117d6fe19489086b4461aa7
2024-08-05feat(remote): `push` handle out-of-sync serversDanConwayDev
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
2024-08-05test(remote): remove `async_run_test`DanConwayDev
where it is not needed so code is easier to read
2024-08-05test(remote): run `list for-push` before `push`DanConwayDev
because this is how git uses the git remote helper
2024-08-05test(remote): refactor `push` testsDanConwayDev
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
2024-08-02test(remote): warn when out of syncDanConwayDev
update test to refelect warning message
2024-08-02feat(remote): improve warning copyDanConwayDev
so it is more concise and clear
2024-08-01fix(remote): display nostr fetch reportDanConwayDev
use stderr to write lines that get displayed when run as a git-remote-helper
2024-08-01Revert "fix(remote): display nostr fetch report"DanConwayDev
This reverts commit 6b63f150ba9e7c69bf83bcbd24543051c765c9f6.
2024-08-01fix(remote): display nostr fetch reportDanConwayDev
use `stderr` to write lines that get displayed when run as a git-remote-helper
2024-08-01feat(remote): `fetch` fallsback to other serversDanConwayDev
listed in the announcement `clone` tag
2024-08-01feat(remote): `push` to all `clone` serversDanConwayDev
initially we push to the first server, if successful update the state event, then siliently push to the others and silently fail
2024-08-01feat(remote): `fetch` uses state eventDanConwayDev
and falls back to git server is state event cant be found
2024-08-01test(remote): `push` delete branch updates stateDanConwayDev
in nostr state event
2024-07-31fix(remote): updating `push` state eventDanConwayDev
ensure refs are included in state event use `HashMap` to improve `RepoState` struct
2024-07-31feat(remote): `push` issues state eventDanConwayDev
if no previous state events can be found it replicates git server otherwise it just updates pushed value
2024-07-31test(remote): `push` deletes branchDanConwayDev
on the git server and in local remote refs
2024-07-31test(remote): push updates remote refsDanConwayDev
in the local git repository
2024-07-31test(remote): `push`updates ref on git serverDanConwayDev
for multiple branches send in a batch
2024-07-31test(remote): `fetch` downloads commitsDanConwayDev
from git server specified in announcement
2024-07-31test(remote): add second branch to `list`DanConwayDev
and ignore the branch ordering
2024-07-31test(remote): `list` returns HEAD and mainDanConwayDev
returns head and main branch head
2024-07-31test(remote): test helpers and basic fetchDanConwayDev
create test helpers and setup basic test to verifiy fetch was ran
2024-07-25fix(init): add missing identifier to yamlDanConwayDev
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
2024-07-24refactor: use nip34 kinds from rust-nostrDanConwayDev
instead of Kind::Custom(u16) as v33 of rust-nostr introduced them
2024-07-24test: remove old proposal rev amended locallyDanConwayDev
`pull` test. It's failing and only tests for different copy in an obscure scenario
2024-07-24test: abstract `list` and `pull` test codeDanConwayDev
to enable improved debugging
2024-07-24feat(push): `--force` tries non-interactivelyDanConwayDev
if branch is ahead of main or master
2024-07-24test: fix `pull` testsDanConwayDev
it was so much clearer what the problem was after abstracting reused test code
2024-07-24test: refactor `list` and `pull` to abstract codeDanConwayDev
into lib which makes reading and maintaining tests easier
2024-07-24test: refactor `pull` and `push` to abstract codeDanConwayDev
into lib which makes reading and maintaining tests easier
2024-07-23feat(list): unique proposal branch namesDanConwayDev
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
2024-07-22fix: typos and improve copyDanConwayDev
when finding repo announcements add a hint to find naddr on gitworkshop.dev
2024-07-19feat: integrate `fetch` into `list`DanConwayDev
as part of a project to use fetch and the stored cache everywhere
2024-07-19feat: integrate `fetch` into `pull`DanConwayDev
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
2024-07-19feat: integrate `fetch` into `push`DanConwayDev
as part of a project to use `fetch` and the stored cache everywhere
2024-07-19feat: intergrate `fetch` into `send`DanConwayDev
reworking the tests and test suite as appropriate
2024-07-17feat(init): set repo pointer in git configDanConwayDev
set repo.nostr to naddr reflecting the announcement just issued
2024-07-17feat(login): use fetch to get user profileDanConwayDev
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
2024-07-15feat(fetch): fetch events and save to cacheDanConwayDev
enabler to add simplicity, efficency and offline capability to other functions improve repo announcement selection
2024-07-02feat(send): tag each maintainer's repo eventDanConwayDev
instead of just tagging the first maintainer's repo event and each maintainer with a p tag This allows for easier discoverability of the proposal when: * the first maintainer hasn't issued a repo event * the maintainers change over time and the single tagged repo event is no listed as a maintainer in anyone elses repo event
2024-06-28feat(login): login with nostr address via nip46DanConwayDev
currently using patched version of rust-nostr with function to fetch nip46 relays from nip05 providers. this patch has been merged so it will make it into the next rust-nostr release.
2024-06-28test: increase timeout for expensive testDanConwayDev
as it is failing intermitantly since it is being run in parellel
2024-06-28feat(login): login with nip46 remote signerDanConwayDev
and save details in git config
2024-06-26refactor: remove fresh test configDanConwayDev
as config is now stored using git config and cache is conditionally stored in local ./git folder under test conditions
2024-06-24feat(login): store in git config and use cacheDanConwayDev
replace ngit yaml file config with: * nsec / ncryptsec / npub in git config in nostr.* namespace * sql database cache for metadata and relay events allow different logins to be used for different git repositories by storing login in local git config
2024-06-13feat(init): add euc marker to commit referenceDanConwayDev
based on nip34 update. see nip repository commit 8fe6e062254b37f77540088cccff60fa8615751
2024-06-13chore: bump rust-nostr to v0.32.0DanConwayDev
both nostr and nostr-sdk packages and also in test_utils fix the many breaking changes fix: ignore trailing slash when depuplicate relays for send events. this was picked up as TagStandard::RelayMetadata has started adding a traling slash. refactor cli output test function `expect_send_with_progress` so that relays can succeed / fail in a random order
2024-06-11refactor: bump rust-nostr to v0.30 use ncryptsecDanConwayDev
bump nostr and nostr-sdk packages and also in test_utils remove custom ncryptsec implementation and use the newly added implementation nip49 version in rust-nostr note a patched v0.30 is used so that log_n is exposed so that user can be warned it might take a few seconds to decrypt. this has now been merged into the library. note that this will no longer decrypt existing ncryptsec values as it is uses a longer string. this should therefore be bundled with the upcoming change to storing nsec and ncryptsec in git config.
2024-05-23feat: add NIP-31 alt tagsDanConwayDev
to repo announcements, patches and cover letters
2024-05-07feat(send): `in-reply-to` tags npubs and eventsDanConwayDev
in addition to being used to create a new proposal revision, in-reply-to can now be used to reference other events and npubs. for example an issues or kind 1 threads where the proposal is relevant the proposal will only be marked as a revision if the first parameter is a reference to an existing proposal root
2024-04-22feat(send): print link to proposal rootDanConwayDev
after a new root proposal has been sent link directly to gitworkshop.dev as well as njump.me until gitworkshop is added to njump
2024-03-28test: fix intermittent test failuresDanConwayDev
caused by test proposals with the same timestamp listed in an inconsistant list order; by ensuring test proposals have a different timestamps
2024-03-27replace blocking client in tests with asyncDanConwayDev
as it has been removed from nostr_sdk
2024-03-25update tag generationDanConwayDev
to reflect changes in rust-nostr
2024-03-22chore: cargo updateDanConwayDev
update dependancies to latest version stated in cargo.toml
2024-03-08feat(send): select commits from a listDanConwayDev
when since_or_range isn't specified adds resilience as assuming master..HEAD can cause some issues eg when master is not up-to-date with origin/master
2024-03-04test: ensure failed tests timeoutDanConwayDev
resolve a long standing test issue where failures to output the correct message in the cli would result in the test never ending rather than failing the many test cases updated in this change are to ensure failures are caught rather than ignored some of them are just refactored to remove calling an extra function, which is no longer needed note: this doesn't fix the intermittent issue, most commonly experienced under the nix configuration, where tests that should pass occationally never end preventing the rest of the suite from running
2024-03-01feat(send): fix grammar in cli outputDanConwayDev
refer to a single patch as patch rather than patches
2024-03-01feat(send): when on main default to sending 1 patchDanConwayDev
based on feedback from santos: nostr:31c085a584cbd30f71a44a70eaf828c2c8c5f6e3efb7942547edb37cf4a632cf
2024-02-29feat(send): add proposal revision cli msgDanConwayDev
before cover letter prompt primarily this is to make it clearer that a proposal update is being sent when using `ngit push --force` instead of a new proposal
2024-02-28fix: branch-name specified as main or masterDanConwayDev
branch-name should be ommitted or ignored if patches created on main or master instead it should be infered based on commit msg
2024-02-23feat(list): newest proposals firstsDanConwayDev
show proposals in order newest first
2024-02-23feat(init): improve copy orderDanConwayDev
move instruction to commit and push maintainers.yaml to end of file
2024-02-23feat(init): add customisation and defaultsDanConwayDev
- allow more cli input options - allow customisation of more fields in interface - change default identifer from shorthand root commit to short name - defaults to existing repo event (users or other) or maintainers.yaml
2024-02-23fix(push): remove force push bugDanConwayDev
introduced in b931b37e26486e4e6d15f302e87141dcf2f596ba