upleb.uk

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

summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2024-03-28refactor: allow pedantic clippy warning large_futuresDanConwayDev
rust-nostr author suggested this might be a false positive https://github.com/rust-nostr/nostr/pull/375#issuecomment-2022245832
2024-03-27fix: relay connection timeout panicDanConwayDev
upgrade from rust-nostr v0.27 ~> v0.28 introduces this panic presumably get_events attempted to write to the MultiProgress just after it has been removed
2024-03-27refactor: more concise error messageDanConwayDev
to suppress the clippy too_many_lines in function warning
2024-03-25update tag generationDanConwayDev
to reflect changes in rust-nostr
2024-03-22replace XOnlyPublicKey with wrapper PublicKeyDanConwayDev
to reflect new name in rust-nostr
2024-03-22rename from_sk_str -> from_strDanConwayDev
to reflect new name in rust-nostr
2024-03-22use Sha1Hashin new locationDanConwayDev
it had moved from 'prelude' to 'hashes'
2024-03-22ClientSigner renamed ~> NostrSignerDanConwayDev
to reflect new name in rust-nostr
2024-03-22chore: nix flake updateDanConwayDev
update nix dependancies to latest version using default update options
2024-03-22chore: cargo updateDanConwayDev
update dependancies to latest version stated in cargo.toml
2024-03-08fix: stack overflow bugDanConwayDev
introduced in 098b0258fdd581c750099cb463adbddb57843388
2024-03-08feat(send): compare against origin/main vs mainDanConwayDev
catch more errors when proposed commits are not connected to origin/main branch improve default selected commits when on main branch
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-04fix: restore better error messageDanConwayDev
which is covered by a test case. broken by: 445eea13d987b345535fd4fa56486ff334bbd351
2024-03-04fix: grammar in cli output patch ~> patchesDanConwayDev
fixing error which should have been resolved in: 8519dc4a10d47747e6df3f47e25c36bf16befe00
2024-03-04fix(send): feature branch default to ahead of mainDanConwayDev
instead of the latest commit. issue intrroduced in: 445eea13d987b345535fd4fa56486ff334bbd351
2024-03-04fix: typo in help content@RandyMcMillan
change donwload ~> download
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
2024-02-23refactor: remove confusing options, improve helpDanConwayDev
from_branch and to_branch have been replaced by specifying revision ranges
2024-02-23refactor: remove confusing options, improve helpDanConwayDev
from_branch and to_branch have been replaced by specifying revision ranges
2024-02-23feat(push): add `--force` to issue revisionDanConwayDev
wrapping `send --in-reply-to` unless branch up-to-date
2024-02-22fix: apply patches errorDanConwayDev
introduced in 9f1d8cd964a04197565a2acb1f2b174c9582d333
2024-02-22refactor: fix spellingDanConwayDev
ammended should read amended
2024-02-22refactor(list): improve copyDanConwayDev
reduce wording in choices
2024-02-22fix: applying commits that exist in other branchesDanConwayDev
previously these commits would be skipped
2024-02-22fix(list): local rebase detected as ammendmentsDanConwayDev
also updated copy and code comments
2024-02-22refactor: simplifed ammendments and rebasesDanConwayDev
to align with changes done to pull c5dfd1b7e509eedc33de75343de8659e3c9e0b2a also improved copy
2024-02-22refactor: simplifed ammendments and rebasesDanConwayDev
to align with changes done to pull c5dfd1b7e509eedc33de75343de8659e3c9e0b2a also improved copy
2024-02-22fix(pull): local rebase detected as ammendmentsDanConwayDev
also updated copy and code comments
2024-02-22test(list): local commits on uptodate proposalDanConwayDev
add test for scenario and tweak copy
2024-02-22feat(pull): support `--in-reply-to` revisionsDanConwayDev
added tests to cover one of these rebase scenarios
2024-02-22feat(list): improved copy for rebase scenariosDanConwayDev
and added some comments to better describe the rebase scenarios
2024-02-22fix(list): support `--in-reply-to` latest revisionDanConwayDev
update list to support rebases via proposal revisions as created by `ngit send --in-reply-to` or upcoming change `ngit push --force`
2024-02-21feat(send): in-reply-to arg for revised proposalDanConwayDev
send a revised version of a proposal using the new in-replyto argument suppliments existing 'root' tag with 'root-revision' e 'reply' tag to the original proposal
2024-02-21feat(send): specify commits eg HEAD~2DanConwayDev
specifiy commits or commit ranges in the same way that `git format-patch` allows
2024-02-20feat(list): set checkout branch as default choiceDanConwayDev
instead of no default. note: I spent hours trying to get CliTester to support default choices and gave up. I have a stashed the attempt and am moving on...
2024-02-20fix(pull): applying proposal revisionsDanConwayDev
if a revision responds to a root patch (no cover letter) then the revision will nolonger be applied on top of the first patch in the original set
2024-02-20refactor: tweak error wordingDanConwayDev
remove the word nostr for consistency and as its a bit confusing
2024-02-20feat(list): download or apply with git amDanConwayDev
add the option to download patches or apply them with git am give more granular messages about the state of proposals. add support for replacing old proposal version with a new one
2024-02-20refactor: simplify commit msg extractionDanConwayDev
and create functions to use this for non-root patches
2024-02-20fix: cover letter description from patchDanConwayDev
if description isn't present this was causing an breaking error
2024-02-20refactor: imrpove error msgDanConwayDev
when trying to create a branch from a proposal when the the parent commit id doesnt exist
2024-02-19fix: ingore patch diff in descrition fallbackDanConwayDev
the description is not currently displayed so no tests where written
2024-02-16refactor: added code commentsDanConwayDev
to reflect the requirement for certain tags
2024-02-16refactor: rename PR to proposalDanConwayDev
PR is a problematic term when it ambiguous whether the set of patches are PR-like or email-patch like.
2024-02-16refactor: use event_id in get_most_recent_accestorDanConwayDev
instead of commit ids as part of nip34 compliance and to enable applying proposals to tip of master in the future
2024-02-16refactor: improve error when patch ahead of masterDanConwayDev
minor improvement to error message
2024-02-16refactor: remove reliance on 'commit' tagDanConwayDev
as part of nip34 compliance
2024-02-16feat: improve helpDanConwayDev
improve summary for help commands
2024-02-15fix(interactor): input displaying empty defaultDanConwayDev
instead of no default
2024-02-15fix(list): filter for repo event ref tagDanConwayDev
previously filtering for d tag rather than a tag this kind of bug should be picked up by tests when our mock relay is applying filters before sending events
2024-02-15fix(repo-ref): filter for maintainer pubkeyDanConwayDev
previously looking for p tag rather than author this kind of bug should be picked up by tests when our mock relay is applying filters before sending events
2024-02-15fix: improve 'searching for profile updates' msgDanConwayDev
it wasn't clear why no results were coming back from relays or why it is needs (added reference to relay updates)
2024-02-15fix: allow optional description and webDanConwayDev
also add a default web
2024-02-15fix: curate default relaysDanConwayDev
wss://eden.nostr.land is a paid relay wss://nostr.wine is paid relay
2024-02-14feat: get_events coutdown to timeoutDanConwayDev
add a ui feature to countdown to timeout so user doesn't consider exiting early
2024-02-14feat: find repo event by nevent or naddrDanConwayDev
if repo event cannot be found using unique commit the user can find it via a nevent or naddr also handle no PRs found
2024-02-14feat: send to default relays, blast repo eventDanConwayDev
improve the distribution of events by sending to default relays in addition to user and repo relays. for better discoverability of repo events, this is also blasted. a temporary fix to blast everything was removed. the less reliable purplepages.es relay is moved to more_fallback_relays that currently isn't used
2024-02-14feat: improve fetch events reportingDanConwayDev
Improve how progress is reported in the UI when fetching events
2024-02-14feat!: move `claim` > `init`DanConwayDev
this aligns with gitstr and is more intuative the idea behind using claim to indicate that it is only for maintainersto do is valid but its too confusing
2024-02-14feat!: move `prs create`>`send`, `prs list`>`list`DanConwayDev
remove unnecessary hierachy of `prs` which is also a troublesome term replace the concept of `create` which aligns more to the PR github model to `send` which aligns more with the git patch model
2024-02-13feat!: nip34 set pr kind to patch kindDanConwayDev
this enables consistancy of display with simple clients that are just taking the output of `git format-patch`
2024-02-13feat!: nip34 make pr event optionalDanConwayDev
use first patch as thread root if pr event isn't present. begin renaming pr event to cover letter. fix patch ordering upon creation. patches were in youngest first order which caused: - `PATCH n/t`to be in reverse order - the youngest patch was the marked root - oldest patch replied to the youngest fix finding most recent patch event. when a patch in a set is the most recent it will share a created_at with other patches. previously the first patch recieved from relay in the set would be used. now it finds the first patch with that created_at which isn't also a parent of another patch with the same created_at.
2024-02-13feat(prs-create)!: pr to nip34-like cover letterDanConwayDev
up the pr event type to a nip34-like cover letter format this sets the building blocks in place to enable simplier clients to use the 'cover letter' feature in `git format-patch` to create the experience as a pr event
2024-02-09refactor(git): find root commit from headDanConwayDev
this is simpler there is no need to check whether main or master exist because one does 99+% of the time the root commit wil be te same for head as master 99+% of the time
2024-02-09feat(prs-create): add `PATCH n/n` to contentDanConwayDev
format patch as a series in the patch event content unless it is 1/1 and there is no pr (cover letter) event
2024-02-02test: replace block_on with tokio::testsjk
This is intended to improve the reliabilty of the tests. there have been particular issues with random tests never ending when run in the nix configuration see discussion here https://github.com/DanConwayDev/ngit-cli/issues/ 6#issuecomment-1918971239 and: https://github.com/DanConwayDev/ngit-cli/pull/7
2024-02-02feat(prs-create)!: use nip34 patch kind and tagsDanConwayDev
- change kind number - remove "r-" prefix from unique commit id r tag - rename tag commit-sig to commit-pgp-sig - a tag for repo identifer and pubkey. this serves as a vote for this pubkey being a maintainer - add relay hints - change format of committer tag - remove r references to parent commit id - tag parent patch event if its part of change request author and commit-message tags still need to be removed but they are required to apply patches with gitlib2. we will need to fallback to running the git client to apply patches. BREAKING CHANGE: change patch/commit event kind and tags to reflect nip34 draft. events with the older kind will no longer be found and will not be in a valid format
2024-02-02feat(repo_ref)!: align maintainers tag to nip34 styleDanConwayDev
nip34 specifies that repo event tags with multiple values wuch as "relays" and "web" use theformat: `["tag", "item", "item"...]` instead of: ``` ["tag", "item"], ["tag", "item"], ``` this update also adds clarity. it is not obvious that using a p tag is intended to make the pubkey a co-maintainer. BREAKING CHANGE: format of maintainers tags in repo events has changed to reflect nip34 style and ngit will not detect the old format
2024-02-02feat(repo_ref)!: use nip34 kind and tagsDanConwayDev
- change kind number - do not rely on d identifiers for unique commit id. set it as default to unique commit id shorthand. - remove "r-" prefix from unique commit id r tag and instead add checks for SHA1 validity - rename tag git_server to clone - add web tag - use single relays tag instead of multiple relay tags BREAKING CHANGE: change repo event kind and tags to reflect nip34 draft. events with the older kind will no longer be found and will not be in a valid format
2024-01-31test: dont print verbose get_events log for testsDanConwayDev
this temporarily fixes tests that rely on the cli output from fetching events by not printing verbose messages during tests when a better solution is implemented for communicating get_events status, it should be intergrated into the tests
2024-01-31fix: intermittent crashing by removing block_onDanConwayDev
a crashing bug was identifed when users ran ngit with large relay sets. the test suite would also stop at random tests and produce a ...running for over 60 seconds error but only on nix configuration and not when using rustup. this change fixes this so the ngit must have been crashing more often when ran with the reduced resources of a nix shell. the test suite consistantly runs successfully under nix when this change is applied to v0.1.0. later changes were made to mitigate this and other issues as hot fixes which either intentionally broke tests (to rush the change through as a hotfix) or unintentionally in the case of nostr 0.27 upgrade in fc3f22eac2bb81823f170f61ba9d39baff76b933 changes introduced in e0f543e8adb144f6deff6ff7ea0c412c9fcac5b4, specifically queuing up relays, are probably not needed so I have increased the number of relays proccessed at any one time from 5 to 15
2024-01-27fix: stop requesting events from blasterDanConwayDev
hardcoding this relay as we have temporarily added to to all new repo events, it will never return any results and connecting to many relays is causing problems
2024-01-27fix(login): stop bailing when no name in metadataDanConwayDev
now falls back to displayName, display_name or npub test pass when loggined printed to the cli in e0f543e8adb144f6deff6ff7ea0c412c9fcac5b4 are commented out
2024-01-26chore: upgrade rust-nostr v0.27.0v0.1.1DanConwayDev
this is a contribution from jk (sectore) that I rebased and squashed into this commit. the tests were broken in the last few commits to rush out some fixes. this change may introduce more issues because of Relay.respond_standard_req.
2024-01-26fix: use correct fallback relaysDanConwayDev
instead of the `more_fallback_relays`
2024-01-26feat(claim): add blaster to relay listDanConwayDev
this is a temporary fix until we handle relays more effectively
2024-01-26fix(claim): use correct fallback relaysDanConwayDev
use fallback relays instead of more fallback relays
2024-01-26fix: fetching messages with many unreliable relaysDanConwayDev
the tool had not been tested with large number of user relays, some of which are misbehaving. It works well when sending events to relays but struggles when fetching messages. it seems to crash when accessing a large number of relays. this change queues up relays so many are not connected to at the same time. it also shows more verbose messages about its connection and success with relays. many of the tests will fail as a result of this change as I havn't updated them to expect details of more relay interaction. further changes are urgently needed to improve the speed of fetching events. - relay interaction UI should reflect the smooth approach used for sending events - we don't need to fetch user events from every relay - we could show the user information that we have already collected and allow them to interact
2024-01-23fix(prs-create): remove d tag from pr eventDanConwayDev
this shouldn't be present
2024-01-23build: env specific fallback relaysDanConwayDev
to prevent tests from poluting public relays
2024-01-23feat(pull): check for clean repoDanConwayDev
before applying changes and bail if not
2024-01-23feat(prs-list): check for clean repoDanConwayDev
before checking out PR branch add confirm prompt before checking out branch and applying changes
2024-01-22feat(git): apply pgp sig event tag to commitDanConwayDev
to maintain correct commit ids which is required to apply multiple commits its noted that no tests are written and the scenario where the author and committer differ has not been tested clearly the validate_patch_applied function has code that corrects an error where the author / committer 'signatures' do not apply correctly. this will not be fixed under a pgp signed commit scenario.
2024-01-22feat(git) save pgp sig in patch eventDanConwayDev
so that commit ids can be maintained
2024-01-22feat(claim): improve no remote error messageDanConwayDev
so that the user knows why a remote is required
2024-01-22feat(login): reduced cache usage delayDanConwayDev
so that changes to relays changes can be picked up
2024-01-22feat(claim): change repo event kindDanConwayDev
so that it is outside the 30000 <= n < 40000 parameterized replacable range
2023-12-12feat(claim) create yaml add maintainers and relaysDanConwayDev
- create yaml file with maintainers and relays - add maintainers to repo event - add current user as maintainer - custom repo relays from cli argument - save git-server in repo event
2023-12-08feat(push) push commits to existing prDanConwayDev
- find pr with a branch-name that matches checked out branch - check branch isnt behind latest patch on pr - push new commits a patches associated with pr
2023-12-07feat(pull) pull commits for checked out pr branchDanConwayDev
- find pr event which matches branch name - fetch and apply latest commits
2023-12-06build(deps) update nixDanConwayDev
- update nix flake - bump hard coded reference to rustfmt nightly version - fix warning that latest version of rustfmt produced
2023-12-01feat(prs-list) list and pull selected as branchDanConwayDev
- fetch prs and present as a selectable list - create and / or checkout branch for selected pr - apply latest patches as commits