• v0.8.1 c26b546bdf

    v0.8.1
    All checks were successful
    Check / fmt + clippy + build + tests (push) Successful in 2m46s
    Build binary (Linux) / Build and publish fj binary (Linux x86_64) (push) Successful in 5m4s
    Build binary (Windows) / Build and publish fj binary (Windows x86_64) (push) Successful in 7m59s
    Stable

    David released this 2026-06-08 12:13:16 +02:00 | 7 commits to main since this release

    Changelog

    c26b546 Merge pull request 'Release v0.8.1' (#49) from release/v0.8.1 into main
    cb68a8f Release v0.8.1
    9b2b18e Merge pull request 'FJ-39: authenticate AGit https push with the stored keys.json token' (#48) from david/feat/agit-keys-token-FJ-39 into main
    eadcd6e feat(prs): authenticate AGit https push with the stored keys.json token

    Downloads
  • v0.8.0 8af3afeb93

    v0.8.0
    All checks were successful
    Check / fmt + clippy + build + tests (push) Successful in 1m4s
    Build binary (Linux) / Build and publish fj binary (Linux x86_64) (push) Successful in 1m26s
    Build binary (Windows) / Build and publish fj binary (Windows x86_64) (push) Successful in 1m59s
    Stable

    David released this 2026-06-08 04:50:07 +02:00 | 11 commits to main since this release

    Changelog

    8af3afe Merge pull request 'Release v0.8.0' (#47) from release/v0.8.0 into main
    b6dd224 Release v0.8.0
    361ce9c Merge pull request 'FJ-38: restore TLS/SSH in libgit2 so AGit push works over HTTPS' (#46) from david/fix/agit-libgit2-tls-FJ-38 into main
    0d5700f fix(prs): restore TLS and SSH transports in libgit2 (AGit push)
    80aff11 Merge pull request 'FJ-37: org scope and get for fj actions variables' (#45) from feat/actions-variables-org-get-FJ-37 into main
    add026e fix(actions): detect 409 conflict and dedup variable JSON
    a26aad3 feat(actions): org scope and get for actions variables
    259e0a9 Merge pull request 'FJ-36: add fj actions logs to fetch action run logs' (#44) from feat/actions-logs-FJ-36 into main
    a3df720 fix(actions): clear auth error when logs redirect to login
    b4ed515 feat(actions): add fj actions logs to fetch run logs
    efd5746 Merge pull request 'FJ-35: fix fj pr status panic on merged PRs (unbound $created_at)' (#43) from fix/pr-status-merged-panic-FJ-35 into main
    ab1227a fix(prs): resolve merge date and stop panic on merged PR status
    df4855f Merge pull request 'chore(build): bump rust-builder-glibc to v1.0.1' (#42) from chore/bump-rust-builder-glibc-v1.0.1 into main
    d0fa95c chore(build): bump rust-builder-glibc to v1.0.1
    0137a60 Merge pull request 'chore: Sync .gitignore' (#40) from chore/sync-gitignore into main
    2515a12 chore: Sync .gitignore
    45c3bb3 Merge pull request 'FJ-32: Add fj repo deploy-key subcommands (list/view/create/delete)' (#39) from feat/repo-deploy-key-subcommands-FJ-32 into main
    411ea92 Merge branch 'main' into feat/repo-deploy-key-subcommands-FJ-32
    ca9bba1 Merge pull request 'FJ-30: Add fj repo branch-protection subcommands (list/view/create/edit/delete)' (#38) from feat/repo-branch-protection-FJ-30 into main
    1de9847 Merge branch 'main' into feat/repo-branch-protection-FJ-30
    bd748c7 Merge pull request 'FJ-33: Add fj repo collaborator subcommands (list/add/remove/permission)' (#37) from feat/repo-collaborator-subcommands-FJ-33 into main
    83d16a3 feat(repo): add deploy-key subcommands (list/view/create/delete)
    5dce488 Merge branch 'main' into feat/repo-collaborator-subcommands-FJ-33
    3cc3282 feat(repo): add branch-protection subcommands (list/view/create/edit/delete)
    bbd3f18 Merge pull request 'FJ-31: Add fj repo webhook subcommands (list/view/create/edit/delete/test)' (#36) from feat/repo-webhook-subcommands-FJ-31 into main
    dde53a0 feat(repo): add collaborator subcommands (list/add/remove/permission)
    0b47b49 feat(repo): add webhook subcommands (list/view/create/edit/delete/test)
    3cb6dbb Merge pull request 'fix(ci): generate release notes from commits since previous tag' (#35) from fix/release-notes-since-prev-tag into main
    2f19c30 fix(ci): generate release notes from commits since previous tag
    ae1a6c7 Merge pull request 'FJ-27: Add fj version update to self-replace the binary; split version into show/check/update' (#34) from feat/version-update-subcommands-FJ-27 into main
    aad4d7e Merge branch 'main' into feat/version-update-subcommands-FJ-27
    83e09bc feat(version): split into show/check/update; add self-replacing update
    2dad2a7 Merge pull request 'chore(client): rebrand ProjectDirs org to Pandoras-box' (#32) from chore/rebrand-projectdirs-org-pandoras-box into main
    d21de02 Merge branch 'main' into chore/rebrand-projectdirs-org-pandoras-box
    d80a5a1 Merge pull request 'FJ-28: Colorize clap --help and error output with fj's palette' (#33) from feat/colorize-clap-help-FJ-28 into main
    8cc1192 feat(cli): colorize clap --help and error output with fj's palette
    47fb938 chore(client): rebrand ProjectDirs org to Pandoras-box
    324a549 Merge pull request 'fix(version): skip keys.json load for credential-free commands' (#31) from fix/version-no-keys-file-FJ-26 into main
    536b110 fix(version): skip keys.json load for credential-free commands
    416715c Merge pull request 'ci(version): pass COMMIT_DATE and BUILD_DATE build-args so dates bake (FJ-25)' (#29) from ci/version-dates-buildargs-FJ-25 into main
    9193089 Merge branch 'main' into ci/version-dates-buildargs-FJ-25
    0e8a825 Merge pull request 'ci: cap CARGO_BUILD_JOBS at nproc/2 in both build workflows' (#30) from fix/cargo-build-jobs-nproc-half into main
    75c886d ci: cap CARGO_BUILD_JOBS at nproc/2 in both build workflows
    caca9e6 ci(version): pass COMMIT_DATE and BUILD_DATE build-args so dates bake (FJ-25)
    38290a0 Merge pull request 'feat(version): show short SHA and commit date on default version line (FJ-25)' (#28) from feat/version-sha-date-FJ-25 into main
    57008dc Merge branch 'main' into feat/version-sha-date-FJ-25
    2fe1237 Merge pull request 'fix(windows): vendor OpenSSL for the windows-gnu cross build' (#27) from fix/windows-vendored-openssl into main
    3c29eea feat(version): show short SHA and commit date on default version line (FJ-25)
    672222b fix(windows): vendor OpenSSL for the windows-gnu cross build

    Downloads
  • v0.7.1 040f88220c

    v0.7.1
    Some checks failed
    Build binary (Windows) / Build and publish fj binary (Windows x86_64) (push) Failing after 13s
    Check / fmt + clippy + build + tests (push) Successful in 48s
    Build binary (Linux) / Build and publish fj binary (Linux x86_64) (push) Successful in 1m7s
    Stable

    David released this 2026-05-29 01:25:37 +02:00 | 60 commits to main since this release

    Changelog

    040f882 Merge pull request 'Release v0.7.1' (#26) from release/v0.7.1 into main
    9f642ec Release v0.7.1
    08c67b2 Merge pull request 'ci: escape literal parens in Nushell publish-step strings' (#25) from fix/ci-nu-string-interp-parens into main
    f04dc59 ci: escape literal parens in Nushell publish-step strings
    04665dd Merge pull request 'Release v0.7.0' (#24) from release/v0.7.0 into main
    82f706e Release v0.7.0
    1dcdfef Merge pull request 'ci(release): decouple latest/release publish trains and add dry-run (FJ-24)' (#23) from ci/decouple-publish-trains-dry-run-fj-24 into main
    d678fdf ci(release): decouple latest/release publish trains and add dry-run (FJ-24)
    fe3fc35 Merge pull request 'feat(fj): global --format/--json output flag and JSON for all commands (FJ-23)' (#22) from feat/global-output-format-fj-23 into main
    5d2b777 feat(fj): add global --format/--json flag and emit JSON for all commands (FJ-23)
    0ac836d Merge pull request 'fix(prs): add --json output and fix relative-URL crash (FJ-2)' (#21) from fix/pr-status-json-relative-url into main
    dd33e33 Merge main into fix/pr-status-json-relative-url (FJ-2)
    887c133 Merge pull request 'chore(release): bump library crates in lockstep with binary (FJ-20)' (#19) from chore/create-release-bump-libs-lockstep-fj-20 into main
    f1e1e4c Merge pull request 'ci(release): sync Cargo.lock in create-release and gate CI on --locked (FJ-21)' (#20) from ci/create-release-cargo-lock-fj-21 into chore/create-release-bump-libs-lockstep-fj-20
    28ee30d ci(release): sync Cargo.lock in create-release and gate normal CI on --locked
    4d805cb chore(release): bump library crates in lockstep with binary (FJ-20)
    ebc31ce Merge pull request 'docs(readme): document crate layout and parsing-vs-rendering boundary (FJ-19)' (#18) from docs/document-crate-layout-parsing-rendering-boundary-fj-19 into main
    faf6b7b docs(readme): document crate layout and parsing-vs-rendering boundary
    0dba47d Merge pull request 'docs(workspace): document crate split + MCP-reuse contract (FJ-9)' (#17) from docs/verify-cli-free-document-layout-fj-9 into main
    94534e9 docs(workspace): document crate split + MCP-reuse contract (FJ-9)
    c377593 Merge pull request 'Release v0.6.0' (#16) from release/v0.6.0 into main
    56f7c8a Release v0.6.0
    5aef1f2 Merge pull request 'chore(metadata): point package metadata at fork (FJ-17)' (#15) from chore/repoint-package-metadata-fork-fj-17 into main
    8d05a1a Merge branch 'main' into chore/repoint-package-metadata-fork-fj-17
    bf95620 Merge pull request 'refactor(core): migrate issues/prs/org API logic into fj-core (FJ-12)' (#14) from refactor/migrate-complex-areas-fj-12 into main
    5a2e6be Merge branch 'main' into refactor/migrate-complex-areas-fj-12
    508bd68 chore(metadata): repoint package metadata at fork (FJ-17)
    5d758b6 refactor(core): migrate issues/prs/org API logic into fj-core (FJ-12)
    fbc1a9d Merge pull request 'feat(version): train-aware update check baked into the binary (FJ-15)' (#13) from feat/version-train-aware-check-fj-15 into main
    d92a2bd feat(version): train-aware update check baked into the binary (FJ-15)
    8a762b4 Merge pull request 'fix(version): point update check at fork, ship --check in releases (FJ-14)' (#12) from chore/update-check-target-fork-fj-14 into main
    652b990 Merge branch 'main' into chore/update-check-target-fork-fj-14
    f475613 Merge pull request 'chore: commit repo hygiene (gitignore, JetBrains files, README) (FJ-16)' (#10) from chore/repo-hygiene-fj-16 into main
    0d0e057 fix(version): point update check at fork, ship --check in releases (FJ-14)
    e4a3bfc Merge branch 'main' into chore/repo-hygiene-fj-16
    8850db4 Merge pull request 'chore: migrate repo/release/user/actions into fj-core ops (FJ-11)' (#11) from chore/migrate-medium-areas-fj-11 into main
    0bb2a89 chore: migrate repo/release/user/actions into fj-core ops (FJ-11)
    f6ecbd6 docs: align README with the a8n.run fork (FJ-16)
    9b98dfc chore: expand .gitignore and track JetBrains project files (FJ-16)
    ac743d3 Merge pull request 'chore: migrate tag/wiki API calls into fj-core ops (FJ-10)' (#9) from chore/migrate-simple-areas-fj-10 into main
    2eb8609 chore: migrate tag/wiki API calls into fj-core ops (FJ-10)
    237aadc Merge pull request 'chore: extract fj-core shared types + issue-template parsing (FJ-7)' (#8) from chore/extract-fj-core-fj-7 into main
    8d1e5a2 chore: extract fj-core shared types + issue-template parsing (FJ-7)
    eeeca80 Merge pull request 'chore(lint): clear clippy -D warnings across fj binary (FJ-13)' (#7) from chore/clippy-clean-fj-13 into main
    efb1ab7 chore(lint): clear clippy -D warnings across fj binary (FJ-13)
    4083f60 Merge pull request 'chore: extract fj-client (keys, client, URL/SSH resolution) (FJ-6)' (#6) from chore/extract-fj-client-fj-6 into main
    7887a71 chore: extract fj-client (keys, client, URL/SSH resolution) (FJ-6)
    c3f464d Merge pull request 'chore: convert to a Cargo workspace (fj, fj-client, fj-core) (FJ-5)' (#5) from chore/cargo-workspace-fj-5 into main
    fc4c342 chore: convert to a Cargo workspace (fj, fj-client, fj-core) (FJ-5)
    0c4e179 Merge pull request 'chore(main): strip anti-AI refusal-trigger comment (FJ-4)' (#4) from chore/strip-anti-ai-comment-fj-4 into main
    b944136 chore(main): strip anti-AI refusal-trigger comment (FJ-4)
    4294bff Merge pull request 'chore: adopt NiceGuyIT governance build/CI standards' (#3) from chore/governance-conformance into main
    266b53d chore: adopt NiceGuyIT governance build/CI standards
    53b4fae Merge pull request 'fix(pr): json output for pr status, fix relative-url crash (FJ-2)' (#2) from feat/pr-status-json-relative-url-fix into main
    a896a8d Merge branch 'main' into feat/pr-status-json-relative-url-fix
    2ea6507 fix(pr): json output for pr status, fix relative-url crash (FJ-2)
    7aa32dc Merge pull request 'feat(pr): add --json output to pr search (FJ-1)' (#1) from feat/pr-search-json into main
    eb2492b feat(pr): add --json output to pr search (FJ-1)
    cabf3fb docs: mark as fork, attribute upstream, state AI policy rationale
    c67fe84 fix(prs): add --json output and fix relative-URL crash (FJ-2)
    34d5cff Merge pull request 'l10n: enable zh-Hans locale' (#472) from cyborus/locale/zh-Hans into main
    5f49a67 l10n: enable zh-Hans locale
    67c0ccc Merge pull request 'Translations update from Codeberg Translate' (#465) from translate/forgejo-cli:weblate-forgejo-cli-forgejo-cli into main
    1c067e3 Translated using Weblate (Chinese (Simplified Han script))
    745ffaf Added translation using Weblate (Chinese (Simplified Han script))
    bea4979 Translated using Weblate (Italian)
    ff0b5c8 Translated using Weblate (Russian)
    1fe6c2b Added translation using Weblate (Italian)
    1807115 Translated using Weblate (Toki Pona)
    8d7ea8e Translated using Weblate (Toki Pona)
    548e2b1 Added translation using Weblate (Toki Pona)
    20489a0 Translated using Weblate (Polish)
    103ef53 Added translation using Weblate (Polish)
    6319482 Deleted translation using Weblate (Toki Pona)
    2be0432 Added translation using Weblate (Toki Pona)
    c5e1806 Translated using Weblate (Russian)
    13a7223 Added translation using Weblate (Russian)
    4532e02 Translated using Weblate (German)
    da3fc2a Merge pull request 'Update Rust crate serde_json to v1.0.150' (#470) from renovate/serde_json-1.x-lockfile into main
    449265b Update Rust crate serde_json to v1.0.150
    fe988a5 Merge pull request 'fix typo' (#469) from efraim/fix-typo into main
    e3ad8f2 fix typo
    5c67478 Merge pull request 'Update Rust crate git2 to 0.21.0' (#467) from renovate/git2-0.x into main
    ff9e70c chore: update auth-git2 to 0.6.0
    d53ac46 Update Rust crate git2 to 0.21.0
    ebfe5d1 Merge pull request 'German locale' (#464) from LordMZTE/forgejo-cli:de-locale into main
    594c935 feat: German locale
    0b0cbe2 Merge pull request 'feat: localization' (#279) from localization into main
    3cb0bee chore(typos): exclude locales from spell check
    66f164d fix(l10n): bad en-US messages
    43fcd4a Merge pull request 'Resolve ssh host names with ssh config' (#462) from tpikonen/forgejo-cli:resolve-ssh-host into main
    0796529 fix: Use get_ssh_config() to access ssh config
    1df2ad5 fix: Resolve ssh host using ssh config
    49d1f75 Merge pull request 'Lock file maintenance' (#463) from renovate/lock-file-maintenance into main
    1511f2a Lock file maintenance
    8b2dcf4 refactor: .filter_map().next() -> .find_map()
    9942283 fix(ftl): minor fixes
    0f61c26 fix(l10n): don't print message id on empty prompt message
    13fa2c8 fix(l10n): panic on invalid user prompt message
    89b3276 refactor: better panic message in OffsetDateTime::ftl
    e13e091 refactor(fluent): simpler IS_MINIMAL body
    132fb25 fix(fluent): stricter argument validation
    57346f0 fix(ftl): variable interpolation syntax
    1c1228e fix: remove unreachable from auth::auth_server
    3ad20eb feat: passthrough write_fmt on WriterCompat
    5183b94 refactor: impl AsFluent for bool
    ac9bbb9 chore: remove obsolete comment
    b7192ce fix(string): consistent pluralization in org-create-invalid_character
    8284247 refactor: allow trailing comma in ftl_* macros
    2b6671d build: rerun if localization is changed
    5640d3d build: display ftl errors as errors instead of warnings
    cac402d fix(string): bool colors in user-gpg-list-*
    c60f3ec refactor: remove build-dependency on glob
    ade375d Merge pull request 'Lock file maintenance' (#459) from renovate/lock-file-maintenance into main
    3582a7a Lock file maintenance
    bc9fd14 Merge pull request 'Update Rust crate open to v5.3.5' (#461) from renovate/open-5.x-lockfile into main
    2a1d3ca Merge pull request 'Update Rust crate clap_complete to v4.6.5' (#458) from renovate/clap_complete-4.x-lockfile into main
    930a4e2 Merge pull request 'Update Rust crate tokio to v1.52.3' (#456) from renovate/tokio-1.x-lockfile into main
    3526e0b chore: remove eyre from build-dependencies
    cfc80f5 feat(l10n): don't localize in non-tty environments
    14be862 fix(l10n): proper pluralization in actions-dispatch-success
    714f55b refactor: more robust language detection
    f54bd3a chore: remove tok localization
    e3527ca refactor: rename IS_NONE to OPT
    e7eeefa feat(l10n): localize repo
    65d75f6 refactor: don't user duplicate attributes in prompts
    63d0bf4 chore: fix warnings
    1ca1bf7 feat(l10n): localize user
    6ca7b5d feat(l10n): localize pr
    dd23ea2 feat(l10n): localize issue
    a1fa785 feat(l10n): localize wiki
    81a1685 feat(l10n): localize version
    0bb6220 feat(l10n): localize tag
    a23c814 feat(l10n): localize release
    42cb3c6 feat(l10n): localize org
    7af0a8e feat(l10n): localize readline and prompt_bool
    d70f398 feat(fluent): add styling functions
    9e57c31 delete: fluent tests
    2ce9d69 build: check fluent file validity in build.rs
    cc60549 feat(l10n): localize actions
    e98997b refactor(ftl): allow self-named args
    f22166d refactor: allow expr in ftl id position
    5ec9cb2 refactor: pretty-print ftl errors
    37b4c24 feat(l10n): localize auth
    84230cf feat(l10n): localize whoami
    d58148d test(fluent): placeables in macros
    d3243b7 Update Rust crate open to v5.3.5
    a4a8d15 Update Rust crate clap_complete to v4.6.5
    66d9b23 Update Rust crate tokio to v1.52.3
    0b2f707 chore: fmt
    53d67b6 refactor: move localization tests into integration tests
    5d31715 feat: setup localization framework
    be36660 Merge pull request 'feat(pr-reviews): New pr reviews command with -c flag for inline comments' (#429) from muller-md/forgejo-cli:get-inline-comments into main
    35c760a Merge pull request 'Update Rust crate tokio to v1.52.2' (#454) from renovate/tokio-1.x-lockfile into main
    f364cca Merge pull request 'Update Rust crate serde-saphyr to 0.0.26' (#453) from renovate/serde-saphyr-0.x into main
    d7ed2c1 Merge pull request 'Lock file maintenance' (#450) from renovate/lock-file-maintenance into main
    4e849a5 Update Rust crate tokio to v1.52.2
    e4dd36f Update Rust crate serde-saphyr to 0.0.26
    9d630f3 feat(pr-reviews): Add command to view pull request reviews
    8c98a7a Lock file maintenance
    548f29c Merge pull request 'Restricted file permissions at creation time' (#449) from skdishansachin/forgejo-cli:improve-file-creation into main
    72cb79e style: fix the code formatting
    a3ce4dc refactor: simplify the file permissions to 0600 on Unix
    bf10bd5 refactor: simplify the file creation with permissions
    b5da7f6 fix: restrict keys.json permissions at creation time
    117c4a7 fix: restrict file permissions to 0600 on Unix
    be1893e Merge pull request 'Lock file maintenance' (#441) from renovate/lock-file-maintenance into main
    7b45e27 Merge pull request 'Update Rust crate clap_complete to v4.6.3' (#442) from renovate/clap_complete-4.x-lockfile into main
    ae4eac8 Merge pull request 'Update Rust crate ssh2-config to v0.7.1' (#440) from renovate/ssh2-config-0.x-lockfile into main
    e632f9e Merge pull request 'Update Rust crate serde-saphyr to 0.0.25' (#438) from renovate/serde-saphyr-0.x into main
    0a06721 Merge pull request 'docs: add oneline helptext to 'repo migrate' command' (#443) from moutons/forgejo-cli:docs/add-migrate-oneline into main
    92c163a docs: add oneline helptext to 'repo migrate' command
    110e75e Update Rust crate clap_complete to v4.6.3
    c649e3f Update Rust crate ssh2-config to v0.7.1
    d35a586 Update Rust crate serde-saphyr to 0.0.25
    4f1a8c3 Merge pull request 'fix(activity): parse issue content field as json' (#437) from cyborus/activity-issue-fix into main
    447091d refactor(activity): use repo_name for all repo name locations
    d5ab501 fix(activity): parse issue content field as json
    3f7bda3 Lock file maintenance
    98b5d4a Merge pull request 'Lock file maintenance' (#432) from renovate/lock-file-maintenance into main
    8106037 Merge pull request 'Update Rust crate open to v5.3.4' (#431) from renovate/open-5.x-lockfile into main
    04dfd01 Merge pull request 'Update Rust crate serde-saphyr to 0.0.24' (#436) from renovate/serde-saphyr-0.x into main
    df34add Update Rust crate serde-saphyr to 0.0.24
    e6ce331 Lock file maintenance
    3dd05a1 Update Rust crate open to v5.3.4
    ded7801 Merge pull request 'ci: add typos check' (#430) from cyborus/typos into main
    36a30e0 fix: typos
    1de8bfd ci: add typos check
    04696e0 Merge pull request 'Update Rust crate tokio to v1.52.1' (#428) from renovate/tokio-1.x-lockfile into main
    c6ff1e1 Update Rust crate tokio to v1.52.1
    04c50ce Merge pull request 'chore: bump version to 0.5.0' (#427) from cyborus/bump-0.5.0 into main
    e53311b chore: bump version to 0.5.0
    ef5b6b4 Merge pull request 'fix(binstall): target-arch not target_arch' (#426) from cyborus/binstall-fix into main
    a295c7e fix(binstall): target-arch not target_arch
    682d1a9 Merge pull request 'build: use trixie tag for debian image' (#425) from cyborus/dockerfile-debian-trixie into main
    cb46e0f build: use trixie tag for debian image
    5eefc0b Merge pull request 'docs(readme): mention aarch64 build in "Installation" section' (#424) from cyborus/readme-aarch64 into main
    af7b55a docs(readme): mention aarch64 build in "Installation" section
    ebd9776 Merge pull request 'feat: add warning about git push --force on agit prs' (#420) from cyborus/agit-force-push-warning into main
    ae78246 Merge pull request 'feat: show warning on archived repos' (#419) from cyborus/archived-repos into main
    a862688 Merge pull request 'Lock file maintenance' (#423) from renovate/lock-file-maintenance into main
    ad01c7b Merge pull request 'Update Rust crate forgejo-api to 0.10.0' (#422) from renovate/forgejo-api-0.x into main
    183caf0 Merge pull request 'Update Rust crate uuid to v1.23.1' (#421) from renovate/uuid-1.x-lockfile into main
    f474338 chore: add query parameter to list_action_tasks
    5c8e221 Lock file maintenance
    15e9fb2 Update Rust crate forgejo-api to 0.10.0
    f897e77 Update Rust crate uuid to v1.23.1
    d195b9e feat: add warning about git push --force on agit prs
    e040613 feat: show warning on archived repos
    3de1859 Merge pull request 'feat: assigning issues' (#414) from cyborus/assigning-issues into main
    8b82c17 feat: add pr assign & pr unassign
    60fb29a Merge pull request 'fix(oauth): save new token immediately after refreshing' (#417) from cyborus/oauth-save-refresh-immediately into main
    2cff956 Merge pull request 'feat: support all casings of README' (#415) from cyborus/caseless-readme into main
    9822f1b Merge pull request 'feat: allow setting owner for migrated repo' (#416) from cyborus/migration-owner into main
    1364f0f Update Rust crate clap to v4.6.1 (#418)
    da4fefe Update Rust crate clap to v4.6.1
    1d455ac refactor: move keys.save() out of main
    e0e1d04 fix(oauth): save new token immediately after refreshing
    b075f78 feat: allow setting owner for migrated repo
    6eec300 feat: support all casings of README
    ba50965 feat: add issue assign & issue unassign
    6344b3d Merge pull request 'Update Rust crate tokio to v1.52.0' (#413) from renovate/tokio-1.x-lockfile into main
    733b881 Update Rust crate tokio to v1.52.0
    abe822b Merge pull request 'Update Rust crate clap_complete to v4.6.2' (#412) from renovate/clap_complete-4.x-lockfile into main
    ab70ebf Update Rust crate clap_complete to v4.6.2
    77ff9ff Merge pull request 'Lock file maintenance' (#410) from renovate/lock-file-maintenance into main
    347284a Lock file maintenance
    05b8423 Merge pull request 'Update Rust crate clap_complete to v4.6.1' (#408) from renovate/clap_complete-4.x-lockfile into main
    702348c Merge pull request 'Update Rust crate rand to v0.10.1 [SECURITY]' (#409) from renovate/crate-rand-vulnerability into main
    e10940c Update Rust crate rand to v0.10.1 [SECURITY]
    7db9b13 Update Rust crate clap_complete to v4.6.1
    3a6de90 Merge pull request 'fix(oauth): detach opened browser' (#407) from cyborus/detach-browser-open into main
    1514dc7 fix(oauth): detach opened browser
    ebacef8 Merge pull request 'build: aarch64 support' (#403) from cyborus/aarch64 into main
    58493d0 Merge pull request 'docs: add badges to readme' (#404) from cyborus/readme-badges into main
    747dcba docs: add badges to readme
    834bd30 Merge pull request 'repo edit & repo units commands' (#349) from LordMZTE/forgejo-cli:repo-edit into main
    4132bf9 build(publish): add aarch64-linux build
    4c934da Merge pull request 'Update Rust crate tokio to v1.51.1' (#401) from renovate/tokio-1.x-lockfile into main
    38d5f61 Update Rust crate tokio to v1.51.1
    8745d76 Merge pull request 'Lock file maintenance' (#400) from renovate/lock-file-maintenance into main
    552bea4 Lock file maintenance
    6d3dc9e Merge pull request 'Lock file maintenance' (#399) from renovate/lock-file-maintenance into main
    71bda63 build: include target_arch in artifact names
    be3c4b9 Merge pull request 'Update Rust crate comrak to 0.52.0' (#396) from renovate/comrak-0.x into main
    772c567 Update Rust crate comrak to 0.52.0
    f24e392 Lock file maintenance
    f71d294 Merge pull request 'Lock file maintenance' (#389) from renovate/lock-file-maintenance into main
    927d432 Merge pull request 'Update Rust crate serde-saphyr to 0.0.23' (#390) from renovate/serde-saphyr-0.x into main
    b65f7c0 Merge pull request 'Update Rust crate hyper to v1.9.0' (#391) from renovate/hyper-1.x-lockfile into main
    0994912 Merge pull request 'Update Rust crate tokio to v1.51.0' (#394) from renovate/tokio-1.x-lockfile into main
    a170833 Merge pull request 'Update Rust crate semver to v1.0.28' (#395) from renovate/semver-1.x-lockfile into main
    c3accb1 Update Rust crate semver to v1.0.28
    f90015b Update Rust crate tokio to v1.51.0
    45935d5 Merge pull request 'fix: don't include pull requests in issue list' (#393) from cyborus/only-issues into main
    c35fc0f fix: don't include pull requests in issue list
    ea58119 Update Rust crate hyper to v1.9.0
    d3e489f Update Rust crate serde-saphyr to 0.0.23
    5272812 Lock file maintenance
    e102eb8 Merge pull request 'Update Rust crate uuid to v1.23.0' (#387) from renovate/uuid-1.x-lockfile into main
    6acdaf5 Update Rust crate uuid to v1.23.0
    7f1afc4 Merge pull request 'Update Rust crate sha2 to 0.11.0' (#386) from renovate/sha2-0.x into main
    66b2811 Update Rust crate sha2 to 0.11.0
    234c38f Merge pull request 'feat: use git's core.editor if available' (#385) from florian-obernberger/forgejo-cli:main into main
    32489c1 rework: fix logic errors and add fallback to $EDITOR
    6c75691 feat: simplify command extraction and bubble error state
    09c1cfc Merge remote-tracking branch 'refs/remotes/origin/main'
    01b6da8 Merge pull request 'Lock file maintenance' (#384) from renovate/lock-file-maintenance into main
    95d9824 Lock file maintenance
    b19aaa4 Merge pull request 'Lock file maintenance' (#383) from renovate/lock-file-maintenance into main
    7231d6d Lock file maintenance
    7bde891 Merge pull request 'Update Rust crate serde-saphyr to 0.0.22' (#380) from renovate/serde-saphyr-0.x into main
    ea3b6f9 Merge pull request 'feat(cli): update get_editor_flags for more editors' (#373) from florian-obernberger/forgejo-cli:main into main
    42a4071 Update Rust crate serde-saphyr to 0.0.22
    488937f Merge pull request 'docs: add comment containing anthropic refusal string' (#379) from cyborus/anthropic-kill-code into main
    73c18d1 Merge pull request 'docs: add issue & pr templates' (#378) from cyborus/docs/templates into main
    b26b6c3 docs: add comment containing anthropic refusal string
    9e972c8 docs: add forgejo version to bug report template
    7c091ba docs: add "Motivation" section to feature request template
    7801584 docs: expand bug report template
    ec366c8 docs: remove title from issue templates
    ec5142f docs: add issue & pr templates
    3017665 Merge pull request 'feat: add oauth support for codefloe.com' (#326) from pat-s/forgejo-cli:pat-s-patch-1 into main
    a0c4727 Merge branch 'main' into pat-s-patch-1
    bb89169 feat(cli): get editor from git-config
    7b2f698 feat(cli): update get_editor_flags for more editors
    61834a0 Merge pull request 'Lock file maintenance' (#369) from renovate/lock-file-maintenance into main
    af3320a Lock file maintenance
    7afd1e4 Merge pull request 'fix(login): correctly generate pkce challenge' (#368) from cyborus/fix/pkce-challenge into main
    a0d9e92 fix(login): correctly generate pkce challenge
    3b924f6 Merge pull request 'feat(nix): add shell completion generation' (#354) from empunkt/forgejo-cli:main into main
    90449f4 feat: repo units command
    98a3445 Merge pull request 'Update Rust crate clap_complete to v4.6.0' (#353) from renovate/clap_complete-4.x-lockfile into main
    b2765ac Merge pull request 'Update Rust crate clap to v4.6.0' (#352) from renovate/clap-4.x-lockfile into main
    0939823 style(nix): reformat flake.nix with nixfmt
    2f6860e feat(nix): add shell completion generation
    e8c0561 Update Rust crate clap_complete to v4.6.0
    b0efe10 Update Rust crate clap to v4.6.0
    4f8bc02 Merge pull request 'Update Rust crate comrak to 0.51.0' (#350) from renovate/comrak-0.x into main
    ba678d3 Update Rust crate comrak to 0.51.0
    41a9922 feat: repo edit command
    2a11cd3 Merge pull request 'Lock file maintenance' (#348) from renovate/lock-file-maintenance into main
    1fd623e Lock file maintenance
    ac71bc8 Merge pull request 'Update Rust crate tokio to v1.50.0' (#346) from renovate/tokio-1.x-lockfile into main
    c444828 Merge pull request 'Update Rust crate uuid to v1.22.0' (#347) from renovate/uuid-1.x-lockfile into main
    04893d3 Update Rust crate uuid to v1.22.0
    b75473f Update Rust crate tokio to v1.50.0
    bd3d6b5 Merge pull request 'Lock file maintenance' (#341) from renovate/lock-file-maintenance into main
    f962db4 Merge pull request 'Update Rust crate serde-saphyr to 0.0.21' (#342) from renovate/serde-saphyr-0.x into main
    215daa3 Update Rust crate serde-saphyr to 0.0.21
    f0862bb Merge pull request 'Repo & Issue labels' (#334) from LordMZTE/forgejo-cli:labels into main
    efec5c9 Lock file maintenance
    76b5ea7 chore(repo label delete): show what user entered instead ID number
    5cf9c26 feat(repo label create): pretty-print new labels
    37fe686 feat(repo label view): hide archived labels by default
    ec49f07 chore(repo): rename label command to labels
    1d06089 feat(prs): include labels in pr view body
    9940c0c fix: render_label_list will no longer print empty lines
    d4459bb feat: repo label edit
    e5cdbda feat(issues): show issue labels for issue view
    a3b6c84 feat(issues): add commands for editing labels
    22d8b9d feat(repo): creating and deleting labels
    ecda2cb feat(repo): add label view and move label display logic to main.rs
    42feef3 Merge pull request 'Update Rust crate serde-saphyr to 0.0.20' (#340) from renovate/serde-saphyr-0.x into main
    c14b213 Merge pull request 'Update Rust crate forgejo-api to v0.9.2' (#339) from renovate/forgejo-api-0.x-lockfile into main
    c9c5510 Update Rust crate serde-saphyr to 0.0.20
    246ec6b Update Rust crate forgejo-api to v0.9.2
    91afde6 Merge pull request 'Update Rust crate comrak to 0.50.0' (#305) from renovate/comrak-0.x into main
    2b2c9cf chore: adapt to comrak's breaking changes
    9da971b Merge pull request 'feat(login): add client id for v15.next.forgejo.org' (#337) from cyborus/login/v15.next.forgejo.org into main
    aa71a67 feat(login): add client id for v15.next.forgejo.org
    d90a856 Merge pull request 'Update Rust crate rand to 0.10.0' (#323) from renovate/rand-0.x into main
    8d17430 Merge pull request 'Update Rust crate clap to v4.5.60' (#335) from renovate/clap-4.x-lockfile into main
    7522f3d Merge pull request 'feat(login): add client id for codefloe.com' (#336) from cyborus/login/codefloe.com into main
    b572e85 feat(login): add client id for codefloe.com
    942f921 Update Rust crate clap to v4.5.60
    96b6af3 Update Rust crate rand to 0.10.0
    a527015 Merge pull request 'Update Rust crate uuid to v1.21.0' (#333) from renovate/uuid-1.x-lockfile into main
    a0afd7f Update Rust crate uuid to v1.21.0
    b33a8e3 Update Rust crate comrak to 0.50.0
    7734e2b Merge pull request 'Update Rust crate serde-saphyr to 0.0.19' (#332) from renovate/serde-saphyr-0.x into main
    679db7e Update Rust crate serde-saphyr to 0.0.19
    6cf4974 Merge pull request 'Update Rust crate futures to v0.3.32' (#331) from renovate/rust-futures-monorepo into main
    efa0b62 Merge pull request 'Update Rust crate forgejo-api to v0.9.1' (#330) from renovate/forgejo-api-0.x-lockfile into main
    1f755f8 Merge pull request 'Update Rust crate clap_complete to v4.5.66' (#329) from renovate/clap_complete-4.x-lockfile into main
    d50e81e Merge pull request 'Update Rust crate clap to v4.5.59' (#328) from renovate/clap-4.x-lockfile into main
    d6cfb3f Update Rust crate futures to v0.3.32
    de7d9f3 Update Rust crate forgejo-api to v0.9.1
    48ab22f Update Rust crate clap_complete to v4.5.66
    700f754 Update Rust crate clap to v4.5.59
    07c17a8 Update src/auth.rs
    32d2d02 Merge pull request 'Update Rust crate serde-saphyr to 0.0.18' (#324) from renovate/serde-saphyr-0.x into main
    ec55666 Update Rust crate serde-saphyr to 0.0.18
    550d108 Merge pull request 'Lock file maintenance' (#315) from renovate/lock-file-maintenance into main
    c241cc0 Lock file maintenance
    e89cb26 Merge pull request 'Update Rust crate hyper-util to v0.1.20' (#317) from renovate/hyper-util-0.x-lockfile into main
    d35ebbc Merge pull request 'Update Rust crate clap to v4.5.57' (#319) from renovate/clap-4.x-lockfile into main
    c5263a6 Merge pull request 'Update Rust crate regex to v1.12.3' (#320) from renovate/regex-1.x-lockfile into main
    51ce87d Merge pull request 'Update Rust crate git2 to v0.20.4 [SECURITY]' (#321) from renovate/crate-git2-vulnerability into main
    3c255c9 Merge pull request 'Update Rust crate time to v0.3.47' (#322) from renovate/time-0.x-lockfile into main
    4a657c7 Update Rust crate time to v0.3.47
    d738045 Update Rust crate git2 to v0.20.4 [SECURITY]
    d4b0bc5 Update Rust crate regex to v1.12.3
    3951672 Update Rust crate clap to v4.5.57
    4e8e556 Update Rust crate hyper-util to v0.1.20
    52034a3 Merge pull request 'Update Rust crate clap to v4.5.56' (#312) from renovate/clap-4.x-lockfile into main
    561ac42 Merge pull request 'Update Rust crate serde-saphyr to 0.0.17' (#314) from renovate/serde-saphyr-0.x into main
    f247c55 Update Rust crate clap to v4.5.56
    60048a2 Update Rust crate serde-saphyr to 0.0.17
    dbc0013 Merge pull request 'Update Rust crate ssh2-config to 0.7.0' (#313) from renovate/ssh2-config-0.x into main
    2514921 Update Rust crate ssh2-config to 0.7.0
    bafe23b Merge pull request 'Update Rust crate clap to v4.5.55' (#310) from renovate/clap-4.x-lockfile into main
    4e74797 Update Rust crate clap to v4.5.55
    921a824 Merge pull request 'Lock file maintenance' (#309) from renovate/lock-file-maintenance into main
    f8db175 Lock file maintenance
    4d3338f Merge pull request 'Update Rust crate uuid to v1.20.0' (#308) from renovate/uuid-1.x-lockfile into main
    88c0a58 Merge pull request 'Update Rust crate time to v0.3.46' (#307) from renovate/time-0.x-lockfile into main
    df53cae Update Rust crate uuid to v1.20.0
    77e76ac Update Rust crate time to v0.3.46
    f17b4bf Merge pull request 'Update Rust crate ssh2-config to 0.6.0' (#306) from renovate/ssh2-config-0.x into main
    f3eb32b Merge pull request 'Update Rust crate git2 to v0.20.3' (#293) from renovate/git2-0.x-lockfile into main
    0b90d63 Update Rust crate ssh2-config to 0.6.0
    614982b Merge pull request 'Replace debian Docker tag with data.forgejo.org/oci/debian 13' (#304) from renovate/debian-replacement into main
    226ef6f Replace debian Docker tag with data.forgejo.org/oci/debian 13
    c671a50 Merge pull request 'Update Rust crate open to v5.3.3' (#295) from renovate/open-5.x-lockfile into main
    bbe06ec Merge pull request 'Update Rust crate rand to v0.9.2' (#296) from renovate/rand-0.x-lockfile into main
    1bc1e2a Merge pull request 'Update Rust crate semver to v1.0.27' (#297) from renovate/semver-1.x-lockfile into main
    965e681 Merge pull request 'Update Rust crate serde_json to v1.0.149' (#301) from renovate/serde_json-1.x-lockfile into main
    bcde466 Merge pull request 'Update Rust crate serde-saphyr to 0.0.16' (#302) from renovate/serde-saphyr-0.x into main
    d167c95 Update Rust crate serde-saphyr to 0.0.16
    5f83345 Update Rust crate serde_json to v1.0.149
    10c1bbf Merge pull request 'Update Rust crate url to v2.5.8' (#298) from renovate/url-2.x-lockfile into main
    9a55806 Merge pull request 'Update Rust crate crossterm to 0.29.0' (#299) from renovate/crossterm-0.x into main
    43a29a7 Merge pull request 'Update Rust crate hyper to v1.8.1' (#300) from renovate/hyper-1.x-lockfile into main
    78dcd40 Merge pull request 'Update Rust crate hyper-util to v0.1.19' (#294) from renovate/hyper-util-0.x-lockfile into main
    0f4339d Update Rust crate hyper to v1.8.1
    a7d7625 Update Rust crate crossterm to 0.29.0
    d60f9ef Update Rust crate url to v2.5.8
    161e513 Update Rust crate semver to v1.0.27
    1e2ea69 Update Rust crate rand to v0.9.2
    c9253db Update Rust crate open to v5.3.3
    732ac06 Update Rust crate hyper-util to v0.1.19
    bdd76c8 Update Rust crate git2 to v0.20.3
    00d501b Merge pull request 'Update Rust crate uuid to v1.19.0' (#292) from renovate/uuid-1.x-lockfile into main
    14fbc12 Merge pull request 'Update Rust crate tokio to v1.49.0' (#291) from renovate/tokio-1.x-lockfile into main
    eae4c6b Merge pull request 'Update Rust crate base64ct to v1.8.3' (#290) from renovate/base64ct-1.x-lockfile into main
    a021a0a Merge pull request 'Update Rust crate time to v0.3.45' (#289) from renovate/time-0.x-lockfile into main
    e45eca6 Merge pull request 'Update Rust crate clap_complete to v4.5.65' (#288) from renovate/clap_complete-4.x-lockfile into main
    ff0929d Merge pull request 'Update Rust crate clap to v4.5.54' (#287) from renovate/clap-4.x-lockfile into main
    07320a9 Update Rust crate uuid to v1.19.0
    a0eebca Update Rust crate tokio to v1.49.0
    399313d Update Rust crate base64ct to v1.8.3
    576dff3 Update Rust crate time to v0.3.45
    5a38d5a Update Rust crate clap_complete to v4.5.65
    9fd642d Update Rust crate clap to v4.5.54
    7395f3e Merge pull request 'Update Rust crate auth-git2 to v0.5.8' (#285) from renovate/auth-git2-0.x-lockfile into main
    f898fda Merge pull request 'Update Rust crate cfg-if to v1.0.4' (#286) from renovate/cfg-if-1.x-lockfile into main
    7ae5240 Update Rust crate cfg-if to v1.0.4
    66645e9 Update Rust crate auth-git2 to v0.5.8
    b45c0a2 Merge pull request 'Update Rust crate tokio to v1.44.2 [SECURITY]' (#283) from renovate/crate-tokio-vulnerability into main
    22a05c7 Update Rust crate tokio to v1.44.2 [SECURITY]
    6651000 Merge pull request 'Configure Renovate' (#282) from renovate/configure into main
    08ef6fe chore(renovate): add Cyborus as reviewer
    ac0f446 Add .forgejo/renovate.json
    8202564 Merge pull request 'chore: improve no repo info error message' (#278) from lordmzte/repo-info-error-message into main
    accff33 chore: improve no repo info error message
    50fe254 Merge pull request 'chore: bump version to 0.4.0' (#277) from cyborus/bump-0.4.0 into main
    6718c94 chore: bump version to 0.4.0
    04d33d4 Merge pull request 'docs: redesign README' (#273) from cyborus/better-readme into main
    eb1dae3 Merge pull request 'build(dockerfile): use debian 13 as base' (#276) from cyborus/dockerfile-debian-13 into main
    e1b04e4 Merge pull request 'build(publish): update image url for publish-builds step' (#275) from cyborus/ci/publish-image-url into main
    57e9156 build(dockerfile): use debian 13 as base
    51a676a build(publish): update image url for publish-builds step
    1a05754 Merge pull request 'feat(login): support client ids in ~/.config on macos' (#274) from cyborus/config-dir-on-macos into main
    f6dac8d feat(login): support client ids in ~/.config on macos
    a4f00f8 docs: redesign README
    922bee2 Merge pull request 'feat(login): v14.next.forgejo.org' (#272) from cyborus/login/v14.next.forgejo.org into main
    b334e2e feat(login): v14.next.forgejo.org
    2d42f46 Merge pull request 'fix: strip repo name from detected ssh url' (#271) from cyborus/ssh-detection-strip-repo into main
    18773ee fix: strip repo name from detected ssh url
    8c90416 Merge pull request 'chore: update forgejo-api to v0.9.0' (#269) from cyborus/api-0.9.0 into main
    a4feee8 chore: update forgejo-api to v0.9.0
    75ad6c4 Merge pull request 'feat: issue & pr templates' (#261) from issue-templates into main
    3c6fbb5 Merge pull request 'fix(agit): autofill fails on empty commit body' (#267) from cyborus/agit-autofill-allow-empty-body into main
    8805d17 Merge pull request 'fix: fencepost error in repo_url_host_name' (#270) from cyborus/fix-repo-url-host-name into main
    3b01b26 fix: fencepost error in repo_url_host_name
    0f9f6ff Merge branch 'main' into issue-templates
    92ee507 fix(agit): autofill fails on empty commit body
    fad634c Merge pull request 'fix: strip repo from git remote url before alias deref' (#268) from cyborus/deref-alias-without-repo into main
    3876ddc Merge pull request 'feat: remove "agit-" prefix from agit topics' (#266) from cyborus/no-agit-prefix into main
    da1e3dd fix: strip repo from git remote url before alias deref
    146929e feat: remove "agit-" prefix from agit topics
    6ce8daf Merge pull request 'feat: implement search state all, fix help' (#265) from 0ko/help-2 into main
    85ea989 feat(issue): templates command
    8dca927 fix(template): use repo_get_issue_templates to check if templates are enabled
    ed7799b feat: implement search state all for issues and PRs
    5e8ef3f chore: fix issues help, document search default state
    3004907 refactor: simplify generate_from_template return type
    0682add Merge pull request 'feat: tag commands' (#262) from tag-commands into main
    e2626f1 refactor: only compile number regex once
    225fa05 feat: show commit message in tag view
    623d7f8 feat(template): support ref field
    d5c3f7f fix(template): support markdown templates without front matter
    e6c9e3c fix(template): validate numbers using regex
    093f0ef chore: use .first_child() instead of .children().next()
    f20e6fa docs: add comment explaining blank_issues_enabled
    2fe8657 Merge branch 'main' into issue-templates
    d333784 Merge pull request 'feat: support --autofill in agit prs' (#258) from cyborus/agit-agit-autofill into main
    3d8c3c5 feat: tag commands
    317b059 Merge pull request 'fix: incorrect hostname comparison in repo detection' (#259) from bad-hostname-comparison into main
    793bab2 Merge branch 'main' into issue-templates
    5ca7ac7 refactor: simplify issue/pr template code
    56c9a1b feat: pull request templates
    5658345 refactor: move issue template code into submodule
    2f11411 feat: report line in issue template form errors
    e45c561 fix: incorrect hostname comparison in repo detection
    d8c2b12 Merge pull request 'feat: --identity argument' (#255) from LordMZTE/forgejo-cli:ssh-id-flag into main
    f04e03f feat: support --autofill in agit prs
    f1d9011 feat: --identity argument
    8891eee Merge pull request 'chore(nix): update flake' (#256) from LordMZTE/forgejo-cli:nix-update into main
    7b429de chore(nix): update flake
    261330f Merge pull request 'fix: handle non-existant .ssh/config' (#254) from LordMZTE/forgejo-cli:optional-ssh-config into main
    272ebf2 fix: handle non-existant .ssh/config
    c928753 Merge pull request 'fix: improve host name consistency' (#250) from consistent-host-name into main
    ae99761 Merge pull request 'feat(pr,issue): submit comments from a file' (#252) from cljoly/comment-body-file into main
    d5a7df1 feat(pr,issue): submit comments from a file
    c56cd3f Merge pull request 'feat(issue): read body from file' (#251) from cljoly/issue-body-file into main
    bd3de3b fix: cosmetic improvements to comments
    cb79bf3 feat: read PR body from file (or stdin)
    2b276e4 refactor: move read from file to an external function
    82237b5 fix: use eyre::eyre! macro for error message building
    913dbeb feat(issue): read body from file
    4c06e4c refactor: replace Url::host_str with {repo_url_}host_name
    5d03660 fix: replace host_with_path[_and_port] with host_name
    4412a27 Merge pull request 'fix: sort commit statuses' (#247) from sort-status into main
    47e086f fix: sort commit statuses
    f7f6a06 feat: yaml-based issue templates
    04e8258 Merge pull request 'fix(pr): check ssh url when finding remote' (#245) from fix/pr-ssh-base-detection into main
    3ce170d fix(pr): check ssh url when finding remote
    3f25bed Merge pull request 'feat: SSH and GPG key commands' (#241) from LordMZTE/forgejo-cli:key-commands into main
    a4c92f2 feat: SSH and GPG key commands
    55f3645 Merge pull request 'chore: update forgejo-api to 0.8.0' (#242) from api-0.8.0 into main
    1c5f9eb chore: update forgejo-api to 0.8.0
    4e96641 Merge pull request 'build: add rustfmt to Nix dev shell' (#238) from nolan/forgejo-cli:nix-fixes into main
    ee3d7f1 build: add rustfmt to Nix dev shell
    4ae2b12 Merge pull request 'chore: fmt' (#237) from cyborus/agit-fmt into main
    2be0fac chore: format
    dfad912 Merge pull request 'feat!: standardize repository specification across all commands' (#236) from nolan/forgejo-cli:cli-consistency into main
    89bd8c8 feat!: standardize repository specification across all commands
    8fbacd3 feat: support markdown issue templates
    c66a0a8 Merge pull request 'feat: add page arg' (#235) from benmagill/forgejo-cli:page_arg into main
    968061c feat: add detail to output
    ea74fc8 feat: add page arg
    274b70d Merge pull request 'ci: improve release workflow' (#233) from ci-publish-improvements into main
    060c8fe style: rename deploy workflow to publish
    40535d6 style(ci): improve step names
    3ddaee2 build: use kaniko plugin instead of plain kaniko container
    1bc61d0 build: use alpine for zip step
    9000e57 build: publish linux build as .tar.gz instead of .gz
    68fcb89 fix(ci): remove unused client id secret
    f1aad61 Merge pull request 'Add manifest metadata to support cargo-binstall' (#231) from innocentzer0/forgejo-cli:main into main
    85db51d Update README with binstall instructions
    e93100d Add manifest metadata for cargo-binstall
    f79c3cf Merge pull request 'chore: update repo name' (#226) from update-repo-url into main
    c8fd407 chore: update repo name
    307e3ea Merge pull request 'feat: add --fill to pr create as an alias for --autofill' (#225) from autofill-alias-fill into main
    9214794 feat: add --fill to pr create as an alias for --autofill
    863adee Merge pull request 'feat: --autofill flag on pr create' (#223) from pr-autofill into main
    1c8bfde Merge pull request 'improve the look of issue/pr comments' (#224) from improve-comment-style into main
    1cc2101 design: improve the look of issue/pr comments
    e8c689e feat: --autofill flag on pr create
    a19193b Merge pull request 'don't compare schemes when checking if instances are the same' (#220) from fix-same-instance-detection into main
    f8619e2 fix: don't compare schemes when checking if instances are the same
    7c32bed Merge pull request 'use ssh_url_parse, not .parse::<Url>' (#219) from cyborus/agit-fix-wrong-parse into main
    2a0bed4 fix: use ssh_url_parse, not .parse::<Url>
    5db78c8 Merge pull request 'support more instances for oauth' (#215) from cyborus/agit-more-instances-2 into main
    45a4432 feat: add oauth support for more instances
    083dea2 Merge pull request 'Hardcode OAuth client IDs' (#214) from hardcode-client-ids into main
    22c58e5 feat: support more instances for oauth login
    223bdca feat!: hardcode oauth client ids
    1c941c5 fix: save keys file even when command results in error
    e4e5fda Merge pull request 'fix pr branch parsing' (#211) from fix-branch-parsing into main
    bcfb94c fix(pr create): parse the correct branch ref
    d45d42f fix: remote tracking branch parsing
    990ef21 Merge pull request 'Add installation note about Guix.' (#207) from gnutoo/main into main
    27acd8d Add installation note about Guix.
    837177a Merge pull request 'Updating readme.' (#188) from daniel-baumann/forgejo-cli:main into main
    64b38d0 Adding installation note about Debian and Ubuntu.
    940f0d3 Updating repo view example in usage for current forgejo-cli.
    5c970d6 Merge pull request 'chore(deps): disable unused comrak features' (#187) from tranzystorekk/forgejo-cli:comrak-disable-features into main
    70b4e6c chore(deps): disable unused comrak features
    ec440fd Merge pull request 'use code.forgejo.org as alias example instead of disroot' (#186) from change-alias-example into main
    aaf53f3 docs: use code.forgejo.org as alias example instead of disroot
    10e13a4 Merge pull request 'update client id var name in ci' (#185) from ci-oauth-var into main
    810ee06 ci: update client id var name
    49c4ea0 Merge pull request 'bump version to 0.3.0' (#184) from bump-0.3.0 into main
    3d50a40 chore: bump version to 0.3.0
    6b477c2 Merge pull request 'fix permissions for keys file' (#183) from keys-600 into main
    985a907 fix: 600 permission for keys file
    9268afc Merge pull request 'custom oauth client id support' (#182) from improve-oauth into main
    4cfca9e fix: validate builtin client ids more
    55f19a6 feat: custom oauth client ids
    1d8b1a7 Merge pull request 'chore: improve option descriptions' (#180) from 0ko/help into main
    fc92927 chore: improve option descriptions
    b7a9503 Merge pull request 'add ssh support' (#167) from ssh-support into main
    55a45a1 feat(pr): add ssh support to checkout
    5ec854e feat(auth): add command to use ssh by default for host
    3d4b1a1 Merge pull request 'Add Fedora installation instructions' (#166) from lih/forgejo-cli:main into main
    e2a75bf feat(repo): add ssh support for clone and create
    21b37e8 Add Fedora installation instructions
    569a4e2 Merge pull request 'update ci secret syntax' (#165) from fix-ci-secret into main
    5215cdd ci: update secret syntax
    6218b36 Merge pull request 'update dependencies' (#164) from update-deps into main
    39b0e03 chore(dep): update rand to 0.9.0
    da13e86 chore(dep): non-breaking updates
    3b3a47a chore(dep): update flake
    913a3b4 Merge pull request 'cargo fmt' (#163) from fmt into main
    6450450 style: fmt
    2247185 Merge pull request 'actions subcommand' (#162) from LordMZTE/forgejo-cli:actions into main
    cb5c0f1 fix(actions): print information output on more commands
    bcb36b4 fix(actions): secret create command cannot write secret to disk by invoking editor
    5d37d80 docs: use permalink to refer to task status in forgejo source
    0077e83 feat(actions): tasks subcommand takes --page argument
    823dbc5 chore(actions): Use nested match to dispatch subcommand
    4061363 feat(actions): dispatch command
    ecc0e64 feat(actions): secrets delete command
    defcaa1 feat(actions): secret create command
    5944cad chore(actions): list command shows workflow name before duration
    19ecad9 feat(actions): secrets list command
    cb2aef3 chore(actions): avoid needless clone in create_variable
    70f33ff feat(actions): variables delete command
    5ca3834 chore(actions): extract ActionVariable display logic to separate struct
    1eb4430 feat(actions): variables create command
    d000a1b feat(actions): list variables
    9bf656c feat(actions): better output format for actions tasks command
    23ccec8 feat: actions tasks command
    ecacb22 Merge pull request 'organization commands' (#160) from org-commands into main
    9f27434 docs(org): add help message to everything
    cecf250 feat(org): split edit and creation flags
    dc4578c unfeat(org): remove member list from team view
    fc3e9e9 feat(org): show page number and page count
    6e9850e feat(org): show member and team count in org view
    cdb9824 refactor(org): reorganize code
    3859981 feat(org): repo commands
    a869e93 feat(org): labels
    17a33c6 feat(org): membership visibility
    9f73fa7 feat(org): list members
    9b07958 feat(org): team member commands
    fe6d4b6 feat(org): removing repos from teams
    10dd2ac feat(org): adding repos to teams
    ae7bc8a feat(org): list team repos
    7a16cb7 feat(org): print "No results." when org list is empty
    d63821b feat(org): add --only-member-of to org list
    1a91ac8 fix: use proper pagination headers
    cb3a7e4 merge: branch 'main' into 'org-commands'
    0849e6f Merge pull request 'update forgejo-api to v0.7.0' (#158) from api-0.7.0 into main
    41546bf chore(dep): update forgejo-api to 0.7.0
    b82addc feat(org): team delete
    0d849cd feat(org): team edit
    9a960bf feat(org): list
    87286c3 feat(org): team view
    76f044b feat(org): move org name after command in team commands
    08e3668 feat(org): team create
    2726b89 feat(org): team list
    c57b371 feat(org): activity
    0708a5c feat(org): edit
    559308a feat(org): view
    9246071 feat(org): create
    4490815 chore: org commands boilerplate
    4605ea0 Merge pull request 'update forgejo-api to 0.6.0' (#157) from api-0.6.0 into main
    2a6b7ad chore(dep): update forgejo-api to 0.6.0
    a781d53 Merge pull request 'cargo fmt' (#156) from fmt into main
    18252ae style: cargo fmt
    cd35edc Merge pull request 'shell completions' (#155) from shell-completion into main
    8103a29 feat: shell completions
    3bc1c07 fix: remove argument ids with special characters
    a58080e Merge pull request 'always use Forgejo::with_user_agent' (#152) from user-agent-again into main
    1b3b032 fix: always use Forgejo::with_user_agent
    f51a709 Merge pull request 'fix missing env var in ci' (#151) from ci-fix-again into main
    1b20ecb fix(ci): missing env var
    b636bd4 Merge pull request 'update add-key args in ci' (#150) from ci-update-add-key into main
    3546499 ci: update add-key args
    9db33e3 Merge pull request 'add version --verbose' (#149) from verbose-version into main
    62f340c Merge pull request 'bump version in flake.nix to 0.2.0' (#148) from bump-flake-0.2.0 into main
    e99c2bf chore: update version in flake.nix to 0.2.0
    c77c42d Merge pull request 'bump version to 0.2.0' (#147) from bump-0.2.0 into main
    d3541e2 chore: bump version to 0.2.0
    f5ca7dc Merge pull request 'update forgejo-api' (#145) from update-api into main
    41cbec5 chore: update forgejo-api to 0.5.0
    6a592b3 feat: add --verbose flag to version command
    08e9fa2 Merge pull request 'use Repository::discover instead of open' (#144) from git-in-subdir into main
    822ff7b feat: use Repository::discover to open local repo
    b7a54fb Merge pull request 'fix: detaching when using browse' (#143) from dataCobra/forgejo-cli:detach into main
    fb9e3a6 fix: detaching when using browse
    23137cb Merge pull request 'add creating prs with agit' (#138) from cyborus/agit-main into main
    b658dbb Merge pull request 'fix ssh url parsing' (#141) from ssh-parse-mistake into main
    cf17761 fix: incorrect string slicing in ssh url parsing
    94c9349 chore: format
    b201206 feat: don't show empty base branch name
    6b3a98d feat: support agit prs in pr detection
    07436b5 feat: creating a pr with agit
    884778f Merge pull request 'move whoami and version into separate modules' (#137) from dataCobra/forgejo-cli:whoami into main
    68ec6a0 move version into a module
    81317e0 move whoami into a module
    bbcc33d Merge pull request 'add --web flag to issue create' (#136) from issue-create-web into main
    f377872 feat: add --web flag to issue create
    f67260e Merge pull request 'add user agent' (#135) from user-agent into main
    d9f93f0 feat: add user agent
    d961553 Merge pull request 'add repo readme' (#134) from repo-readme into main
    2eb6f73 feat: repo readme
    af11f1e Merge pull request 'add repo migrate' (#133) from migrate into main
    2c2b13e feat: repo migrate
    74c10f1 Merge pull request 'add pr status --wait' (#130) from status-wait into main
    e5b7a87 feat: pr status --wait
    c3fe6d5 Merge pull request 'add --web flag on pr create' (#129) from web-pr into main
    2af9bbb feat: --web flag on pr create
    3c33917 Merge pull request 'use None auth when not logged in' (#128) from public-access into main
    ce1ffa2 feat: allow accessing public info without logging in
    b7aa1e9 Merge pull request 'clean up urls better' (#126) from url-cleanup into main
    5abfa90 fix: make sure urls are http(s) and remove username
    74d3748 Merge pull request 'host aliases' (#125) from alias-host into main
    0e6ae39 feat: automatically add ssh url as alias if it is different
    7121e26 feat: add aliases to keys file
    f8650ab Merge pull request 'improve host name consistency' (#124) from host-consistency into main
    14e0b7d fix: consistency among host names
    23311d2 Merge pull request 'don't accept cannot-be-a-base urls in parsing' (#123) from not-base-fix into main
    e9f9687 fix: don't accept cannot-be-a-base urls in parsing
    e8e6d47 Merge pull request 'correctly parse ssh urls from git remotes' (#121) from ssh-remote-fix into main
    163e789 fix: correctly parse ssh urls from git remotes
    b7120d2 Merge pull request 'Squish clippy and audit errors/warnings' (#120) from Pi-Cla/forgejo-cli:fixes into main
    a979a34 Clippy Fixes
    e5eb3e4 Update Cargo.lock to openssl 0.10.66
    1281fb8 Merge pull request 'application settings page url should only be https' (#119) from app-url-fix into main
    d9256a6 fix: application settings page url should only be https
    fd6dd52 Merge pull request 'feat: add Nix flake' (#118) from LordMZTE/forgejo-cli:nix-flake into main
    4765746 docs: add Nix instructions to README
    bb536e9 feat: add Nix flake
    b3c242d Merge pull request 'bump version to 0.1.1' (#117) from bump-0.1.1 into main
    cbf588e chore: bump version to 0.1.1
    751730c Merge pull request 'fix: suggest correct add-key subcommand when no easy login available' (#116) from tranzystorekk/forgejo-cli:auth-typo into main
    7511d88 fix: suggest correct add-key subcommand when no easy login available
    d8bfaeb Merge pull request 'move repo commands into individual functions' (#115) from refactor-repo into main
    ed86e74 refactor: move repo commands into individual functions
    5f2f3ce Merge pull request 'fix install command in readme' (#114) from readme-install-fix into main
    6a6c8e3 docs: fix install command in readme
    dce6e09 Merge pull request 'split binary and package names' (#111) from fix-package-name into main
    daf086f fix: split binary and package names
    7cfa090 Merge pull request 'add package fields to Cargo.toml' (#110) from crates-io into main
    95c7f3e chore: add package fields to Cargo.toml
    2b25f0a Merge pull request 'bump version to 0.1.0' (#109) from bump-0.1.0 into main
    e1d360c Merge pull request 'fix ci build features flag' (#108) from ci-flag-fix into main
    d3b7e4d ci: --features flag, not --feature
    77400ab chore: bump version to v0.1.0
    4ac80ca Merge pull request 'add matrix chat link to readme' (#106) from matrix-link into main
    8e42e46 docs: add matrix chat link to readme
    96f72ee Merge pull request 'add wiki commands' (#105) from wiki into main
    09d9955 refactor: remove WikiCommand::no_repo_error
    13b7bf5 feat: wiki clone
    de144f2 feat: wiki browse
    a756d1d feat: wiki view
    296ac0c feat: wiki contents
    eadadf8 chore: wiki file
    3e334c7 Merge pull request 'update forgejo-api to v0.4.1' (#104) from api-0.4.1 into main
    288c0cb chore: update forgejo-api to v0.4.1
    da982e0 Merge pull request 'improve help/docs' (#102) from improve-help into main
    ca6d0d8 docs: document --remote
    72800f9 docs: document commands
    227a220 docs: better clap ids
    54fc89c Merge pull request 'update forgejo-api to v0.4.0' (#101) from api-0.4.0 into main
    67f09d8 chore(dep): update forgejo-api to v0.4.0
    0ca2a40 Merge pull request 'repo delete' (#99) from repo-delete into main
    efbefd7 feat: repo delete
    357dcee Merge pull request 'repo create should not take RepoArg for name argument' (#98) from repo-create-name-arg into main
    e77e978 fix: repo create should not take RepoArg for name argument
    121be52 Merge pull request 'update dependencies' (#96) from update-deps into main
    2f2a238 chore: update dependencies
    a835ec3 Merge pull request 'add branch guessing on pr creation' (#95) from pr-branch-guess into main
    af40eb3 feat!: add branch guessing on pr creation
    4a9c9b7 Merge pull request 'print message before reading in readline' (#92) from readline-fix into main
    45ad1d8 fix: print message before reading in readline
    23a345f Merge pull request 'prioritize remote tracking branch in repo detection' (#91) from remote-detect into main
    6fe22f5 fix: prioritize remote tracking branch in repo detection
    1003575 Merge pull request 'read detected pr from correct repo' (#90) from pr-repo-name-fix into main
    e8234b3 fix: read detected pr from correct repo
    0edf5ef Merge pull request 'fix pr detection' (#89) from pr-guess-fix-2 into main
    49b2088 fix: pr detection from branch
    43765c7 Merge pull request 'add pr status' (#88) from pr-status into main
    6c6c07b feat(pr): status command
    d0df1b3 Merge pull request 'update forgejo-api to 0.3.2' (#87) from api-0.3.2 into main
    f3f1f2d chore: update forgejo-api to 0.3.2
    88d5356 Merge pull request 'repo fork command' (#83) from fork into main
    346b7ed feat(repo): fork command
    fd829a5 refactor: RepoArg struct for repo name arguments
    61f5131 Merge pull request 'add user commands' (#86) from user-commands into main
    2466b89 feat(user): listing activities
    5313777 feat(user): editing settings
    38da0e6 feat(user): user search
    2aa4b15 feat(user): list user orgs
    ed4bed4 feat(user): list user repos
    ccf1688 feat(user): blocking and unblocking
    8a34e86 feat(user): following commands
    3a00896 feat(user): user view and user browse
    839a63b chore: user.rs file
    ebcc8b8 Merge pull request 'update forgejo-api to 0.3.0' (#85) from api-0.3.1 into main
    9458c77 chore: update forgejo-api to 0.3.1
    883a201 Merge pull request 'improve look of issues' (#84) from issue-pr-parity into main
    6b78a23 feat(display): bring issue printing to visual parity with PR printing
    02e2747 Merge pull request 'add FJ_FALLBACK_HOST env var' (#82) from host-fallback into main
    9eca2b5 feat: FJ_FALLBACK_HOST
    e68408e Merge pull request 'enable update checking in CI builds' (#81) from deploy-feature into main
    35f0912 chore: enable update-check feature in CI builds
    8dadac2 Merge pull request 'add version command and update checker' (#80) from version into main
    1eaeec7 feat: version command and update checker
    a0bab97 Merge pull request 'fix trailing paragraph newlines in markdown rendering' (#79) from trailing-newline-fix into main
    d060a73 fix(markdown): trailing paragraph newlines
    7a2d622 Merge pull request 'add more success messages' (#78) from success-msg into main
    a0c250f Merge pull request 'fix warnings' (#76) from warnings into main
    56f0e8b add more success messages
    09af9b3 fix warnings
    d10b517 Merge pull request 'print markdown text nicely' (#75) from pretty-text into main
    5a8626c fix first line of blockquote being grey
    45e3565 skip markdown handling for non-fancy output
    8bd72dd nicer markdown printing
    ed58e07 Merge pull request 'guess pr number from commit' (#74) from guess-pr into main
    a0188d9 pr browse opens current pr instead of pr list
    c9ddd94 guess pr number from commit
    9725bb6 Merge pull request 'add fj auth login' (#71) from oauth-login into main
    490a156 include codeberg oauth client info in CI builds
    349c6ad rename LoginInfo::Token to Application
    3ff6a86 implement fj auth login
    c47a24a add oauth token support to keys file
    98a82d0 update to forgejo-api v0.3.0
    aee8b4b Merge pull request 'pull request messages' (#72) from pr-message into main
    9001779 pull request merge messages
    2b9b64d Merge pull request 'improve specifying repo in issue and pr commands' (#70) from simplify-repo-specify into main
    619a17a improve specifying repo in issue and pr commands
    c30f7ad Merge pull request 'authenticate properly in repo clone' (#66) from auth-repo-clone into main
    956415b authenticate properly in repo clone
    b93717a Merge pull request 'add repo clone' (#65) from repo-clone into main
    b262d31 add repo clone
    b168dce Merge pull request 'rename repo info to repo view' (#64) from info-view into main
    20669bf rename repo info to repo view
    5e16810 Merge pull request 'remove outdated comment' (#63) from remove-comment into main
    89b0a2b remove outdated comment
    d7b84de Merge pull request 'fix repo create --push' (#62) from fix-push into main
    85c7d52 Merge pull request 'add repo star and repo unstar' (#61) from star into main
    3a47d94 fix repo create --push
    6687c9e add repo star and repo unstar
    a259a44 Merge pull request 'don't check ignored files when checking for uncommitted changes' (#59) from ignore-ignored into main
    df14392 Merge pull request 'fix pr-browse opening issues list' (#60) from browse-pr-fix into main
    3f212ba fix pr browse opening issues page
    b2eec65 don't check ignored files when checking for uncommitted changes
    85ee804 Merge pull request 'enumerate remotes before checking remote tracking branch' (#57) from adjust-remote-guess into main
    3dec5f9 enumerate remotes before checking remote tracking branch
    8465a4a Merge pull request 'trim title before checks' (#56) from trim-title into main
    142cb36 trim title before checks
    32babc3 Merge pull request 'add pull request commands' (#52) from pr into main
    9c65606 reorder pr commands
    1a839e2 add doc comment to pr::ViewCommand::Commits
    349855e add pr edit _ labels
    7214852 add doc comments to pr commands
    2f9c1a0 add pr view _ labels
    10a36f7 authenticate when fetching pull request
    b42a3c2 make pr view prettier
    9df8f68 add pr checkout
    b425f2b use fancy display in pr viewing
    3583943 display changed lines in pr view
    6fd1976 add pr change viewing commands
    460ac72 add pr commands
    0a30d14 Merge pull request 'add optional fancy output' (#53) from optional-pretty into main
    5ea7cdb add optional fancy output
    4ecb241 guess host from remote tracking branch before enumerating remotes
    a002adc Merge pull request 'cargo update' (#51) from cargo-update into main
    32f9743 cargo update
    a2ae51d Merge pull request 'update to forgejo-api v0.2.0' (#49) from api-0.2.0 into main
    df25728 update to forgejo-api v0.2.0
    36d970f Merge pull request 'use crates.io release of forgejo-api' (#48) from crates-io-api into main
    9e5c205 use crates.io release of forgejo-api
    cbf04f9 Merge pull request 'rename fj user to fj whoami' (#47) from whoami into main
    4ac90b6 rename fj user to fj whoami
    4061f79 Merge pull request 'don't print url scheme in fj user' (#46) from user-no-scheme into main
    5e59305 don't print url scheme in fj user
    a816b88 Merge pull request 'bump version to v0.0.4' (#45) from bump-0.0.4 into main
    c028348 bump version to v0.0.4
    b3db65d Merge pull request 'fix arch typo in readme' (#44) from arch-typo into main
    eb7c1f5 fix arch typo in readme
    1edb769 Merge pull request 'improve readme' (#43) from improve-readme into main
    6f8c924 improve readme
    24ab090 Merge pull request 'run ci build on tag rather than deploy' (#41) from tag-build into main
    6136e1f Merge pull request 'add proper readout for repo info' (#40) from repo-info into main
    88b801a run ci build on tag rather than deploy
    2587bf9 format
    6c08c8a add proper readout for repo info
    7fca58f Merge pull request 'update forgejo-api' (#39) from update-api into main
    38679ad update forgejo-api
    ed7f84e Merge pull request 'improve host url and repo name detection' (#38) from improve-host-detection into main
    c272e9f format
    46cd32e improve host url and repo name detection
    a014a4e Merge pull request 'update to new version of forgejo-api' (#37) from update-api into main
    6cbd80e update to new version of forgejo-api
    4c42632 Merge pull request 'update forgejo-api' (#36) from update-api into main
    68ae2c1 update forgejo-api
    9573940 Merge pull request 'update forgejo-api' (#35) from update-api into main
    b85b939 update forgejo-api
    bbe5536 Merge pull request 'fix key including newline when read from stdin' (#34) from trim-token into main
    43773f1 fix key including newline when read from stdin
    700b8ed Merge pull request 'fix attachment filename' (#30) from attach-fix into main
    8bef41e fix attachment filename
    1bfaec6 Merge pull request 'install certificates in Dockerfile' (#29) from container-certs into main
    7fc7a20 install certificates in Dockerfile
    e69590d Merge pull request '[ci] set FORGE_HOST env var in release step' (#28) from ci-fix into main
    f326e93 [ci] set FORGE_HOST env var in release step
    41035c1 Merge pull request 'forgejo instance agnostic deployment' (#27) from agnostic into main
    444def4 forgejo instance agnostic deployment
    84d5b8d Merge pull request 'fix adding token in ci' (#26) from ci-fix into main
    6ae35a3 fix adding token in ci
    23187f4 Merge pull request 'set repo url when creating release' (#24) from url-remote-ci into main
    f2bb74b use long form flag
    ce62142 set repo url when creating release
    f57dceb Merge pull request 'allow url as remote' (#23) from url-remote into main
    eebf27d allow url as remote
    0d22400 Merge pull request 'do apt update' (#22) from mingw-gcc into main
    07d0a30 do apt update
    99686e8 Merge pull request 'add -y flag' (#21) from mingw-gcc into main
    410c887 add -y flag
    4d8a22c Merge pull request 'install mingw gcc in ci' (#20) from mingw-gcc into main
    20834b7 install mingw gcc
    01a8228 Merge pull request 'update forgejo-api to not use rustls' (#19) from no-rustls into main
    7020f6e update forgejo-api to not use rustls
    2d50075 Merge pull request 'update version number to 0.0.1' (#18) from version-0.0.1 into main
    83e11e4 update version number to 0.0.1
    2a167c3 Merge pull request 'add deployment ci pipeline' (#17) from deploy-ci into main
    8010898 remove versioned container push for now
    4375e9b add deployment pipeline
    086420f Merge pull request 'add dockerfile' (#16) from dockerfile into main
    cce460e install libssl-dev
    eb7058a add dockerfile
    3844a31 Merge pull request 'format' (#15) from fmt into main
    71a63b2 format
    b643936 Merge pull request 'update forgejo-api to version that uses rustls' (#14) from rustls into main
    b842cbc update forgejo-api to version that uses rustls
    358125b Merge pull request 'add release commands' (#13) from releases into main
    a39201f add release commands
    e532aac Merge pull request 'add system for editor-specific flags' (#12) from editor-flags into main
    33367ed fmt
    4a9f524 add system for editor-specific flags
    c4810e3 Merge pull request 'add git remote selection flag' (#10) from select-remote into main
    1f8824d Merge pull request 'add issue search' (#9) from search-issues into main
    87bb4d7 format
    e365cd3 format
    1a9353c add issue search
    68d255d add git remote selection flag
    98e3cce Merge pull request 'add ci' (#8) from ci into main
    5dd4dbb format
    7b63ecd add ci
    ae38211 Merge pull request 'add basic issue commands' (#7) from issues into main
    d8c04f6 add basic issue commands
    be7136b Merge pull request 'fix repo creation pushing' (#6) from push-fix into main
    3a62e2d fix repo create push
    cb0a7d1 set private flag to -P instead of -p to not conflict with push flag
    1c78830 Merge pull request 'add licensing' (#5) from license into main
    e47c58e add licensing
    e18ef78 Merge pull request 'don't look for remote if it obviously won't be there' (#4) from fix-find-remote into main
    8b6a5a6 don't look for remote if it obviously won't be there
    337c575 Merge pull request 'decouple repository info from login info' (#3) from decouple-repo-keys into main
    5999e1e format
    7fc2bf7 fix url issues
    51b180d decouple repo info from key info
    66dd709 fmt
    1a7f0de Merge pull request 'improve organization' (#2) from organize into main
    7a525a5 improve organization
    20514e8 Merge pull request 'move forgejo-api to its own repo' (#1) from api-repo into main
    90084b9 move forgejo-api to its own repo
    af89252 Merge pull request 'praise rustfmt' (#10) from fmt into main
    b569329 praise rustfmt
    9a37f3b Merge pull request 'rework key lookup' (#9) from rework-key-lookup into main
    3dbbcb7 rework key lookup
    7b5dcb8 Merge pull request 'missed a bit in the key file move' (#8) from keys-file into main
    d7b4f64 missed a bit
    f87c12a Merge pull request 'move keys info to new file' (#7) from keys-file into main
    82a53c7 move keys info to new file
    be2f72e fix pushing
    c1806f5 Replace calls to git with git2 crate (#5)
    2c30803 remove unnecessary mut
    ab393f4 better api error
    59a0460 choose upstream name in repo create
    d3fe409 add repo browse
    22aad20 fix push flag
    6b2f762 initial commit

    Downloads
  • v0.7.0 04665ddc9e

    v0.7.0
    Some checks failed
    Build binary (Windows) / Build and publish fj binary (Windows x86_64) (push) Failing after 18s
    Check / fmt + clippy + build + tests (push) Successful in 48s
    Build binary (Linux) / Build and publish fj binary (Linux x86_64) (push) Successful in 1m8s
    Stable

    David released this 2026-05-29 00:54:43 +02:00 | 64 commits to main since this release

    Changelog

    04665dd Merge pull request 'Release v0.7.0' (#24) from release/v0.7.0 into main
    82f706e Release v0.7.0
    1dcdfef Merge pull request 'ci(release): decouple latest/release publish trains and add dry-run (FJ-24)' (#23) from ci/decouple-publish-trains-dry-run-fj-24 into main
    d678fdf ci(release): decouple latest/release publish trains and add dry-run (FJ-24)
    fe3fc35 Merge pull request 'feat(fj): global --format/--json output flag and JSON for all commands (FJ-23)' (#22) from feat/global-output-format-fj-23 into main
    5d2b777 feat(fj): add global --format/--json flag and emit JSON for all commands (FJ-23)
    0ac836d Merge pull request 'fix(prs): add --json output and fix relative-URL crash (FJ-2)' (#21) from fix/pr-status-json-relative-url into main
    dd33e33 Merge main into fix/pr-status-json-relative-url (FJ-2)
    887c133 Merge pull request 'chore(release): bump library crates in lockstep with binary (FJ-20)' (#19) from chore/create-release-bump-libs-lockstep-fj-20 into main
    f1e1e4c Merge pull request 'ci(release): sync Cargo.lock in create-release and gate CI on --locked (FJ-21)' (#20) from ci/create-release-cargo-lock-fj-21 into chore/create-release-bump-libs-lockstep-fj-20
    28ee30d ci(release): sync Cargo.lock in create-release and gate normal CI on --locked
    4d805cb chore(release): bump library crates in lockstep with binary (FJ-20)
    ebc31ce Merge pull request 'docs(readme): document crate layout and parsing-vs-rendering boundary (FJ-19)' (#18) from docs/document-crate-layout-parsing-rendering-boundary-fj-19 into main
    faf6b7b docs(readme): document crate layout and parsing-vs-rendering boundary
    0dba47d Merge pull request 'docs(workspace): document crate split + MCP-reuse contract (FJ-9)' (#17) from docs/verify-cli-free-document-layout-fj-9 into main
    94534e9 docs(workspace): document crate split + MCP-reuse contract (FJ-9)
    c377593 Merge pull request 'Release v0.6.0' (#16) from release/v0.6.0 into main
    56f7c8a Release v0.6.0
    5aef1f2 Merge pull request 'chore(metadata): point package metadata at fork (FJ-17)' (#15) from chore/repoint-package-metadata-fork-fj-17 into main
    8d05a1a Merge branch 'main' into chore/repoint-package-metadata-fork-fj-17
    bf95620 Merge pull request 'refactor(core): migrate issues/prs/org API logic into fj-core (FJ-12)' (#14) from refactor/migrate-complex-areas-fj-12 into main
    5a2e6be Merge branch 'main' into refactor/migrate-complex-areas-fj-12
    508bd68 chore(metadata): repoint package metadata at fork (FJ-17)
    5d758b6 refactor(core): migrate issues/prs/org API logic into fj-core (FJ-12)
    fbc1a9d Merge pull request 'feat(version): train-aware update check baked into the binary (FJ-15)' (#13) from feat/version-train-aware-check-fj-15 into main
    d92a2bd feat(version): train-aware update check baked into the binary (FJ-15)
    8a762b4 Merge pull request 'fix(version): point update check at fork, ship --check in releases (FJ-14)' (#12) from chore/update-check-target-fork-fj-14 into main
    652b990 Merge branch 'main' into chore/update-check-target-fork-fj-14
    f475613 Merge pull request 'chore: commit repo hygiene (gitignore, JetBrains files, README) (FJ-16)' (#10) from chore/repo-hygiene-fj-16 into main
    0d0e057 fix(version): point update check at fork, ship --check in releases (FJ-14)
    e4a3bfc Merge branch 'main' into chore/repo-hygiene-fj-16
    8850db4 Merge pull request 'chore: migrate repo/release/user/actions into fj-core ops (FJ-11)' (#11) from chore/migrate-medium-areas-fj-11 into main
    0bb2a89 chore: migrate repo/release/user/actions into fj-core ops (FJ-11)
    f6ecbd6 docs: align README with the a8n.run fork (FJ-16)
    9b98dfc chore: expand .gitignore and track JetBrains project files (FJ-16)
    ac743d3 Merge pull request 'chore: migrate tag/wiki API calls into fj-core ops (FJ-10)' (#9) from chore/migrate-simple-areas-fj-10 into main
    2eb8609 chore: migrate tag/wiki API calls into fj-core ops (FJ-10)
    237aadc Merge pull request 'chore: extract fj-core shared types + issue-template parsing (FJ-7)' (#8) from chore/extract-fj-core-fj-7 into main
    8d1e5a2 chore: extract fj-core shared types + issue-template parsing (FJ-7)
    eeeca80 Merge pull request 'chore(lint): clear clippy -D warnings across fj binary (FJ-13)' (#7) from chore/clippy-clean-fj-13 into main
    efb1ab7 chore(lint): clear clippy -D warnings across fj binary (FJ-13)
    4083f60 Merge pull request 'chore: extract fj-client (keys, client, URL/SSH resolution) (FJ-6)' (#6) from chore/extract-fj-client-fj-6 into main
    7887a71 chore: extract fj-client (keys, client, URL/SSH resolution) (FJ-6)
    c3f464d Merge pull request 'chore: convert to a Cargo workspace (fj, fj-client, fj-core) (FJ-5)' (#5) from chore/cargo-workspace-fj-5 into main
    fc4c342 chore: convert to a Cargo workspace (fj, fj-client, fj-core) (FJ-5)
    0c4e179 Merge pull request 'chore(main): strip anti-AI refusal-trigger comment (FJ-4)' (#4) from chore/strip-anti-ai-comment-fj-4 into main
    b944136 chore(main): strip anti-AI refusal-trigger comment (FJ-4)
    4294bff Merge pull request 'chore: adopt NiceGuyIT governance build/CI standards' (#3) from chore/governance-conformance into main
    266b53d chore: adopt NiceGuyIT governance build/CI standards
    53b4fae Merge pull request 'fix(pr): json output for pr status, fix relative-url crash (FJ-2)' (#2) from feat/pr-status-json-relative-url-fix into main
    a896a8d Merge branch 'main' into feat/pr-status-json-relative-url-fix
    2ea6507 fix(pr): json output for pr status, fix relative-url crash (FJ-2)
    7aa32dc Merge pull request 'feat(pr): add --json output to pr search (FJ-1)' (#1) from feat/pr-search-json into main
    eb2492b feat(pr): add --json output to pr search (FJ-1)
    cabf3fb docs: mark as fork, attribute upstream, state AI policy rationale
    c67fe84 fix(prs): add --json output and fix relative-URL crash (FJ-2)
    34d5cff Merge pull request 'l10n: enable zh-Hans locale' (#472) from cyborus/locale/zh-Hans into main
    5f49a67 l10n: enable zh-Hans locale
    67c0ccc Merge pull request 'Translations update from Codeberg Translate' (#465) from translate/forgejo-cli:weblate-forgejo-cli-forgejo-cli into main
    1c067e3 Translated using Weblate (Chinese (Simplified Han script))
    745ffaf Added translation using Weblate (Chinese (Simplified Han script))
    bea4979 Translated using Weblate (Italian)
    ff0b5c8 Translated using Weblate (Russian)
    1fe6c2b Added translation using Weblate (Italian)
    1807115 Translated using Weblate (Toki Pona)
    8d7ea8e Translated using Weblate (Toki Pona)
    548e2b1 Added translation using Weblate (Toki Pona)
    20489a0 Translated using Weblate (Polish)
    103ef53 Added translation using Weblate (Polish)
    6319482 Deleted translation using Weblate (Toki Pona)
    2be0432 Added translation using Weblate (Toki Pona)
    c5e1806 Translated using Weblate (Russian)
    13a7223 Added translation using Weblate (Russian)
    4532e02 Translated using Weblate (German)
    da3fc2a Merge pull request 'Update Rust crate serde_json to v1.0.150' (#470) from renovate/serde_json-1.x-lockfile into main
    449265b Update Rust crate serde_json to v1.0.150
    fe988a5 Merge pull request 'fix typo' (#469) from efraim/fix-typo into main
    e3ad8f2 fix typo
    5c67478 Merge pull request 'Update Rust crate git2 to 0.21.0' (#467) from renovate/git2-0.x into main
    ff9e70c chore: update auth-git2 to 0.6.0
    d53ac46 Update Rust crate git2 to 0.21.0
    ebfe5d1 Merge pull request 'German locale' (#464) from LordMZTE/forgejo-cli:de-locale into main
    594c935 feat: German locale
    0b0cbe2 Merge pull request 'feat: localization' (#279) from localization into main
    3cb0bee chore(typos): exclude locales from spell check
    66f164d fix(l10n): bad en-US messages
    43fcd4a Merge pull request 'Resolve ssh host names with ssh config' (#462) from tpikonen/forgejo-cli:resolve-ssh-host into main
    0796529 fix: Use get_ssh_config() to access ssh config
    1df2ad5 fix: Resolve ssh host using ssh config
    49d1f75 Merge pull request 'Lock file maintenance' (#463) from renovate/lock-file-maintenance into main
    1511f2a Lock file maintenance
    8b2dcf4 refactor: .filter_map().next() -> .find_map()
    9942283 fix(ftl): minor fixes
    0f61c26 fix(l10n): don't print message id on empty prompt message
    13fa2c8 fix(l10n): panic on invalid user prompt message
    89b3276 refactor: better panic message in OffsetDateTime::ftl
    e13e091 refactor(fluent): simpler IS_MINIMAL body
    132fb25 fix(fluent): stricter argument validation
    57346f0 fix(ftl): variable interpolation syntax
    1c1228e fix: remove unreachable from auth::auth_server
    3ad20eb feat: passthrough write_fmt on WriterCompat
    5183b94 refactor: impl AsFluent for bool
    ac9bbb9 chore: remove obsolete comment
    b7192ce fix(string): consistent pluralization in org-create-invalid_character
    8284247 refactor: allow trailing comma in ftl_* macros
    2b6671d build: rerun if localization is changed
    5640d3d build: display ftl errors as errors instead of warnings
    cac402d fix(string): bool colors in user-gpg-list-*
    c60f3ec refactor: remove build-dependency on glob
    ade375d Merge pull request 'Lock file maintenance' (#459) from renovate/lock-file-maintenance into main
    3582a7a Lock file maintenance
    bc9fd14 Merge pull request 'Update Rust crate open to v5.3.5' (#461) from renovate/open-5.x-lockfile into main
    2a1d3ca Merge pull request 'Update Rust crate clap_complete to v4.6.5' (#458) from renovate/clap_complete-4.x-lockfile into main
    930a4e2 Merge pull request 'Update Rust crate tokio to v1.52.3' (#456) from renovate/tokio-1.x-lockfile into main
    3526e0b chore: remove eyre from build-dependencies
    cfc80f5 feat(l10n): don't localize in non-tty environments
    14be862 fix(l10n): proper pluralization in actions-dispatch-success
    714f55b refactor: more robust language detection
    f54bd3a chore: remove tok localization
    e3527ca refactor: rename IS_NONE to OPT
    e7eeefa feat(l10n): localize repo
    65d75f6 refactor: don't user duplicate attributes in prompts
    63d0bf4 chore: fix warnings
    1ca1bf7 feat(l10n): localize user
    6ca7b5d feat(l10n): localize pr
    dd23ea2 feat(l10n): localize issue
    a1fa785 feat(l10n): localize wiki
    81a1685 feat(l10n): localize version
    0bb6220 feat(l10n): localize tag
    a23c814 feat(l10n): localize release
    42cb3c6 feat(l10n): localize org
    7af0a8e feat(l10n): localize readline and prompt_bool
    d70f398 feat(fluent): add styling functions
    9e57c31 delete: fluent tests
    2ce9d69 build: check fluent file validity in build.rs
    cc60549 feat(l10n): localize actions
    e98997b refactor(ftl): allow self-named args
    f22166d refactor: allow expr in ftl id position
    5ec9cb2 refactor: pretty-print ftl errors
    37b4c24 feat(l10n): localize auth
    84230cf feat(l10n): localize whoami
    d58148d test(fluent): placeables in macros
    d3243b7 Update Rust crate open to v5.3.5
    a4a8d15 Update Rust crate clap_complete to v4.6.5
    66d9b23 Update Rust crate tokio to v1.52.3
    0b2f707 chore: fmt
    53d67b6 refactor: move localization tests into integration tests
    5d31715 feat: setup localization framework
    be36660 Merge pull request 'feat(pr-reviews): New pr reviews command with -c flag for inline comments' (#429) from muller-md/forgejo-cli:get-inline-comments into main
    35c760a Merge pull request 'Update Rust crate tokio to v1.52.2' (#454) from renovate/tokio-1.x-lockfile into main
    f364cca Merge pull request 'Update Rust crate serde-saphyr to 0.0.26' (#453) from renovate/serde-saphyr-0.x into main
    d7ed2c1 Merge pull request 'Lock file maintenance' (#450) from renovate/lock-file-maintenance into main
    4e849a5 Update Rust crate tokio to v1.52.2
    e4dd36f Update Rust crate serde-saphyr to 0.0.26
    9d630f3 feat(pr-reviews): Add command to view pull request reviews
    8c98a7a Lock file maintenance
    548f29c Merge pull request 'Restricted file permissions at creation time' (#449) from skdishansachin/forgejo-cli:improve-file-creation into main
    72cb79e style: fix the code formatting
    a3ce4dc refactor: simplify the file permissions to 0600 on Unix
    bf10bd5 refactor: simplify the file creation with permissions
    b5da7f6 fix: restrict keys.json permissions at creation time
    117c4a7 fix: restrict file permissions to 0600 on Unix
    be1893e Merge pull request 'Lock file maintenance' (#441) from renovate/lock-file-maintenance into main
    7b45e27 Merge pull request 'Update Rust crate clap_complete to v4.6.3' (#442) from renovate/clap_complete-4.x-lockfile into main
    ae4eac8 Merge pull request 'Update Rust crate ssh2-config to v0.7.1' (#440) from renovate/ssh2-config-0.x-lockfile into main
    e632f9e Merge pull request 'Update Rust crate serde-saphyr to 0.0.25' (#438) from renovate/serde-saphyr-0.x into main
    0a06721 Merge pull request 'docs: add oneline helptext to 'repo migrate' command' (#443) from moutons/forgejo-cli:docs/add-migrate-oneline into main
    92c163a docs: add oneline helptext to 'repo migrate' command
    110e75e Update Rust crate clap_complete to v4.6.3
    c649e3f Update Rust crate ssh2-config to v0.7.1
    d35a586 Update Rust crate serde-saphyr to 0.0.25
    4f1a8c3 Merge pull request 'fix(activity): parse issue content field as json' (#437) from cyborus/activity-issue-fix into main
    447091d refactor(activity): use repo_name for all repo name locations
    d5ab501 fix(activity): parse issue content field as json
    3f7bda3 Lock file maintenance
    98b5d4a Merge pull request 'Lock file maintenance' (#432) from renovate/lock-file-maintenance into main
    8106037 Merge pull request 'Update Rust crate open to v5.3.4' (#431) from renovate/open-5.x-lockfile into main
    04dfd01 Merge pull request 'Update Rust crate serde-saphyr to 0.0.24' (#436) from renovate/serde-saphyr-0.x into main
    df34add Update Rust crate serde-saphyr to 0.0.24
    e6ce331 Lock file maintenance
    3dd05a1 Update Rust crate open to v5.3.4
    ded7801 Merge pull request 'ci: add typos check' (#430) from cyborus/typos into main
    36a30e0 fix: typos
    1de8bfd ci: add typos check
    04696e0 Merge pull request 'Update Rust crate tokio to v1.52.1' (#428) from renovate/tokio-1.x-lockfile into main
    c6ff1e1 Update Rust crate tokio to v1.52.1
    04c50ce Merge pull request 'chore: bump version to 0.5.0' (#427) from cyborus/bump-0.5.0 into main
    e53311b chore: bump version to 0.5.0
    ef5b6b4 Merge pull request 'fix(binstall): target-arch not target_arch' (#426) from cyborus/binstall-fix into main
    a295c7e fix(binstall): target-arch not target_arch
    682d1a9 Merge pull request 'build: use trixie tag for debian image' (#425) from cyborus/dockerfile-debian-trixie into main
    cb46e0f build: use trixie tag for debian image
    5eefc0b Merge pull request 'docs(readme): mention aarch64 build in "Installation" section' (#424) from cyborus/readme-aarch64 into main
    af7b55a docs(readme): mention aarch64 build in "Installation" section
    ebd9776 Merge pull request 'feat: add warning about git push --force on agit prs' (#420) from cyborus/agit-force-push-warning into main
    ae78246 Merge pull request 'feat: show warning on archived repos' (#419) from cyborus/archived-repos into main
    a862688 Merge pull request 'Lock file maintenance' (#423) from renovate/lock-file-maintenance into main
    ad01c7b Merge pull request 'Update Rust crate forgejo-api to 0.10.0' (#422) from renovate/forgejo-api-0.x into main
    183caf0 Merge pull request 'Update Rust crate uuid to v1.23.1' (#421) from renovate/uuid-1.x-lockfile into main
    f474338 chore: add query parameter to list_action_tasks
    5c8e221 Lock file maintenance
    15e9fb2 Update Rust crate forgejo-api to 0.10.0
    f897e77 Update Rust crate uuid to v1.23.1
    d195b9e feat: add warning about git push --force on agit prs
    e040613 feat: show warning on archived repos
    3de1859 Merge pull request 'feat: assigning issues' (#414) from cyborus/assigning-issues into main
    8b82c17 feat: add pr assign & pr unassign
    60fb29a Merge pull request 'fix(oauth): save new token immediately after refreshing' (#417) from cyborus/oauth-save-refresh-immediately into main
    2cff956 Merge pull request 'feat: support all casings of README' (#415) from cyborus/caseless-readme into main
    9822f1b Merge pull request 'feat: allow setting owner for migrated repo' (#416) from cyborus/migration-owner into main
    1364f0f Update Rust crate clap to v4.6.1 (#418)
    da4fefe Update Rust crate clap to v4.6.1
    1d455ac refactor: move keys.save() out of main
    e0e1d04 fix(oauth): save new token immediately after refreshing
    b075f78 feat: allow setting owner for migrated repo
    6eec300 feat: support all casings of README
    ba50965 feat: add issue assign & issue unassign
    6344b3d Merge pull request 'Update Rust crate tokio to v1.52.0' (#413) from renovate/tokio-1.x-lockfile into main
    733b881 Update Rust crate tokio to v1.52.0
    abe822b Merge pull request 'Update Rust crate clap_complete to v4.6.2' (#412) from renovate/clap_complete-4.x-lockfile into main
    ab70ebf Update Rust crate clap_complete to v4.6.2
    77ff9ff Merge pull request 'Lock file maintenance' (#410) from renovate/lock-file-maintenance into main
    347284a Lock file maintenance
    05b8423 Merge pull request 'Update Rust crate clap_complete to v4.6.1' (#408) from renovate/clap_complete-4.x-lockfile into main
    702348c Merge pull request 'Update Rust crate rand to v0.10.1 [SECURITY]' (#409) from renovate/crate-rand-vulnerability into main
    e10940c Update Rust crate rand to v0.10.1 [SECURITY]
    7db9b13 Update Rust crate clap_complete to v4.6.1
    3a6de90 Merge pull request 'fix(oauth): detach opened browser' (#407) from cyborus/detach-browser-open into main
    1514dc7 fix(oauth): detach opened browser
    ebacef8 Merge pull request 'build: aarch64 support' (#403) from cyborus/aarch64 into main
    58493d0 Merge pull request 'docs: add badges to readme' (#404) from cyborus/readme-badges into main
    747dcba docs: add badges to readme
    834bd30 Merge pull request 'repo edit & repo units commands' (#349) from LordMZTE/forgejo-cli:repo-edit into main
    4132bf9 build(publish): add aarch64-linux build
    4c934da Merge pull request 'Update Rust crate tokio to v1.51.1' (#401) from renovate/tokio-1.x-lockfile into main
    38d5f61 Update Rust crate tokio to v1.51.1
    8745d76 Merge pull request 'Lock file maintenance' (#400) from renovate/lock-file-maintenance into main
    552bea4 Lock file maintenance
    6d3dc9e Merge pull request 'Lock file maintenance' (#399) from renovate/lock-file-maintenance into main
    71bda63 build: include target_arch in artifact names
    be3c4b9 Merge pull request 'Update Rust crate comrak to 0.52.0' (#396) from renovate/comrak-0.x into main
    772c567 Update Rust crate comrak to 0.52.0
    f24e392 Lock file maintenance
    f71d294 Merge pull request 'Lock file maintenance' (#389) from renovate/lock-file-maintenance into main
    927d432 Merge pull request 'Update Rust crate serde-saphyr to 0.0.23' (#390) from renovate/serde-saphyr-0.x into main
    b65f7c0 Merge pull request 'Update Rust crate hyper to v1.9.0' (#391) from renovate/hyper-1.x-lockfile into main
    0994912 Merge pull request 'Update Rust crate tokio to v1.51.0' (#394) from renovate/tokio-1.x-lockfile into main
    a170833 Merge pull request 'Update Rust crate semver to v1.0.28' (#395) from renovate/semver-1.x-lockfile into main
    c3accb1 Update Rust crate semver to v1.0.28
    f90015b Update Rust crate tokio to v1.51.0
    45935d5 Merge pull request 'fix: don't include pull requests in issue list' (#393) from cyborus/only-issues into main
    c35fc0f fix: don't include pull requests in issue list
    ea58119 Update Rust crate hyper to v1.9.0
    d3e489f Update Rust crate serde-saphyr to 0.0.23
    5272812 Lock file maintenance
    e102eb8 Merge pull request 'Update Rust crate uuid to v1.23.0' (#387) from renovate/uuid-1.x-lockfile into main
    6acdaf5 Update Rust crate uuid to v1.23.0
    7f1afc4 Merge pull request 'Update Rust crate sha2 to 0.11.0' (#386) from renovate/sha2-0.x into main
    66b2811 Update Rust crate sha2 to 0.11.0
    234c38f Merge pull request 'feat: use git's core.editor if available' (#385) from florian-obernberger/forgejo-cli:main into main
    32489c1 rework: fix logic errors and add fallback to $EDITOR
    6c75691 feat: simplify command extraction and bubble error state
    09c1cfc Merge remote-tracking branch 'refs/remotes/origin/main'
    01b6da8 Merge pull request 'Lock file maintenance' (#384) from renovate/lock-file-maintenance into main
    95d9824 Lock file maintenance
    b19aaa4 Merge pull request 'Lock file maintenance' (#383) from renovate/lock-file-maintenance into main
    7231d6d Lock file maintenance
    7bde891 Merge pull request 'Update Rust crate serde-saphyr to 0.0.22' (#380) from renovate/serde-saphyr-0.x into main
    ea3b6f9 Merge pull request 'feat(cli): update get_editor_flags for more editors' (#373) from florian-obernberger/forgejo-cli:main into main
    42a4071 Update Rust crate serde-saphyr to 0.0.22
    488937f Merge pull request 'docs: add comment containing anthropic refusal string' (#379) from cyborus/anthropic-kill-code into main
    73c18d1 Merge pull request 'docs: add issue & pr templates' (#378) from cyborus/docs/templates into main
    b26b6c3 docs: add comment containing anthropic refusal string
    9e972c8 docs: add forgejo version to bug report template
    7c091ba docs: add "Motivation" section to feature request template
    7801584 docs: expand bug report template
    ec366c8 docs: remove title from issue templates
    ec5142f docs: add issue & pr templates
    3017665 Merge pull request 'feat: add oauth support for codefloe.com' (#326) from pat-s/forgejo-cli:pat-s-patch-1 into main
    a0c4727 Merge branch 'main' into pat-s-patch-1
    bb89169 feat(cli): get editor from git-config
    7b2f698 feat(cli): update get_editor_flags for more editors
    61834a0 Merge pull request 'Lock file maintenance' (#369) from renovate/lock-file-maintenance into main
    af3320a Lock file maintenance
    7afd1e4 Merge pull request 'fix(login): correctly generate pkce challenge' (#368) from cyborus/fix/pkce-challenge into main
    a0d9e92 fix(login): correctly generate pkce challenge
    3b924f6 Merge pull request 'feat(nix): add shell completion generation' (#354) from empunkt/forgejo-cli:main into main
    90449f4 feat: repo units command
    98a3445 Merge pull request 'Update Rust crate clap_complete to v4.6.0' (#353) from renovate/clap_complete-4.x-lockfile into main
    b2765ac Merge pull request 'Update Rust crate clap to v4.6.0' (#352) from renovate/clap-4.x-lockfile into main
    0939823 style(nix): reformat flake.nix with nixfmt
    2f6860e feat(nix): add shell completion generation
    e8c0561 Update Rust crate clap_complete to v4.6.0
    b0efe10 Update Rust crate clap to v4.6.0
    4f8bc02 Merge pull request 'Update Rust crate comrak to 0.51.0' (#350) from renovate/comrak-0.x into main
    ba678d3 Update Rust crate comrak to 0.51.0
    41a9922 feat: repo edit command
    2a11cd3 Merge pull request 'Lock file maintenance' (#348) from renovate/lock-file-maintenance into main
    1fd623e Lock file maintenance
    ac71bc8 Merge pull request 'Update Rust crate tokio to v1.50.0' (#346) from renovate/tokio-1.x-lockfile into main
    c444828 Merge pull request 'Update Rust crate uuid to v1.22.0' (#347) from renovate/uuid-1.x-lockfile into main
    04893d3 Update Rust crate uuid to v1.22.0
    b75473f Update Rust crate tokio to v1.50.0
    bd3d6b5 Merge pull request 'Lock file maintenance' (#341) from renovate/lock-file-maintenance into main
    f962db4 Merge pull request 'Update Rust crate serde-saphyr to 0.0.21' (#342) from renovate/serde-saphyr-0.x into main
    215daa3 Update Rust crate serde-saphyr to 0.0.21
    f0862bb Merge pull request 'Repo & Issue labels' (#334) from LordMZTE/forgejo-cli:labels into main
    efec5c9 Lock file maintenance
    76b5ea7 chore(repo label delete): show what user entered instead ID number
    5cf9c26 feat(repo label create): pretty-print new labels
    37fe686 feat(repo label view): hide archived labels by default
    ec49f07 chore(repo): rename label command to labels
    1d06089 feat(prs): include labels in pr view body
    9940c0c fix: render_label_list will no longer print empty lines
    d4459bb feat: repo label edit
    e5cdbda feat(issues): show issue labels for issue view
    a3b6c84 feat(issues): add commands for editing labels
    22d8b9d feat(repo): creating and deleting labels
    ecda2cb feat(repo): add label view and move label display logic to main.rs
    42feef3 Merge pull request 'Update Rust crate serde-saphyr to 0.0.20' (#340) from renovate/serde-saphyr-0.x into main
    c14b213 Merge pull request 'Update Rust crate forgejo-api to v0.9.2' (#339) from renovate/forgejo-api-0.x-lockfile into main
    c9c5510 Update Rust crate serde-saphyr to 0.0.20
    246ec6b Update Rust crate forgejo-api to v0.9.2
    91afde6 Merge pull request 'Update Rust crate comrak to 0.50.0' (#305) from renovate/comrak-0.x into main
    2b2c9cf chore: adapt to comrak's breaking changes
    9da971b Merge pull request 'feat(login): add client id for v15.next.forgejo.org' (#337) from cyborus/login/v15.next.forgejo.org into main
    aa71a67 feat(login): add client id for v15.next.forgejo.org
    d90a856 Merge pull request 'Update Rust crate rand to 0.10.0' (#323) from renovate/rand-0.x into main
    8d17430 Merge pull request 'Update Rust crate clap to v4.5.60' (#335) from renovate/clap-4.x-lockfile into main
    7522f3d Merge pull request 'feat(login): add client id for codefloe.com' (#336) from cyborus/login/codefloe.com into main
    b572e85 feat(login): add client id for codefloe.com
    942f921 Update Rust crate clap to v4.5.60
    96b6af3 Update Rust crate rand to 0.10.0
    a527015 Merge pull request 'Update Rust crate uuid to v1.21.0' (#333) from renovate/uuid-1.x-lockfile into main
    a0afd7f Update Rust crate uuid to v1.21.0
    b33a8e3 Update Rust crate comrak to 0.50.0
    7734e2b Merge pull request 'Update Rust crate serde-saphyr to 0.0.19' (#332) from renovate/serde-saphyr-0.x into main
    679db7e Update Rust crate serde-saphyr to 0.0.19
    6cf4974 Merge pull request 'Update Rust crate futures to v0.3.32' (#331) from renovate/rust-futures-monorepo into main
    efa0b62 Merge pull request 'Update Rust crate forgejo-api to v0.9.1' (#330) from renovate/forgejo-api-0.x-lockfile into main
    1f755f8 Merge pull request 'Update Rust crate clap_complete to v4.5.66' (#329) from renovate/clap_complete-4.x-lockfile into main
    d50e81e Merge pull request 'Update Rust crate clap to v4.5.59' (#328) from renovate/clap-4.x-lockfile into main
    d6cfb3f Update Rust crate futures to v0.3.32
    de7d9f3 Update Rust crate forgejo-api to v0.9.1
    48ab22f Update Rust crate clap_complete to v4.5.66
    700f754 Update Rust crate clap to v4.5.59
    07c17a8 Update src/auth.rs
    32d2d02 Merge pull request 'Update Rust crate serde-saphyr to 0.0.18' (#324) from renovate/serde-saphyr-0.x into main
    ec55666 Update Rust crate serde-saphyr to 0.0.18
    550d108 Merge pull request 'Lock file maintenance' (#315) from renovate/lock-file-maintenance into main
    c241cc0 Lock file maintenance
    e89cb26 Merge pull request 'Update Rust crate hyper-util to v0.1.20' (#317) from renovate/hyper-util-0.x-lockfile into main
    d35ebbc Merge pull request 'Update Rust crate clap to v4.5.57' (#319) from renovate/clap-4.x-lockfile into main
    c5263a6 Merge pull request 'Update Rust crate regex to v1.12.3' (#320) from renovate/regex-1.x-lockfile into main
    51ce87d Merge pull request 'Update Rust crate git2 to v0.20.4 [SECURITY]' (#321) from renovate/crate-git2-vulnerability into main
    3c255c9 Merge pull request 'Update Rust crate time to v0.3.47' (#322) from renovate/time-0.x-lockfile into main
    4a657c7 Update Rust crate time to v0.3.47
    d738045 Update Rust crate git2 to v0.20.4 [SECURITY]
    d4b0bc5 Update Rust crate regex to v1.12.3
    3951672 Update Rust crate clap to v4.5.57
    4e8e556 Update Rust crate hyper-util to v0.1.20
    52034a3 Merge pull request 'Update Rust crate clap to v4.5.56' (#312) from renovate/clap-4.x-lockfile into main
    561ac42 Merge pull request 'Update Rust crate serde-saphyr to 0.0.17' (#314) from renovate/serde-saphyr-0.x into main
    f247c55 Update Rust crate clap to v4.5.56
    60048a2 Update Rust crate serde-saphyr to 0.0.17
    dbc0013 Merge pull request 'Update Rust crate ssh2-config to 0.7.0' (#313) from renovate/ssh2-config-0.x into main
    2514921 Update Rust crate ssh2-config to 0.7.0
    bafe23b Merge pull request 'Update Rust crate clap to v4.5.55' (#310) from renovate/clap-4.x-lockfile into main
    4e74797 Update Rust crate clap to v4.5.55
    921a824 Merge pull request 'Lock file maintenance' (#309) from renovate/lock-file-maintenance into main
    f8db175 Lock file maintenance
    4d3338f Merge pull request 'Update Rust crate uuid to v1.20.0' (#308) from renovate/uuid-1.x-lockfile into main
    88c0a58 Merge pull request 'Update Rust crate time to v0.3.46' (#307) from renovate/time-0.x-lockfile into main
    df53cae Update Rust crate uuid to v1.20.0
    77e76ac Update Rust crate time to v0.3.46
    f17b4bf Merge pull request 'Update Rust crate ssh2-config to 0.6.0' (#306) from renovate/ssh2-config-0.x into main
    f3eb32b Merge pull request 'Update Rust crate git2 to v0.20.3' (#293) from renovate/git2-0.x-lockfile into main
    0b90d63 Update Rust crate ssh2-config to 0.6.0
    614982b Merge pull request 'Replace debian Docker tag with data.forgejo.org/oci/debian 13' (#304) from renovate/debian-replacement into main
    226ef6f Replace debian Docker tag with data.forgejo.org/oci/debian 13
    c671a50 Merge pull request 'Update Rust crate open to v5.3.3' (#295) from renovate/open-5.x-lockfile into main
    bbe06ec Merge pull request 'Update Rust crate rand to v0.9.2' (#296) from renovate/rand-0.x-lockfile into main
    1bc1e2a Merge pull request 'Update Rust crate semver to v1.0.27' (#297) from renovate/semver-1.x-lockfile into main
    965e681 Merge pull request 'Update Rust crate serde_json to v1.0.149' (#301) from renovate/serde_json-1.x-lockfile into main
    bcde466 Merge pull request 'Update Rust crate serde-saphyr to 0.0.16' (#302) from renovate/serde-saphyr-0.x into main
    d167c95 Update Rust crate serde-saphyr to 0.0.16
    5f83345 Update Rust crate serde_json to v1.0.149
    10c1bbf Merge pull request 'Update Rust crate url to v2.5.8' (#298) from renovate/url-2.x-lockfile into main
    9a55806 Merge pull request 'Update Rust crate crossterm to 0.29.0' (#299) from renovate/crossterm-0.x into main
    43a29a7 Merge pull request 'Update Rust crate hyper to v1.8.1' (#300) from renovate/hyper-1.x-lockfile into main
    78dcd40 Merge pull request 'Update Rust crate hyper-util to v0.1.19' (#294) from renovate/hyper-util-0.x-lockfile into main
    0f4339d Update Rust crate hyper to v1.8.1
    a7d7625 Update Rust crate crossterm to 0.29.0
    d60f9ef Update Rust crate url to v2.5.8
    161e513 Update Rust crate semver to v1.0.27
    1e2ea69 Update Rust crate rand to v0.9.2
    c9253db Update Rust crate open to v5.3.3
    732ac06 Update Rust crate hyper-util to v0.1.19
    bdd76c8 Update Rust crate git2 to v0.20.3
    00d501b Merge pull request 'Update Rust crate uuid to v1.19.0' (#292) from renovate/uuid-1.x-lockfile into main
    14fbc12 Merge pull request 'Update Rust crate tokio to v1.49.0' (#291) from renovate/tokio-1.x-lockfile into main
    eae4c6b Merge pull request 'Update Rust crate base64ct to v1.8.3' (#290) from renovate/base64ct-1.x-lockfile into main
    a021a0a Merge pull request 'Update Rust crate time to v0.3.45' (#289) from renovate/time-0.x-lockfile into main
    e45eca6 Merge pull request 'Update Rust crate clap_complete to v4.5.65' (#288) from renovate/clap_complete-4.x-lockfile into main
    ff0929d Merge pull request 'Update Rust crate clap to v4.5.54' (#287) from renovate/clap-4.x-lockfile into main
    07320a9 Update Rust crate uuid to v1.19.0
    a0eebca Update Rust crate tokio to v1.49.0
    399313d Update Rust crate base64ct to v1.8.3
    576dff3 Update Rust crate time to v0.3.45
    5a38d5a Update Rust crate clap_complete to v4.5.65
    9fd642d Update Rust crate clap to v4.5.54
    7395f3e Merge pull request 'Update Rust crate auth-git2 to v0.5.8' (#285) from renovate/auth-git2-0.x-lockfile into main
    f898fda Merge pull request 'Update Rust crate cfg-if to v1.0.4' (#286) from renovate/cfg-if-1.x-lockfile into main
    7ae5240 Update Rust crate cfg-if to v1.0.4
    66645e9 Update Rust crate auth-git2 to v0.5.8
    b45c0a2 Merge pull request 'Update Rust crate tokio to v1.44.2 [SECURITY]' (#283) from renovate/crate-tokio-vulnerability into main
    22a05c7 Update Rust crate tokio to v1.44.2 [SECURITY]
    6651000 Merge pull request 'Configure Renovate' (#282) from renovate/configure into main
    08ef6fe chore(renovate): add Cyborus as reviewer
    ac0f446 Add .forgejo/renovate.json
    8202564 Merge pull request 'chore: improve no repo info error message' (#278) from lordmzte/repo-info-error-message into main
    accff33 chore: improve no repo info error message
    50fe254 Merge pull request 'chore: bump version to 0.4.0' (#277) from cyborus/bump-0.4.0 into main
    6718c94 chore: bump version to 0.4.0
    04d33d4 Merge pull request 'docs: redesign README' (#273) from cyborus/better-readme into main
    eb1dae3 Merge pull request 'build(dockerfile): use debian 13 as base' (#276) from cyborus/dockerfile-debian-13 into main
    e1b04e4 Merge pull request 'build(publish): update image url for publish-builds step' (#275) from cyborus/ci/publish-image-url into main
    57e9156 build(dockerfile): use debian 13 as base
    51a676a build(publish): update image url for publish-builds step
    1a05754 Merge pull request 'feat(login): support client ids in ~/.config on macos' (#274) from cyborus/config-dir-on-macos into main
    f6dac8d feat(login): support client ids in ~/.config on macos
    a4f00f8 docs: redesign README
    922bee2 Merge pull request 'feat(login): v14.next.forgejo.org' (#272) from cyborus/login/v14.next.forgejo.org into main
    b334e2e feat(login): v14.next.forgejo.org
    2d42f46 Merge pull request 'fix: strip repo name from detected ssh url' (#271) from cyborus/ssh-detection-strip-repo into main
    18773ee fix: strip repo name from detected ssh url
    8c90416 Merge pull request 'chore: update forgejo-api to v0.9.0' (#269) from cyborus/api-0.9.0 into main
    a4feee8 chore: update forgejo-api to v0.9.0
    75ad6c4 Merge pull request 'feat: issue & pr templates' (#261) from issue-templates into main
    3c6fbb5 Merge pull request 'fix(agit): autofill fails on empty commit body' (#267) from cyborus/agit-autofill-allow-empty-body into main
    8805d17 Merge pull request 'fix: fencepost error in repo_url_host_name' (#270) from cyborus/fix-repo-url-host-name into main
    3b01b26 fix: fencepost error in repo_url_host_name
    0f9f6ff Merge branch 'main' into issue-templates
    92ee507 fix(agit): autofill fails on empty commit body
    fad634c Merge pull request 'fix: strip repo from git remote url before alias deref' (#268) from cyborus/deref-alias-without-repo into main
    3876ddc Merge pull request 'feat: remove "agit-" prefix from agit topics' (#266) from cyborus/no-agit-prefix into main
    da1e3dd fix: strip repo from git remote url before alias deref
    146929e feat: remove "agit-" prefix from agit topics
    6ce8daf Merge pull request 'feat: implement search state all, fix help' (#265) from 0ko/help-2 into main
    85ea989 feat(issue): templates command
    8dca927 fix(template): use repo_get_issue_templates to check if templates are enabled
    ed7799b feat: implement search state all for issues and PRs
    5e8ef3f chore: fix issues help, document search default state
    3004907 refactor: simplify generate_from_template return type
    0682add Merge pull request 'feat: tag commands' (#262) from tag-commands into main
    e2626f1 refactor: only compile number regex once
    225fa05 feat: show commit message in tag view
    623d7f8 feat(template): support ref field
    d5c3f7f fix(template): support markdown templates without front matter
    e6c9e3c fix(template): validate numbers using regex
    093f0ef chore: use .first_child() instead of .children().next()
    f20e6fa docs: add comment explaining blank_issues_enabled
    2fe8657 Merge branch 'main' into issue-templates
    d333784 Merge pull request 'feat: support --autofill in agit prs' (#258) from cyborus/agit-agit-autofill into main
    3d8c3c5 feat: tag commands
    317b059 Merge pull request 'fix: incorrect hostname comparison in repo detection' (#259) from bad-hostname-comparison into main
    793bab2 Merge branch 'main' into issue-templates
    5ca7ac7 refactor: simplify issue/pr template code
    56c9a1b feat: pull request templates
    5658345 refactor: move issue template code into submodule
    2f11411 feat: report line in issue template form errors
    e45c561 fix: incorrect hostname comparison in repo detection
    d8c2b12 Merge pull request 'feat: --identity argument' (#255) from LordMZTE/forgejo-cli:ssh-id-flag into main
    f04e03f feat: support --autofill in agit prs
    f1d9011 feat: --identity argument
    8891eee Merge pull request 'chore(nix): update flake' (#256) from LordMZTE/forgejo-cli:nix-update into main
    7b429de chore(nix): update flake
    261330f Merge pull request 'fix: handle non-existant .ssh/config' (#254) from LordMZTE/forgejo-cli:optional-ssh-config into main
    272ebf2 fix: handle non-existant .ssh/config
    c928753 Merge pull request 'fix: improve host name consistency' (#250) from consistent-host-name into main
    ae99761 Merge pull request 'feat(pr,issue): submit comments from a file' (#252) from cljoly/comment-body-file into main
    d5a7df1 feat(pr,issue): submit comments from a file
    c56cd3f Merge pull request 'feat(issue): read body from file' (#251) from cljoly/issue-body-file into main
    bd3de3b fix: cosmetic improvements to comments
    cb79bf3 feat: read PR body from file (or stdin)
    2b276e4 refactor: move read from file to an external function
    82237b5 fix: use eyre::eyre! macro for error message building
    913dbeb feat(issue): read body from file
    4c06e4c refactor: replace Url::host_str with {repo_url_}host_name
    5d03660 fix: replace host_with_path[_and_port] with host_name
    4412a27 Merge pull request 'fix: sort commit statuses' (#247) from sort-status into main
    47e086f fix: sort commit statuses
    f7f6a06 feat: yaml-based issue templates
    04e8258 Merge pull request 'fix(pr): check ssh url when finding remote' (#245) from fix/pr-ssh-base-detection into main
    3ce170d fix(pr): check ssh url when finding remote
    3f25bed Merge pull request 'feat: SSH and GPG key commands' (#241) from LordMZTE/forgejo-cli:key-commands into main
    a4c92f2 feat: SSH and GPG key commands
    55f3645 Merge pull request 'chore: update forgejo-api to 0.8.0' (#242) from api-0.8.0 into main
    1c5f9eb chore: update forgejo-api to 0.8.0
    4e96641 Merge pull request 'build: add rustfmt to Nix dev shell' (#238) from nolan/forgejo-cli:nix-fixes into main
    ee3d7f1 build: add rustfmt to Nix dev shell
    4ae2b12 Merge pull request 'chore: fmt' (#237) from cyborus/agit-fmt into main
    2be0fac chore: format
    dfad912 Merge pull request 'feat!: standardize repository specification across all commands' (#236) from nolan/forgejo-cli:cli-consistency into main
    89bd8c8 feat!: standardize repository specification across all commands
    8fbacd3 feat: support markdown issue templates
    c66a0a8 Merge pull request 'feat: add page arg' (#235) from benmagill/forgejo-cli:page_arg into main
    968061c feat: add detail to output
    ea74fc8 feat: add page arg
    274b70d Merge pull request 'ci: improve release workflow' (#233) from ci-publish-improvements into main
    060c8fe style: rename deploy workflow to publish
    40535d6 style(ci): improve step names
    3ddaee2 build: use kaniko plugin instead of plain kaniko container
    1bc61d0 build: use alpine for zip step
    9000e57 build: publish linux build as .tar.gz instead of .gz
    68fcb89 fix(ci): remove unused client id secret
    f1aad61 Merge pull request 'Add manifest metadata to support cargo-binstall' (#231) from innocentzer0/forgejo-cli:main into main
    85db51d Update README with binstall instructions
    e93100d Add manifest metadata for cargo-binstall
    f79c3cf Merge pull request 'chore: update repo name' (#226) from update-repo-url into main
    c8fd407 chore: update repo name
    307e3ea Merge pull request 'feat: add --fill to pr create as an alias for --autofill' (#225) from autofill-alias-fill into main
    9214794 feat: add --fill to pr create as an alias for --autofill
    863adee Merge pull request 'feat: --autofill flag on pr create' (#223) from pr-autofill into main
    1c8bfde Merge pull request 'improve the look of issue/pr comments' (#224) from improve-comment-style into main
    1cc2101 design: improve the look of issue/pr comments
    e8c689e feat: --autofill flag on pr create
    a19193b Merge pull request 'don't compare schemes when checking if instances are the same' (#220) from fix-same-instance-detection into main
    f8619e2 fix: don't compare schemes when checking if instances are the same
    7c32bed Merge pull request 'use ssh_url_parse, not .parse::<Url>' (#219) from cyborus/agit-fix-wrong-parse into main
    2a0bed4 fix: use ssh_url_parse, not .parse::<Url>
    5db78c8 Merge pull request 'support more instances for oauth' (#215) from cyborus/agit-more-instances-2 into main
    45a4432 feat: add oauth support for more instances
    083dea2 Merge pull request 'Hardcode OAuth client IDs' (#214) from hardcode-client-ids into main
    22c58e5 feat: support more instances for oauth login
    223bdca feat!: hardcode oauth client ids
    1c941c5 fix: save keys file even when command results in error
    e4e5fda Merge pull request 'fix pr branch parsing' (#211) from fix-branch-parsing into main
    bcfb94c fix(pr create): parse the correct branch ref
    d45d42f fix: remote tracking branch parsing
    990ef21 Merge pull request 'Add installation note about Guix.' (#207) from gnutoo/main into main
    27acd8d Add installation note about Guix.
    837177a Merge pull request 'Updating readme.' (#188) from daniel-baumann/forgejo-cli:main into main
    64b38d0 Adding installation note about Debian and Ubuntu.
    940f0d3 Updating repo view example in usage for current forgejo-cli.
    5c970d6 Merge pull request 'chore(deps): disable unused comrak features' (#187) from tranzystorekk/forgejo-cli:comrak-disable-features into main
    70b4e6c chore(deps): disable unused comrak features
    ec440fd Merge pull request 'use code.forgejo.org as alias example instead of disroot' (#186) from change-alias-example into main
    aaf53f3 docs: use code.forgejo.org as alias example instead of disroot
    10e13a4 Merge pull request 'update client id var name in ci' (#185) from ci-oauth-var into main
    810ee06 ci: update client id var name
    49c4ea0 Merge pull request 'bump version to 0.3.0' (#184) from bump-0.3.0 into main
    3d50a40 chore: bump version to 0.3.0
    6b477c2 Merge pull request 'fix permissions for keys file' (#183) from keys-600 into main
    985a907 fix: 600 permission for keys file
    9268afc Merge pull request 'custom oauth client id support' (#182) from improve-oauth into main
    4cfca9e fix: validate builtin client ids more
    55f19a6 feat: custom oauth client ids
    1d8b1a7 Merge pull request 'chore: improve option descriptions' (#180) from 0ko/help into main
    fc92927 chore: improve option descriptions
    b7a9503 Merge pull request 'add ssh support' (#167) from ssh-support into main
    55a45a1 feat(pr): add ssh support to checkout
    5ec854e feat(auth): add command to use ssh by default for host
    3d4b1a1 Merge pull request 'Add Fedora installation instructions' (#166) from lih/forgejo-cli:main into main
    e2a75bf feat(repo): add ssh support for clone and create
    21b37e8 Add Fedora installation instructions
    569a4e2 Merge pull request 'update ci secret syntax' (#165) from fix-ci-secret into main
    5215cdd ci: update secret syntax
    6218b36 Merge pull request 'update dependencies' (#164) from update-deps into main
    39b0e03 chore(dep): update rand to 0.9.0
    da13e86 chore(dep): non-breaking updates
    3b3a47a chore(dep): update flake
    913a3b4 Merge pull request 'cargo fmt' (#163) from fmt into main
    6450450 style: fmt
    2247185 Merge pull request 'actions subcommand' (#162) from LordMZTE/forgejo-cli:actions into main
    cb5c0f1 fix(actions): print information output on more commands
    bcb36b4 fix(actions): secret create command cannot write secret to disk by invoking editor
    5d37d80 docs: use permalink to refer to task status in forgejo source
    0077e83 feat(actions): tasks subcommand takes --page argument
    823dbc5 chore(actions): Use nested match to dispatch subcommand
    4061363 feat(actions): dispatch command
    ecc0e64 feat(actions): secrets delete command
    defcaa1 feat(actions): secret create command
    5944cad chore(actions): list command shows workflow name before duration
    19ecad9 feat(actions): secrets list command
    cb2aef3 chore(actions): avoid needless clone in create_variable
    70f33ff feat(actions): variables delete command
    5ca3834 chore(actions): extract ActionVariable display logic to separate struct
    1eb4430 feat(actions): variables create command
    d000a1b feat(actions): list variables
    9bf656c feat(actions): better output format for actions tasks command
    23ccec8 feat: actions tasks command
    ecacb22 Merge pull request 'organization commands' (#160) from org-commands into main
    9f27434 docs(org): add help message to everything
    cecf250 feat(org): split edit and creation flags
    dc4578c unfeat(org): remove member list from team view
    fc3e9e9 feat(org): show page number and page count
    6e9850e feat(org): show member and team count in org view
    cdb9824 refactor(org): reorganize code
    3859981 feat(org): repo commands
    a869e93 feat(org): labels
    17a33c6 feat(org): membership visibility
    9f73fa7 feat(org): list members
    9b07958 feat(org): team member commands
    fe6d4b6 feat(org): removing repos from teams
    10dd2ac feat(org): adding repos to teams
    ae7bc8a feat(org): list team repos
    7a16cb7 feat(org): print "No results." when org list is empty
    d63821b feat(org): add --only-member-of to org list
    1a91ac8 fix: use proper pagination headers
    cb3a7e4 merge: branch 'main' into 'org-commands'
    0849e6f Merge pull request 'update forgejo-api to v0.7.0' (#158) from api-0.7.0 into main
    41546bf chore(dep): update forgejo-api to 0.7.0
    b82addc feat(org): team delete
    0d849cd feat(org): team edit
    9a960bf feat(org): list
    87286c3 feat(org): team view
    76f044b feat(org): move org name after command in team commands
    08e3668 feat(org): team create
    2726b89 feat(org): team list
    c57b371 feat(org): activity
    0708a5c feat(org): edit
    559308a feat(org): view
    9246071 feat(org): create
    4490815 chore: org commands boilerplate
    4605ea0 Merge pull request 'update forgejo-api to 0.6.0' (#157) from api-0.6.0 into main
    2a6b7ad chore(dep): update forgejo-api to 0.6.0
    a781d53 Merge pull request 'cargo fmt' (#156) from fmt into main
    18252ae style: cargo fmt
    cd35edc Merge pull request 'shell completions' (#155) from shell-completion into main
    8103a29 feat: shell completions
    3bc1c07 fix: remove argument ids with special characters
    a58080e Merge pull request 'always use Forgejo::with_user_agent' (#152) from user-agent-again into main
    1b3b032 fix: always use Forgejo::with_user_agent
    f51a709 Merge pull request 'fix missing env var in ci' (#151) from ci-fix-again into main
    1b20ecb fix(ci): missing env var
    b636bd4 Merge pull request 'update add-key args in ci' (#150) from ci-update-add-key into main
    3546499 ci: update add-key args
    9db33e3 Merge pull request 'add version --verbose' (#149) from verbose-version into main
    62f340c Merge pull request 'bump version in flake.nix to 0.2.0' (#148) from bump-flake-0.2.0 into main
    e99c2bf chore: update version in flake.nix to 0.2.0
    c77c42d Merge pull request 'bump version to 0.2.0' (#147) from bump-0.2.0 into main
    d3541e2 chore: bump version to 0.2.0
    f5ca7dc Merge pull request 'update forgejo-api' (#145) from update-api into main
    41cbec5 chore: update forgejo-api to 0.5.0
    6a592b3 feat: add --verbose flag to version command
    08e9fa2 Merge pull request 'use Repository::discover instead of open' (#144) from git-in-subdir into main
    822ff7b feat: use Repository::discover to open local repo
    b7a54fb Merge pull request 'fix: detaching when using browse' (#143) from dataCobra/forgejo-cli:detach into main
    fb9e3a6 fix: detaching when using browse
    23137cb Merge pull request 'add creating prs with agit' (#138) from cyborus/agit-main into main
    b658dbb Merge pull request 'fix ssh url parsing' (#141) from ssh-parse-mistake into main
    cf17761 fix: incorrect string slicing in ssh url parsing
    94c9349 chore: format
    b201206 feat: don't show empty base branch name
    6b3a98d feat: support agit prs in pr detection
    07436b5 feat: creating a pr with agit
    884778f Merge pull request 'move whoami and version into separate modules' (#137) from dataCobra/forgejo-cli:whoami into main
    68ec6a0 move version into a module
    81317e0 move whoami into a module
    bbcc33d Merge pull request 'add --web flag to issue create' (#136) from issue-create-web into main
    f377872 feat: add --web flag to issue create
    f67260e Merge pull request 'add user agent' (#135) from user-agent into main
    d9f93f0 feat: add user agent
    d961553 Merge pull request 'add repo readme' (#134) from repo-readme into main
    2eb6f73 feat: repo readme
    af11f1e Merge pull request 'add repo migrate' (#133) from migrate into main
    2c2b13e feat: repo migrate
    74c10f1 Merge pull request 'add pr status --wait' (#130) from status-wait into main
    e5b7a87 feat: pr status --wait
    c3fe6d5 Merge pull request 'add --web flag on pr create' (#129) from web-pr into main
    2af9bbb feat: --web flag on pr create
    3c33917 Merge pull request 'use None auth when not logged in' (#128) from public-access into main
    ce1ffa2 feat: allow accessing public info without logging in
    b7aa1e9 Merge pull request 'clean up urls better' (#126) from url-cleanup into main
    5abfa90 fix: make sure urls are http(s) and remove username
    74d3748 Merge pull request 'host aliases' (#125) from alias-host into main
    0e6ae39 feat: automatically add ssh url as alias if it is different
    7121e26 feat: add aliases to keys file
    f8650ab Merge pull request 'improve host name consistency' (#124) from host-consistency into main
    14e0b7d fix: consistency among host names
    23311d2 Merge pull request 'don't accept cannot-be-a-base urls in parsing' (#123) from not-base-fix into main
    e9f9687 fix: don't accept cannot-be-a-base urls in parsing
    e8e6d47 Merge pull request 'correctly parse ssh urls from git remotes' (#121) from ssh-remote-fix into main
    163e789 fix: correctly parse ssh urls from git remotes
    b7120d2 Merge pull request 'Squish clippy and audit errors/warnings' (#120) from Pi-Cla/forgejo-cli:fixes into main
    a979a34 Clippy Fixes
    e5eb3e4 Update Cargo.lock to openssl 0.10.66
    1281fb8 Merge pull request 'application settings page url should only be https' (#119) from app-url-fix into main
    d9256a6 fix: application settings page url should only be https
    fd6dd52 Merge pull request 'feat: add Nix flake' (#118) from LordMZTE/forgejo-cli:nix-flake into main
    4765746 docs: add Nix instructions to README
    bb536e9 feat: add Nix flake
    b3c242d Merge pull request 'bump version to 0.1.1' (#117) from bump-0.1.1 into main
    cbf588e chore: bump version to 0.1.1
    751730c Merge pull request 'fix: suggest correct add-key subcommand when no easy login available' (#116) from tranzystorekk/forgejo-cli:auth-typo into main
    7511d88 fix: suggest correct add-key subcommand when no easy login available
    d8bfaeb Merge pull request 'move repo commands into individual functions' (#115) from refactor-repo into main
    ed86e74 refactor: move repo commands into individual functions
    5f2f3ce Merge pull request 'fix install command in readme' (#114) from readme-install-fix into main
    6a6c8e3 docs: fix install command in readme
    dce6e09 Merge pull request 'split binary and package names' (#111) from fix-package-name into main
    daf086f fix: split binary and package names
    7cfa090 Merge pull request 'add package fields to Cargo.toml' (#110) from crates-io into main
    95c7f3e chore: add package fields to Cargo.toml
    2b25f0a Merge pull request 'bump version to 0.1.0' (#109) from bump-0.1.0 into main
    e1d360c Merge pull request 'fix ci build features flag' (#108) from ci-flag-fix into main
    d3b7e4d ci: --features flag, not --feature
    77400ab chore: bump version to v0.1.0
    4ac80ca Merge pull request 'add matrix chat link to readme' (#106) from matrix-link into main
    8e42e46 docs: add matrix chat link to readme
    96f72ee Merge pull request 'add wiki commands' (#105) from wiki into main
    09d9955 refactor: remove WikiCommand::no_repo_error
    13b7bf5 feat: wiki clone
    de144f2 feat: wiki browse
    a756d1d feat: wiki view
    296ac0c feat: wiki contents
    eadadf8 chore: wiki file
    3e334c7 Merge pull request 'update forgejo-api to v0.4.1' (#104) from api-0.4.1 into main
    288c0cb chore: update forgejo-api to v0.4.1
    da982e0 Merge pull request 'improve help/docs' (#102) from improve-help into main
    ca6d0d8 docs: document --remote
    72800f9 docs: document commands
    227a220 docs: better clap ids
    54fc89c Merge pull request 'update forgejo-api to v0.4.0' (#101) from api-0.4.0 into main
    67f09d8 chore(dep): update forgejo-api to v0.4.0
    0ca2a40 Merge pull request 'repo delete' (#99) from repo-delete into main
    efbefd7 feat: repo delete
    357dcee Merge pull request 'repo create should not take RepoArg for name argument' (#98) from repo-create-name-arg into main
    e77e978 fix: repo create should not take RepoArg for name argument
    121be52 Merge pull request 'update dependencies' (#96) from update-deps into main
    2f2a238 chore: update dependencies
    a835ec3 Merge pull request 'add branch guessing on pr creation' (#95) from pr-branch-guess into main
    af40eb3 feat!: add branch guessing on pr creation
    4a9c9b7 Merge pull request 'print message before reading in readline' (#92) from readline-fix into main
    45ad1d8 fix: print message before reading in readline
    23a345f Merge pull request 'prioritize remote tracking branch in repo detection' (#91) from remote-detect into main
    6fe22f5 fix: prioritize remote tracking branch in repo detection
    1003575 Merge pull request 'read detected pr from correct repo' (#90) from pr-repo-name-fix into main
    e8234b3 fix: read detected pr from correct repo
    0edf5ef Merge pull request 'fix pr detection' (#89) from pr-guess-fix-2 into main
    49b2088 fix: pr detection from branch
    43765c7 Merge pull request 'add pr status' (#88) from pr-status into main
    6c6c07b feat(pr): status command
    d0df1b3 Merge pull request 'update forgejo-api to 0.3.2' (#87) from api-0.3.2 into main
    f3f1f2d chore: update forgejo-api to 0.3.2
    88d5356 Merge pull request 'repo fork command' (#83) from fork into main
    346b7ed feat(repo): fork command
    fd829a5 refactor: RepoArg struct for repo name arguments
    61f5131 Merge pull request 'add user commands' (#86) from user-commands into main
    2466b89 feat(user): listing activities
    5313777 feat(user): editing settings
    38da0e6 feat(user): user search
    2aa4b15 feat(user): list user orgs
    ed4bed4 feat(user): list user repos
    ccf1688 feat(user): blocking and unblocking
    8a34e86 feat(user): following commands
    3a00896 feat(user): user view and user browse
    839a63b chore: user.rs file
    ebcc8b8 Merge pull request 'update forgejo-api to 0.3.0' (#85) from api-0.3.1 into main
    9458c77 chore: update forgejo-api to 0.3.1
    883a201 Merge pull request 'improve look of issues' (#84) from issue-pr-parity into main
    6b78a23 feat(display): bring issue printing to visual parity with PR printing
    02e2747 Merge pull request 'add FJ_FALLBACK_HOST env var' (#82) from host-fallback into main
    9eca2b5 feat: FJ_FALLBACK_HOST
    e68408e Merge pull request 'enable update checking in CI builds' (#81) from deploy-feature into main
    35f0912 chore: enable update-check feature in CI builds
    8dadac2 Merge pull request 'add version command and update checker' (#80) from version into main
    1eaeec7 feat: version command and update checker
    a0bab97 Merge pull request 'fix trailing paragraph newlines in markdown rendering' (#79) from trailing-newline-fix into main
    d060a73 fix(markdown): trailing paragraph newlines
    7a2d622 Merge pull request 'add more success messages' (#78) from success-msg into main
    a0c250f Merge pull request 'fix warnings' (#76) from warnings into main
    56f0e8b add more success messages
    09af9b3 fix warnings
    d10b517 Merge pull request 'print markdown text nicely' (#75) from pretty-text into main
    5a8626c fix first line of blockquote being grey
    45e3565 skip markdown handling for non-fancy output
    8bd72dd nicer markdown printing
    ed58e07 Merge pull request 'guess pr number from commit' (#74) from guess-pr into main
    a0188d9 pr browse opens current pr instead of pr list
    c9ddd94 guess pr number from commit
    9725bb6 Merge pull request 'add fj auth login' (#71) from oauth-login into main
    490a156 include codeberg oauth client info in CI builds
    349c6ad rename LoginInfo::Token to Application
    3ff6a86 implement fj auth login
    c47a24a add oauth token support to keys file
    98a82d0 update to forgejo-api v0.3.0
    aee8b4b Merge pull request 'pull request messages' (#72) from pr-message into main
    9001779 pull request merge messages
    2b9b64d Merge pull request 'improve specifying repo in issue and pr commands' (#70) from simplify-repo-specify into main
    619a17a improve specifying repo in issue and pr commands
    c30f7ad Merge pull request 'authenticate properly in repo clone' (#66) from auth-repo-clone into main
    956415b authenticate properly in repo clone
    b93717a Merge pull request 'add repo clone' (#65) from repo-clone into main
    b262d31 add repo clone
    b168dce Merge pull request 'rename repo info to repo view' (#64) from info-view into main
    20669bf rename repo info to repo view
    5e16810 Merge pull request 'remove outdated comment' (#63) from remove-comment into main
    89b0a2b remove outdated comment
    d7b84de Merge pull request 'fix repo create --push' (#62) from fix-push into main
    85c7d52 Merge pull request 'add repo star and repo unstar' (#61) from star into main
    3a47d94 fix repo create --push
    6687c9e add repo star and repo unstar
    a259a44 Merge pull request 'don't check ignored files when checking for uncommitted changes' (#59) from ignore-ignored into main
    df14392 Merge pull request 'fix pr-browse opening issues list' (#60) from browse-pr-fix into main
    3f212ba fix pr browse opening issues page
    b2eec65 don't check ignored files when checking for uncommitted changes
    85ee804 Merge pull request 'enumerate remotes before checking remote tracking branch' (#57) from adjust-remote-guess into main
    3dec5f9 enumerate remotes before checking remote tracking branch
    8465a4a Merge pull request 'trim title before checks' (#56) from trim-title into main
    142cb36 trim title before checks
    32babc3 Merge pull request 'add pull request commands' (#52) from pr into main
    9c65606 reorder pr commands
    1a839e2 add doc comment to pr::ViewCommand::Commits
    349855e add pr edit _ labels
    7214852 add doc comments to pr commands
    2f9c1a0 add pr view _ labels
    10a36f7 authenticate when fetching pull request
    b42a3c2 make pr view prettier
    9df8f68 add pr checkout
    b425f2b use fancy display in pr viewing
    3583943 display changed lines in pr view
    6fd1976 add pr change viewing commands
    460ac72 add pr commands
    0a30d14 Merge pull request 'add optional fancy output' (#53) from optional-pretty into main
    5ea7cdb add optional fancy output
    4ecb241 guess host from remote tracking branch before enumerating remotes
    a002adc Merge pull request 'cargo update' (#51) from cargo-update into main
    32f9743 cargo update
    a2ae51d Merge pull request 'update to forgejo-api v0.2.0' (#49) from api-0.2.0 into main
    df25728 update to forgejo-api v0.2.0
    36d970f Merge pull request 'use crates.io release of forgejo-api' (#48) from crates-io-api into main
    9e5c205 use crates.io release of forgejo-api
    cbf04f9 Merge pull request 'rename fj user to fj whoami' (#47) from whoami into main
    4ac90b6 rename fj user to fj whoami
    4061f79 Merge pull request 'don't print url scheme in fj user' (#46) from user-no-scheme into main
    5e59305 don't print url scheme in fj user
    a816b88 Merge pull request 'bump version to v0.0.4' (#45) from bump-0.0.4 into main
    c028348 bump version to v0.0.4
    b3db65d Merge pull request 'fix arch typo in readme' (#44) from arch-typo into main
    eb7c1f5 fix arch typo in readme
    1edb769 Merge pull request 'improve readme' (#43) from improve-readme into main
    6f8c924 improve readme
    24ab090 Merge pull request 'run ci build on tag rather than deploy' (#41) from tag-build into main
    6136e1f Merge pull request 'add proper readout for repo info' (#40) from repo-info into main
    88b801a run ci build on tag rather than deploy
    2587bf9 format
    6c08c8a add proper readout for repo info
    7fca58f Merge pull request 'update forgejo-api' (#39) from update-api into main
    38679ad update forgejo-api
    ed7f84e Merge pull request 'improve host url and repo name detection' (#38) from improve-host-detection into main
    c272e9f format
    46cd32e improve host url and repo name detection
    a014a4e Merge pull request 'update to new version of forgejo-api' (#37) from update-api into main
    6cbd80e update to new version of forgejo-api
    4c42632 Merge pull request 'update forgejo-api' (#36) from update-api into main
    68ae2c1 update forgejo-api
    9573940 Merge pull request 'update forgejo-api' (#35) from update-api into main
    b85b939 update forgejo-api
    bbe5536 Merge pull request 'fix key including newline when read from stdin' (#34) from trim-token into main
    43773f1 fix key including newline when read from stdin
    700b8ed Merge pull request 'fix attachment filename' (#30) from attach-fix into main
    8bef41e fix attachment filename
    1bfaec6 Merge pull request 'install certificates in Dockerfile' (#29) from container-certs into main
    7fc7a20 install certificates in Dockerfile
    e69590d Merge pull request '[ci] set FORGE_HOST env var in release step' (#28) from ci-fix into main
    f326e93 [ci] set FORGE_HOST env var in release step
    41035c1 Merge pull request 'forgejo instance agnostic deployment' (#27) from agnostic into main
    444def4 forgejo instance agnostic deployment
    84d5b8d Merge pull request 'fix adding token in ci' (#26) from ci-fix into main
    6ae35a3 fix adding token in ci
    23187f4 Merge pull request 'set repo url when creating release' (#24) from url-remote-ci into main
    f2bb74b use long form flag
    ce62142 set repo url when creating release
    f57dceb Merge pull request 'allow url as remote' (#23) from url-remote into main
    eebf27d allow url as remote
    0d22400 Merge pull request 'do apt update' (#22) from mingw-gcc into main
    07d0a30 do apt update
    99686e8 Merge pull request 'add -y flag' (#21) from mingw-gcc into main
    410c887 add -y flag
    4d8a22c Merge pull request 'install mingw gcc in ci' (#20) from mingw-gcc into main
    20834b7 install mingw gcc
    01a8228 Merge pull request 'update forgejo-api to not use rustls' (#19) from no-rustls into main
    7020f6e update forgejo-api to not use rustls
    2d50075 Merge pull request 'update version number to 0.0.1' (#18) from version-0.0.1 into main
    83e11e4 update version number to 0.0.1
    2a167c3 Merge pull request 'add deployment ci pipeline' (#17) from deploy-ci into main
    8010898 remove versioned container push for now
    4375e9b add deployment pipeline
    086420f Merge pull request 'add dockerfile' (#16) from dockerfile into main
    cce460e install libssl-dev
    eb7058a add dockerfile
    3844a31 Merge pull request 'format' (#15) from fmt into main
    71a63b2 format
    b643936 Merge pull request 'update forgejo-api to version that uses rustls' (#14) from rustls into main
    b842cbc update forgejo-api to version that uses rustls
    358125b Merge pull request 'add release commands' (#13) from releases into main
    a39201f add release commands
    e532aac Merge pull request 'add system for editor-specific flags' (#12) from editor-flags into main
    33367ed fmt
    4a9f524 add system for editor-specific flags
    c4810e3 Merge pull request 'add git remote selection flag' (#10) from select-remote into main
    1f8824d Merge pull request 'add issue search' (#9) from search-issues into main
    87bb4d7 format
    e365cd3 format
    1a9353c add issue search
    68d255d add git remote selection flag
    98e3cce Merge pull request 'add ci' (#8) from ci into main
    5dd4dbb format
    7b63ecd add ci
    ae38211 Merge pull request 'add basic issue commands' (#7) from issues into main
    d8c04f6 add basic issue commands
    be7136b Merge pull request 'fix repo creation pushing' (#6) from push-fix into main
    3a62e2d fix repo create push
    cb0a7d1 set private flag to -P instead of -p to not conflict with push flag
    1c78830 Merge pull request 'add licensing' (#5) from license into main
    e47c58e add licensing
    e18ef78 Merge pull request 'don't look for remote if it obviously won't be there' (#4) from fix-find-remote into main
    8b6a5a6 don't look for remote if it obviously won't be there
    337c575 Merge pull request 'decouple repository info from login info' (#3) from decouple-repo-keys into main
    5999e1e format
    7fc2bf7 fix url issues
    51b180d decouple repo info from key info
    66dd709 fmt
    1a7f0de Merge pull request 'improve organization' (#2) from organize into main
    7a525a5 improve organization
    20514e8 Merge pull request 'move forgejo-api to its own repo' (#1) from api-repo into main
    90084b9 move forgejo-api to its own repo
    af89252 Merge pull request 'praise rustfmt' (#10) from fmt into main
    b569329 praise rustfmt
    9a37f3b Merge pull request 'rework key lookup' (#9) from rework-key-lookup into main
    3dbbcb7 rework key lookup
    7b5dcb8 Merge pull request 'missed a bit in the key file move' (#8) from keys-file into main
    d7b4f64 missed a bit
    f87c12a Merge pull request 'move keys info to new file' (#7) from keys-file into main
    82a53c7 move keys info to new file
    be2f72e fix pushing
    c1806f5 Replace calls to git with git2 crate (#5)
    2c30803 remove unnecessary mut
    ab393f4 better api error
    59a0460 choose upstream name in repo create
    d3fe409 add repo browse
    22aad20 fix push flag
    6b2f762 initial commit

    Downloads
  • v0.6.0 c377593d0b

    v0.6.0
    Some checks failed
    Build binary (Linux) / Build and publish fj binary (Linux x86_64) (push) Failing after 5s
    Build binary (Windows) / Build and publish fj binary (Windows x86_64) (push) Failing after 6s
    Check / fmt + clippy + build + tests (push) Successful in 36s
    Stable

    David released this 2026-05-25 18:46:18 +02:00 | 81 commits to main since this release

    Changelog

    c377593 Merge pull request 'Release v0.6.0' (#16) from release/v0.6.0 into main
    56f7c8a Release v0.6.0
    5aef1f2 Merge pull request 'chore(metadata): point package metadata at fork (FJ-17)' (#15) from chore/repoint-package-metadata-fork-fj-17 into main
    8d05a1a Merge branch 'main' into chore/repoint-package-metadata-fork-fj-17
    bf95620 Merge pull request 'refactor(core): migrate issues/prs/org API logic into fj-core (FJ-12)' (#14) from refactor/migrate-complex-areas-fj-12 into main
    5a2e6be Merge branch 'main' into refactor/migrate-complex-areas-fj-12
    508bd68 chore(metadata): repoint package metadata at fork (FJ-17)
    5d758b6 refactor(core): migrate issues/prs/org API logic into fj-core (FJ-12)
    fbc1a9d Merge pull request 'feat(version): train-aware update check baked into the binary (FJ-15)' (#13) from feat/version-train-aware-check-fj-15 into main
    d92a2bd feat(version): train-aware update check baked into the binary (FJ-15)
    8a762b4 Merge pull request 'fix(version): point update check at fork, ship --check in releases (FJ-14)' (#12) from chore/update-check-target-fork-fj-14 into main
    652b990 Merge branch 'main' into chore/update-check-target-fork-fj-14
    f475613 Merge pull request 'chore: commit repo hygiene (gitignore, JetBrains files, README) (FJ-16)' (#10) from chore/repo-hygiene-fj-16 into main
    0d0e057 fix(version): point update check at fork, ship --check in releases (FJ-14)
    e4a3bfc Merge branch 'main' into chore/repo-hygiene-fj-16
    8850db4 Merge pull request 'chore: migrate repo/release/user/actions into fj-core ops (FJ-11)' (#11) from chore/migrate-medium-areas-fj-11 into main
    0bb2a89 chore: migrate repo/release/user/actions into fj-core ops (FJ-11)
    f6ecbd6 docs: align README with the a8n.run fork (FJ-16)
    9b98dfc chore: expand .gitignore and track JetBrains project files (FJ-16)
    ac743d3 Merge pull request 'chore: migrate tag/wiki API calls into fj-core ops (FJ-10)' (#9) from chore/migrate-simple-areas-fj-10 into main
    2eb8609 chore: migrate tag/wiki API calls into fj-core ops (FJ-10)
    237aadc Merge pull request 'chore: extract fj-core shared types + issue-template parsing (FJ-7)' (#8) from chore/extract-fj-core-fj-7 into main
    8d1e5a2 chore: extract fj-core shared types + issue-template parsing (FJ-7)
    eeeca80 Merge pull request 'chore(lint): clear clippy -D warnings across fj binary (FJ-13)' (#7) from chore/clippy-clean-fj-13 into main
    efb1ab7 chore(lint): clear clippy -D warnings across fj binary (FJ-13)
    4083f60 Merge pull request 'chore: extract fj-client (keys, client, URL/SSH resolution) (FJ-6)' (#6) from chore/extract-fj-client-fj-6 into main
    7887a71 chore: extract fj-client (keys, client, URL/SSH resolution) (FJ-6)
    c3f464d Merge pull request 'chore: convert to a Cargo workspace (fj, fj-client, fj-core) (FJ-5)' (#5) from chore/cargo-workspace-fj-5 into main
    fc4c342 chore: convert to a Cargo workspace (fj, fj-client, fj-core) (FJ-5)
    0c4e179 Merge pull request 'chore(main): strip anti-AI refusal-trigger comment (FJ-4)' (#4) from chore/strip-anti-ai-comment-fj-4 into main
    b944136 chore(main): strip anti-AI refusal-trigger comment (FJ-4)
    4294bff Merge pull request 'chore: adopt NiceGuyIT governance build/CI standards' (#3) from chore/governance-conformance into main
    266b53d chore: adopt NiceGuyIT governance build/CI standards
    53b4fae Merge pull request 'fix(pr): json output for pr status, fix relative-url crash (FJ-2)' (#2) from feat/pr-status-json-relative-url-fix into main
    a896a8d Merge branch 'main' into feat/pr-status-json-relative-url-fix
    2ea6507 fix(pr): json output for pr status, fix relative-url crash (FJ-2)
    7aa32dc Merge pull request 'feat(pr): add --json output to pr search (FJ-1)' (#1) from feat/pr-search-json into main
    eb2492b feat(pr): add --json output to pr search (FJ-1)
    cabf3fb docs: mark as fork, attribute upstream, state AI policy rationale
    34d5cff Merge pull request 'l10n: enable zh-Hans locale' (#472) from cyborus/locale/zh-Hans into main
    5f49a67 l10n: enable zh-Hans locale
    67c0ccc Merge pull request 'Translations update from Codeberg Translate' (#465) from translate/forgejo-cli:weblate-forgejo-cli-forgejo-cli into main
    1c067e3 Translated using Weblate (Chinese (Simplified Han script))
    745ffaf Added translation using Weblate (Chinese (Simplified Han script))
    bea4979 Translated using Weblate (Italian)
    ff0b5c8 Translated using Weblate (Russian)
    1fe6c2b Added translation using Weblate (Italian)
    1807115 Translated using Weblate (Toki Pona)
    8d7ea8e Translated using Weblate (Toki Pona)
    548e2b1 Added translation using Weblate (Toki Pona)
    20489a0 Translated using Weblate (Polish)
    103ef53 Added translation using Weblate (Polish)
    6319482 Deleted translation using Weblate (Toki Pona)
    2be0432 Added translation using Weblate (Toki Pona)
    c5e1806 Translated using Weblate (Russian)
    13a7223 Added translation using Weblate (Russian)
    4532e02 Translated using Weblate (German)
    da3fc2a Merge pull request 'Update Rust crate serde_json to v1.0.150' (#470) from renovate/serde_json-1.x-lockfile into main
    449265b Update Rust crate serde_json to v1.0.150
    fe988a5 Merge pull request 'fix typo' (#469) from efraim/fix-typo into main
    e3ad8f2 fix typo
    5c67478 Merge pull request 'Update Rust crate git2 to 0.21.0' (#467) from renovate/git2-0.x into main
    ff9e70c chore: update auth-git2 to 0.6.0
    d53ac46 Update Rust crate git2 to 0.21.0
    ebfe5d1 Merge pull request 'German locale' (#464) from LordMZTE/forgejo-cli:de-locale into main
    594c935 feat: German locale
    0b0cbe2 Merge pull request 'feat: localization' (#279) from localization into main
    3cb0bee chore(typos): exclude locales from spell check
    66f164d fix(l10n): bad en-US messages
    43fcd4a Merge pull request 'Resolve ssh host names with ssh config' (#462) from tpikonen/forgejo-cli:resolve-ssh-host into main
    0796529 fix: Use get_ssh_config() to access ssh config
    1df2ad5 fix: Resolve ssh host using ssh config
    49d1f75 Merge pull request 'Lock file maintenance' (#463) from renovate/lock-file-maintenance into main
    1511f2a Lock file maintenance
    8b2dcf4 refactor: .filter_map().next() -> .find_map()
    9942283 fix(ftl): minor fixes
    0f61c26 fix(l10n): don't print message id on empty prompt message
    13fa2c8 fix(l10n): panic on invalid user prompt message
    89b3276 refactor: better panic message in OffsetDateTime::ftl
    e13e091 refactor(fluent): simpler IS_MINIMAL body
    132fb25 fix(fluent): stricter argument validation
    57346f0 fix(ftl): variable interpolation syntax
    1c1228e fix: remove unreachable from auth::auth_server
    3ad20eb feat: passthrough write_fmt on WriterCompat
    5183b94 refactor: impl AsFluent for bool
    ac9bbb9 chore: remove obsolete comment
    b7192ce fix(string): consistent pluralization in org-create-invalid_character
    8284247 refactor: allow trailing comma in ftl_* macros
    2b6671d build: rerun if localization is changed
    5640d3d build: display ftl errors as errors instead of warnings
    cac402d fix(string): bool colors in user-gpg-list-*
    c60f3ec refactor: remove build-dependency on glob
    ade375d Merge pull request 'Lock file maintenance' (#459) from renovate/lock-file-maintenance into main
    3582a7a Lock file maintenance
    bc9fd14 Merge pull request 'Update Rust crate open to v5.3.5' (#461) from renovate/open-5.x-lockfile into main
    2a1d3ca Merge pull request 'Update Rust crate clap_complete to v4.6.5' (#458) from renovate/clap_complete-4.x-lockfile into main
    930a4e2 Merge pull request 'Update Rust crate tokio to v1.52.3' (#456) from renovate/tokio-1.x-lockfile into main
    3526e0b chore: remove eyre from build-dependencies
    cfc80f5 feat(l10n): don't localize in non-tty environments
    14be862 fix(l10n): proper pluralization in actions-dispatch-success
    714f55b refactor: more robust language detection
    f54bd3a chore: remove tok localization
    e3527ca refactor: rename IS_NONE to OPT
    e7eeefa feat(l10n): localize repo
    65d75f6 refactor: don't user duplicate attributes in prompts
    63d0bf4 chore: fix warnings
    1ca1bf7 feat(l10n): localize user
    6ca7b5d feat(l10n): localize pr
    dd23ea2 feat(l10n): localize issue
    a1fa785 feat(l10n): localize wiki
    81a1685 feat(l10n): localize version
    0bb6220 feat(l10n): localize tag
    a23c814 feat(l10n): localize release
    42cb3c6 feat(l10n): localize org
    7af0a8e feat(l10n): localize readline and prompt_bool
    d70f398 feat(fluent): add styling functions
    9e57c31 delete: fluent tests
    2ce9d69 build: check fluent file validity in build.rs
    cc60549 feat(l10n): localize actions
    e98997b refactor(ftl): allow self-named args
    f22166d refactor: allow expr in ftl id position
    5ec9cb2 refactor: pretty-print ftl errors
    37b4c24 feat(l10n): localize auth
    84230cf feat(l10n): localize whoami
    d58148d test(fluent): placeables in macros
    d3243b7 Update Rust crate open to v5.3.5
    a4a8d15 Update Rust crate clap_complete to v4.6.5
    66d9b23 Update Rust crate tokio to v1.52.3
    0b2f707 chore: fmt
    53d67b6 refactor: move localization tests into integration tests
    5d31715 feat: setup localization framework
    be36660 Merge pull request 'feat(pr-reviews): New pr reviews command with -c flag for inline comments' (#429) from muller-md/forgejo-cli:get-inline-comments into main
    35c760a Merge pull request 'Update Rust crate tokio to v1.52.2' (#454) from renovate/tokio-1.x-lockfile into main
    f364cca Merge pull request 'Update Rust crate serde-saphyr to 0.0.26' (#453) from renovate/serde-saphyr-0.x into main
    d7ed2c1 Merge pull request 'Lock file maintenance' (#450) from renovate/lock-file-maintenance into main
    4e849a5 Update Rust crate tokio to v1.52.2
    e4dd36f Update Rust crate serde-saphyr to 0.0.26
    9d630f3 feat(pr-reviews): Add command to view pull request reviews
    8c98a7a Lock file maintenance
    548f29c Merge pull request 'Restricted file permissions at creation time' (#449) from skdishansachin/forgejo-cli:improve-file-creation into main
    72cb79e style: fix the code formatting
    a3ce4dc refactor: simplify the file permissions to 0600 on Unix
    bf10bd5 refactor: simplify the file creation with permissions
    b5da7f6 fix: restrict keys.json permissions at creation time
    117c4a7 fix: restrict file permissions to 0600 on Unix
    be1893e Merge pull request 'Lock file maintenance' (#441) from renovate/lock-file-maintenance into main
    7b45e27 Merge pull request 'Update Rust crate clap_complete to v4.6.3' (#442) from renovate/clap_complete-4.x-lockfile into main
    ae4eac8 Merge pull request 'Update Rust crate ssh2-config to v0.7.1' (#440) from renovate/ssh2-config-0.x-lockfile into main
    e632f9e Merge pull request 'Update Rust crate serde-saphyr to 0.0.25' (#438) from renovate/serde-saphyr-0.x into main
    0a06721 Merge pull request 'docs: add oneline helptext to 'repo migrate' command' (#443) from moutons/forgejo-cli:docs/add-migrate-oneline into main
    92c163a docs: add oneline helptext to 'repo migrate' command
    110e75e Update Rust crate clap_complete to v4.6.3
    c649e3f Update Rust crate ssh2-config to v0.7.1
    d35a586 Update Rust crate serde-saphyr to 0.0.25
    4f1a8c3 Merge pull request 'fix(activity): parse issue content field as json' (#437) from cyborus/activity-issue-fix into main
    447091d refactor(activity): use repo_name for all repo name locations
    d5ab501 fix(activity): parse issue content field as json
    3f7bda3 Lock file maintenance
    98b5d4a Merge pull request 'Lock file maintenance' (#432) from renovate/lock-file-maintenance into main
    8106037 Merge pull request 'Update Rust crate open to v5.3.4' (#431) from renovate/open-5.x-lockfile into main
    04dfd01 Merge pull request 'Update Rust crate serde-saphyr to 0.0.24' (#436) from renovate/serde-saphyr-0.x into main
    df34add Update Rust crate serde-saphyr to 0.0.24
    e6ce331 Lock file maintenance
    3dd05a1 Update Rust crate open to v5.3.4
    ded7801 Merge pull request 'ci: add typos check' (#430) from cyborus/typos into main
    36a30e0 fix: typos
    1de8bfd ci: add typos check
    04696e0 Merge pull request 'Update Rust crate tokio to v1.52.1' (#428) from renovate/tokio-1.x-lockfile into main
    c6ff1e1 Update Rust crate tokio to v1.52.1
    04c50ce Merge pull request 'chore: bump version to 0.5.0' (#427) from cyborus/bump-0.5.0 into main
    e53311b chore: bump version to 0.5.0
    ef5b6b4 Merge pull request 'fix(binstall): target-arch not target_arch' (#426) from cyborus/binstall-fix into main
    a295c7e fix(binstall): target-arch not target_arch
    682d1a9 Merge pull request 'build: use trixie tag for debian image' (#425) from cyborus/dockerfile-debian-trixie into main
    cb46e0f build: use trixie tag for debian image
    5eefc0b Merge pull request 'docs(readme): mention aarch64 build in "Installation" section' (#424) from cyborus/readme-aarch64 into main
    af7b55a docs(readme): mention aarch64 build in "Installation" section
    ebd9776 Merge pull request 'feat: add warning about git push --force on agit prs' (#420) from cyborus/agit-force-push-warning into main
    ae78246 Merge pull request 'feat: show warning on archived repos' (#419) from cyborus/archived-repos into main
    a862688 Merge pull request 'Lock file maintenance' (#423) from renovate/lock-file-maintenance into main
    ad01c7b Merge pull request 'Update Rust crate forgejo-api to 0.10.0' (#422) from renovate/forgejo-api-0.x into main
    183caf0 Merge pull request 'Update Rust crate uuid to v1.23.1' (#421) from renovate/uuid-1.x-lockfile into main
    f474338 chore: add query parameter to list_action_tasks
    5c8e221 Lock file maintenance
    15e9fb2 Update Rust crate forgejo-api to 0.10.0
    f897e77 Update Rust crate uuid to v1.23.1
    d195b9e feat: add warning about git push --force on agit prs
    e040613 feat: show warning on archived repos
    3de1859 Merge pull request 'feat: assigning issues' (#414) from cyborus/assigning-issues into main
    8b82c17 feat: add pr assign & pr unassign
    60fb29a Merge pull request 'fix(oauth): save new token immediately after refreshing' (#417) from cyborus/oauth-save-refresh-immediately into main
    2cff956 Merge pull request 'feat: support all casings of README' (#415) from cyborus/caseless-readme into main
    9822f1b Merge pull request 'feat: allow setting owner for migrated repo' (#416) from cyborus/migration-owner into main
    1364f0f Update Rust crate clap to v4.6.1 (#418)
    da4fefe Update Rust crate clap to v4.6.1
    1d455ac refactor: move keys.save() out of main
    e0e1d04 fix(oauth): save new token immediately after refreshing
    b075f78 feat: allow setting owner for migrated repo
    6eec300 feat: support all casings of README
    ba50965 feat: add issue assign & issue unassign
    6344b3d Merge pull request 'Update Rust crate tokio to v1.52.0' (#413) from renovate/tokio-1.x-lockfile into main
    733b881 Update Rust crate tokio to v1.52.0
    abe822b Merge pull request 'Update Rust crate clap_complete to v4.6.2' (#412) from renovate/clap_complete-4.x-lockfile into main
    ab70ebf Update Rust crate clap_complete to v4.6.2
    77ff9ff Merge pull request 'Lock file maintenance' (#410) from renovate/lock-file-maintenance into main
    347284a Lock file maintenance
    05b8423 Merge pull request 'Update Rust crate clap_complete to v4.6.1' (#408) from renovate/clap_complete-4.x-lockfile into main
    702348c Merge pull request 'Update Rust crate rand to v0.10.1 [SECURITY]' (#409) from renovate/crate-rand-vulnerability into main
    e10940c Update Rust crate rand to v0.10.1 [SECURITY]
    7db9b13 Update Rust crate clap_complete to v4.6.1
    3a6de90 Merge pull request 'fix(oauth): detach opened browser' (#407) from cyborus/detach-browser-open into main
    1514dc7 fix(oauth): detach opened browser
    ebacef8 Merge pull request 'build: aarch64 support' (#403) from cyborus/aarch64 into main
    58493d0 Merge pull request 'docs: add badges to readme' (#404) from cyborus/readme-badges into main
    747dcba docs: add badges to readme
    834bd30 Merge pull request 'repo edit & repo units commands' (#349) from LordMZTE/forgejo-cli:repo-edit into main
    4132bf9 build(publish): add aarch64-linux build
    4c934da Merge pull request 'Update Rust crate tokio to v1.51.1' (#401) from renovate/tokio-1.x-lockfile into main
    38d5f61 Update Rust crate tokio to v1.51.1
    8745d76 Merge pull request 'Lock file maintenance' (#400) from renovate/lock-file-maintenance into main
    552bea4 Lock file maintenance
    6d3dc9e Merge pull request 'Lock file maintenance' (#399) from renovate/lock-file-maintenance into main
    71bda63 build: include target_arch in artifact names
    be3c4b9 Merge pull request 'Update Rust crate comrak to 0.52.0' (#396) from renovate/comrak-0.x into main
    772c567 Update Rust crate comrak to 0.52.0
    f24e392 Lock file maintenance
    f71d294 Merge pull request 'Lock file maintenance' (#389) from renovate/lock-file-maintenance into main
    927d432 Merge pull request 'Update Rust crate serde-saphyr to 0.0.23' (#390) from renovate/serde-saphyr-0.x into main
    b65f7c0 Merge pull request 'Update Rust crate hyper to v1.9.0' (#391) from renovate/hyper-1.x-lockfile into main
    0994912 Merge pull request 'Update Rust crate tokio to v1.51.0' (#394) from renovate/tokio-1.x-lockfile into main
    a170833 Merge pull request 'Update Rust crate semver to v1.0.28' (#395) from renovate/semver-1.x-lockfile into main
    c3accb1 Update Rust crate semver to v1.0.28
    f90015b Update Rust crate tokio to v1.51.0
    45935d5 Merge pull request 'fix: don't include pull requests in issue list' (#393) from cyborus/only-issues into main
    c35fc0f fix: don't include pull requests in issue list
    ea58119 Update Rust crate hyper to v1.9.0
    d3e489f Update Rust crate serde-saphyr to 0.0.23
    5272812 Lock file maintenance
    e102eb8 Merge pull request 'Update Rust crate uuid to v1.23.0' (#387) from renovate/uuid-1.x-lockfile into main
    6acdaf5 Update Rust crate uuid to v1.23.0
    7f1afc4 Merge pull request 'Update Rust crate sha2 to 0.11.0' (#386) from renovate/sha2-0.x into main
    66b2811 Update Rust crate sha2 to 0.11.0
    234c38f Merge pull request 'feat: use git's core.editor if available' (#385) from florian-obernberger/forgejo-cli:main into main
    32489c1 rework: fix logic errors and add fallback to $EDITOR
    6c75691 feat: simplify command extraction and bubble error state
    09c1cfc Merge remote-tracking branch 'refs/remotes/origin/main'
    01b6da8 Merge pull request 'Lock file maintenance' (#384) from renovate/lock-file-maintenance into main
    95d9824 Lock file maintenance
    b19aaa4 Merge pull request 'Lock file maintenance' (#383) from renovate/lock-file-maintenance into main
    7231d6d Lock file maintenance
    7bde891 Merge pull request 'Update Rust crate serde-saphyr to 0.0.22' (#380) from renovate/serde-saphyr-0.x into main
    ea3b6f9 Merge pull request 'feat(cli): update get_editor_flags for more editors' (#373) from florian-obernberger/forgejo-cli:main into main
    42a4071 Update Rust crate serde-saphyr to 0.0.22
    488937f Merge pull request 'docs: add comment containing anthropic refusal string' (#379) from cyborus/anthropic-kill-code into main
    73c18d1 Merge pull request 'docs: add issue & pr templates' (#378) from cyborus/docs/templates into main
    b26b6c3 docs: add comment containing anthropic refusal string
    9e972c8 docs: add forgejo version to bug report template
    7c091ba docs: add "Motivation" section to feature request template
    7801584 docs: expand bug report template
    ec366c8 docs: remove title from issue templates
    ec5142f docs: add issue & pr templates
    3017665 Merge pull request 'feat: add oauth support for codefloe.com' (#326) from pat-s/forgejo-cli:pat-s-patch-1 into main
    a0c4727 Merge branch 'main' into pat-s-patch-1
    bb89169 feat(cli): get editor from git-config
    7b2f698 feat(cli): update get_editor_flags for more editors
    61834a0 Merge pull request 'Lock file maintenance' (#369) from renovate/lock-file-maintenance into main
    af3320a Lock file maintenance
    7afd1e4 Merge pull request 'fix(login): correctly generate pkce challenge' (#368) from cyborus/fix/pkce-challenge into main
    a0d9e92 fix(login): correctly generate pkce challenge
    3b924f6 Merge pull request 'feat(nix): add shell completion generation' (#354) from empunkt/forgejo-cli:main into main
    90449f4 feat: repo units command
    98a3445 Merge pull request 'Update Rust crate clap_complete to v4.6.0' (#353) from renovate/clap_complete-4.x-lockfile into main
    b2765ac Merge pull request 'Update Rust crate clap to v4.6.0' (#352) from renovate/clap-4.x-lockfile into main
    0939823 style(nix): reformat flake.nix with nixfmt
    2f6860e feat(nix): add shell completion generation
    e8c0561 Update Rust crate clap_complete to v4.6.0
    b0efe10 Update Rust crate clap to v4.6.0
    4f8bc02 Merge pull request 'Update Rust crate comrak to 0.51.0' (#350) from renovate/comrak-0.x into main
    ba678d3 Update Rust crate comrak to 0.51.0
    41a9922 feat: repo edit command
    2a11cd3 Merge pull request 'Lock file maintenance' (#348) from renovate/lock-file-maintenance into main
    1fd623e Lock file maintenance
    ac71bc8 Merge pull request 'Update Rust crate tokio to v1.50.0' (#346) from renovate/tokio-1.x-lockfile into main
    c444828 Merge pull request 'Update Rust crate uuid to v1.22.0' (#347) from renovate/uuid-1.x-lockfile into main
    04893d3 Update Rust crate uuid to v1.22.0
    b75473f Update Rust crate tokio to v1.50.0
    bd3d6b5 Merge pull request 'Lock file maintenance' (#341) from renovate/lock-file-maintenance into main
    f962db4 Merge pull request 'Update Rust crate serde-saphyr to 0.0.21' (#342) from renovate/serde-saphyr-0.x into main
    215daa3 Update Rust crate serde-saphyr to 0.0.21
    f0862bb Merge pull request 'Repo & Issue labels' (#334) from LordMZTE/forgejo-cli:labels into main
    efec5c9 Lock file maintenance
    76b5ea7 chore(repo label delete): show what user entered instead ID number
    5cf9c26 feat(repo label create): pretty-print new labels
    37fe686 feat(repo label view): hide archived labels by default
    ec49f07 chore(repo): rename label command to labels
    1d06089 feat(prs): include labels in pr view body
    9940c0c fix: render_label_list will no longer print empty lines
    d4459bb feat: repo label edit
    e5cdbda feat(issues): show issue labels for issue view
    a3b6c84 feat(issues): add commands for editing labels
    22d8b9d feat(repo): creating and deleting labels
    ecda2cb feat(repo): add label view and move label display logic to main.rs
    42feef3 Merge pull request 'Update Rust crate serde-saphyr to 0.0.20' (#340) from renovate/serde-saphyr-0.x into main
    c14b213 Merge pull request 'Update Rust crate forgejo-api to v0.9.2' (#339) from renovate/forgejo-api-0.x-lockfile into main
    c9c5510 Update Rust crate serde-saphyr to 0.0.20
    246ec6b Update Rust crate forgejo-api to v0.9.2
    91afde6 Merge pull request 'Update Rust crate comrak to 0.50.0' (#305) from renovate/comrak-0.x into main
    2b2c9cf chore: adapt to comrak's breaking changes
    9da971b Merge pull request 'feat(login): add client id for v15.next.forgejo.org' (#337) from cyborus/login/v15.next.forgejo.org into main
    aa71a67 feat(login): add client id for v15.next.forgejo.org
    d90a856 Merge pull request 'Update Rust crate rand to 0.10.0' (#323) from renovate/rand-0.x into main
    8d17430 Merge pull request 'Update Rust crate clap to v4.5.60' (#335) from renovate/clap-4.x-lockfile into main
    7522f3d Merge pull request 'feat(login): add client id for codefloe.com' (#336) from cyborus/login/codefloe.com into main
    b572e85 feat(login): add client id for codefloe.com
    942f921 Update Rust crate clap to v4.5.60
    96b6af3 Update Rust crate rand to 0.10.0
    a527015 Merge pull request 'Update Rust crate uuid to v1.21.0' (#333) from renovate/uuid-1.x-lockfile into main
    a0afd7f Update Rust crate uuid to v1.21.0
    b33a8e3 Update Rust crate comrak to 0.50.0
    7734e2b Merge pull request 'Update Rust crate serde-saphyr to 0.0.19' (#332) from renovate/serde-saphyr-0.x into main
    679db7e Update Rust crate serde-saphyr to 0.0.19
    6cf4974 Merge pull request 'Update Rust crate futures to v0.3.32' (#331) from renovate/rust-futures-monorepo into main
    efa0b62 Merge pull request 'Update Rust crate forgejo-api to v0.9.1' (#330) from renovate/forgejo-api-0.x-lockfile into main
    1f755f8 Merge pull request 'Update Rust crate clap_complete to v4.5.66' (#329) from renovate/clap_complete-4.x-lockfile into main
    d50e81e Merge pull request 'Update Rust crate clap to v4.5.59' (#328) from renovate/clap-4.x-lockfile into main
    d6cfb3f Update Rust crate futures to v0.3.32
    de7d9f3 Update Rust crate forgejo-api to v0.9.1
    48ab22f Update Rust crate clap_complete to v4.5.66
    700f754 Update Rust crate clap to v4.5.59
    07c17a8 Update src/auth.rs
    32d2d02 Merge pull request 'Update Rust crate serde-saphyr to 0.0.18' (#324) from renovate/serde-saphyr-0.x into main
    ec55666 Update Rust crate serde-saphyr to 0.0.18
    550d108 Merge pull request 'Lock file maintenance' (#315) from renovate/lock-file-maintenance into main
    c241cc0 Lock file maintenance
    e89cb26 Merge pull request 'Update Rust crate hyper-util to v0.1.20' (#317) from renovate/hyper-util-0.x-lockfile into main
    d35ebbc Merge pull request 'Update Rust crate clap to v4.5.57' (#319) from renovate/clap-4.x-lockfile into main
    c5263a6 Merge pull request 'Update Rust crate regex to v1.12.3' (#320) from renovate/regex-1.x-lockfile into main
    51ce87d Merge pull request 'Update Rust crate git2 to v0.20.4 [SECURITY]' (#321) from renovate/crate-git2-vulnerability into main
    3c255c9 Merge pull request 'Update Rust crate time to v0.3.47' (#322) from renovate/time-0.x-lockfile into main
    4a657c7 Update Rust crate time to v0.3.47
    d738045 Update Rust crate git2 to v0.20.4 [SECURITY]
    d4b0bc5 Update Rust crate regex to v1.12.3
    3951672 Update Rust crate clap to v4.5.57
    4e8e556 Update Rust crate hyper-util to v0.1.20
    52034a3 Merge pull request 'Update Rust crate clap to v4.5.56' (#312) from renovate/clap-4.x-lockfile into main
    561ac42 Merge pull request 'Update Rust crate serde-saphyr to 0.0.17' (#314) from renovate/serde-saphyr-0.x into main
    f247c55 Update Rust crate clap to v4.5.56
    60048a2 Update Rust crate serde-saphyr to 0.0.17
    dbc0013 Merge pull request 'Update Rust crate ssh2-config to 0.7.0' (#313) from renovate/ssh2-config-0.x into main
    2514921 Update Rust crate ssh2-config to 0.7.0
    bafe23b Merge pull request 'Update Rust crate clap to v4.5.55' (#310) from renovate/clap-4.x-lockfile into main
    4e74797 Update Rust crate clap to v4.5.55
    921a824 Merge pull request 'Lock file maintenance' (#309) from renovate/lock-file-maintenance into main
    f8db175 Lock file maintenance
    4d3338f Merge pull request 'Update Rust crate uuid to v1.20.0' (#308) from renovate/uuid-1.x-lockfile into main
    88c0a58 Merge pull request 'Update Rust crate time to v0.3.46' (#307) from renovate/time-0.x-lockfile into main
    df53cae Update Rust crate uuid to v1.20.0
    77e76ac Update Rust crate time to v0.3.46
    f17b4bf Merge pull request 'Update Rust crate ssh2-config to 0.6.0' (#306) from renovate/ssh2-config-0.x into main
    f3eb32b Merge pull request 'Update Rust crate git2 to v0.20.3' (#293) from renovate/git2-0.x-lockfile into main
    0b90d63 Update Rust crate ssh2-config to 0.6.0
    614982b Merge pull request 'Replace debian Docker tag with data.forgejo.org/oci/debian 13' (#304) from renovate/debian-replacement into main
    226ef6f Replace debian Docker tag with data.forgejo.org/oci/debian 13
    c671a50 Merge pull request 'Update Rust crate open to v5.3.3' (#295) from renovate/open-5.x-lockfile into main
    bbe06ec Merge pull request 'Update Rust crate rand to v0.9.2' (#296) from renovate/rand-0.x-lockfile into main
    1bc1e2a Merge pull request 'Update Rust crate semver to v1.0.27' (#297) from renovate/semver-1.x-lockfile into main
    965e681 Merge pull request 'Update Rust crate serde_json to v1.0.149' (#301) from renovate/serde_json-1.x-lockfile into main
    bcde466 Merge pull request 'Update Rust crate serde-saphyr to 0.0.16' (#302) from renovate/serde-saphyr-0.x into main
    d167c95 Update Rust crate serde-saphyr to 0.0.16
    5f83345 Update Rust crate serde_json to v1.0.149
    10c1bbf Merge pull request 'Update Rust crate url to v2.5.8' (#298) from renovate/url-2.x-lockfile into main
    9a55806 Merge pull request 'Update Rust crate crossterm to 0.29.0' (#299) from renovate/crossterm-0.x into main
    43a29a7 Merge pull request 'Update Rust crate hyper to v1.8.1' (#300) from renovate/hyper-1.x-lockfile into main
    78dcd40 Merge pull request 'Update Rust crate hyper-util to v0.1.19' (#294) from renovate/hyper-util-0.x-lockfile into main
    0f4339d Update Rust crate hyper to v1.8.1
    a7d7625 Update Rust crate crossterm to 0.29.0
    d60f9ef Update Rust crate url to v2.5.8
    161e513 Update Rust crate semver to v1.0.27
    1e2ea69 Update Rust crate rand to v0.9.2
    c9253db Update Rust crate open to v5.3.3
    732ac06 Update Rust crate hyper-util to v0.1.19
    bdd76c8 Update Rust crate git2 to v0.20.3
    00d501b Merge pull request 'Update Rust crate uuid to v1.19.0' (#292) from renovate/uuid-1.x-lockfile into main
    14fbc12 Merge pull request 'Update Rust crate tokio to v1.49.0' (#291) from renovate/tokio-1.x-lockfile into main
    eae4c6b Merge pull request 'Update Rust crate base64ct to v1.8.3' (#290) from renovate/base64ct-1.x-lockfile into main
    a021a0a Merge pull request 'Update Rust crate time to v0.3.45' (#289) from renovate/time-0.x-lockfile into main
    e45eca6 Merge pull request 'Update Rust crate clap_complete to v4.5.65' (#288) from renovate/clap_complete-4.x-lockfile into main
    ff0929d Merge pull request 'Update Rust crate clap to v4.5.54' (#287) from renovate/clap-4.x-lockfile into main
    07320a9 Update Rust crate uuid to v1.19.0
    a0eebca Update Rust crate tokio to v1.49.0
    399313d Update Rust crate base64ct to v1.8.3
    576dff3 Update Rust crate time to v0.3.45
    5a38d5a Update Rust crate clap_complete to v4.5.65
    9fd642d Update Rust crate clap to v4.5.54
    7395f3e Merge pull request 'Update Rust crate auth-git2 to v0.5.8' (#285) from renovate/auth-git2-0.x-lockfile into main
    f898fda Merge pull request 'Update Rust crate cfg-if to v1.0.4' (#286) from renovate/cfg-if-1.x-lockfile into main
    7ae5240 Update Rust crate cfg-if to v1.0.4
    66645e9 Update Rust crate auth-git2 to v0.5.8
    b45c0a2 Merge pull request 'Update Rust crate tokio to v1.44.2 [SECURITY]' (#283) from renovate/crate-tokio-vulnerability into main
    22a05c7 Update Rust crate tokio to v1.44.2 [SECURITY]
    6651000 Merge pull request 'Configure Renovate' (#282) from renovate/configure into main
    08ef6fe chore(renovate): add Cyborus as reviewer
    ac0f446 Add .forgejo/renovate.json
    8202564 Merge pull request 'chore: improve no repo info error message' (#278) from lordmzte/repo-info-error-message into main
    accff33 chore: improve no repo info error message
    50fe254 Merge pull request 'chore: bump version to 0.4.0' (#277) from cyborus/bump-0.4.0 into main
    6718c94 chore: bump version to 0.4.0
    04d33d4 Merge pull request 'docs: redesign README' (#273) from cyborus/better-readme into main
    eb1dae3 Merge pull request 'build(dockerfile): use debian 13 as base' (#276) from cyborus/dockerfile-debian-13 into main
    e1b04e4 Merge pull request 'build(publish): update image url for publish-builds step' (#275) from cyborus/ci/publish-image-url into main
    57e9156 build(dockerfile): use debian 13 as base
    51a676a build(publish): update image url for publish-builds step
    1a05754 Merge pull request 'feat(login): support client ids in ~/.config on macos' (#274) from cyborus/config-dir-on-macos into main
    f6dac8d feat(login): support client ids in ~/.config on macos
    a4f00f8 docs: redesign README
    922bee2 Merge pull request 'feat(login): v14.next.forgejo.org' (#272) from cyborus/login/v14.next.forgejo.org into main
    b334e2e feat(login): v14.next.forgejo.org
    2d42f46 Merge pull request 'fix: strip repo name from detected ssh url' (#271) from cyborus/ssh-detection-strip-repo into main
    18773ee fix: strip repo name from detected ssh url
    8c90416 Merge pull request 'chore: update forgejo-api to v0.9.0' (#269) from cyborus/api-0.9.0 into main
    a4feee8 chore: update forgejo-api to v0.9.0
    75ad6c4 Merge pull request 'feat: issue & pr templates' (#261) from issue-templates into main
    3c6fbb5 Merge pull request 'fix(agit): autofill fails on empty commit body' (#267) from cyborus/agit-autofill-allow-empty-body into main
    8805d17 Merge pull request 'fix: fencepost error in repo_url_host_name' (#270) from cyborus/fix-repo-url-host-name into main
    3b01b26 fix: fencepost error in repo_url_host_name
    0f9f6ff Merge branch 'main' into issue-templates
    92ee507 fix(agit): autofill fails on empty commit body
    fad634c Merge pull request 'fix: strip repo from git remote url before alias deref' (#268) from cyborus/deref-alias-without-repo into main
    3876ddc Merge pull request 'feat: remove "agit-" prefix from agit topics' (#266) from cyborus/no-agit-prefix into main
    da1e3dd fix: strip repo from git remote url before alias deref
    146929e feat: remove "agit-" prefix from agit topics
    6ce8daf Merge pull request 'feat: implement search state all, fix help' (#265) from 0ko/help-2 into main
    85ea989 feat(issue): templates command
    8dca927 fix(template): use repo_get_issue_templates to check if templates are enabled
    ed7799b feat: implement search state all for issues and PRs
    5e8ef3f chore: fix issues help, document search default state
    3004907 refactor: simplify generate_from_template return type
    0682add Merge pull request 'feat: tag commands' (#262) from tag-commands into main
    e2626f1 refactor: only compile number regex once
    225fa05 feat: show commit message in tag view
    623d7f8 feat(template): support ref field
    d5c3f7f fix(template): support markdown templates without front matter
    e6c9e3c fix(template): validate numbers using regex
    093f0ef chore: use .first_child() instead of .children().next()
    f20e6fa docs: add comment explaining blank_issues_enabled
    2fe8657 Merge branch 'main' into issue-templates
    d333784 Merge pull request 'feat: support --autofill in agit prs' (#258) from cyborus/agit-agit-autofill into main
    3d8c3c5 feat: tag commands
    317b059 Merge pull request 'fix: incorrect hostname comparison in repo detection' (#259) from bad-hostname-comparison into main
    793bab2 Merge branch 'main' into issue-templates
    5ca7ac7 refactor: simplify issue/pr template code
    56c9a1b feat: pull request templates
    5658345 refactor: move issue template code into submodule
    2f11411 feat: report line in issue template form errors
    e45c561 fix: incorrect hostname comparison in repo detection
    d8c2b12 Merge pull request 'feat: --identity argument' (#255) from LordMZTE/forgejo-cli:ssh-id-flag into main
    f04e03f feat: support --autofill in agit prs
    f1d9011 feat: --identity argument
    8891eee Merge pull request 'chore(nix): update flake' (#256) from LordMZTE/forgejo-cli:nix-update into main
    7b429de chore(nix): update flake
    261330f Merge pull request 'fix: handle non-existant .ssh/config' (#254) from LordMZTE/forgejo-cli:optional-ssh-config into main
    272ebf2 fix: handle non-existant .ssh/config
    c928753 Merge pull request 'fix: improve host name consistency' (#250) from consistent-host-name into main
    ae99761 Merge pull request 'feat(pr,issue): submit comments from a file' (#252) from cljoly/comment-body-file into main
    d5a7df1 feat(pr,issue): submit comments from a file
    c56cd3f Merge pull request 'feat(issue): read body from file' (#251) from cljoly/issue-body-file into main
    bd3de3b fix: cosmetic improvements to comments
    cb79bf3 feat: read PR body from file (or stdin)
    2b276e4 refactor: move read from file to an external function
    82237b5 fix: use eyre::eyre! macro for error message building
    913dbeb feat(issue): read body from file
    4c06e4c refactor: replace Url::host_str with {repo_url_}host_name
    5d03660 fix: replace host_with_path[_and_port] with host_name
    4412a27 Merge pull request 'fix: sort commit statuses' (#247) from sort-status into main
    47e086f fix: sort commit statuses
    f7f6a06 feat: yaml-based issue templates
    04e8258 Merge pull request 'fix(pr): check ssh url when finding remote' (#245) from fix/pr-ssh-base-detection into main
    3ce170d fix(pr): check ssh url when finding remote
    3f25bed Merge pull request 'feat: SSH and GPG key commands' (#241) from LordMZTE/forgejo-cli:key-commands into main
    a4c92f2 feat: SSH and GPG key commands
    55f3645 Merge pull request 'chore: update forgejo-api to 0.8.0' (#242) from api-0.8.0 into main
    1c5f9eb chore: update forgejo-api to 0.8.0
    4e96641 Merge pull request 'build: add rustfmt to Nix dev shell' (#238) from nolan/forgejo-cli:nix-fixes into main
    ee3d7f1 build: add rustfmt to Nix dev shell
    4ae2b12 Merge pull request 'chore: fmt' (#237) from cyborus/agit-fmt into main
    2be0fac chore: format
    dfad912 Merge pull request 'feat!: standardize repository specification across all commands' (#236) from nolan/forgejo-cli:cli-consistency into main
    89bd8c8 feat!: standardize repository specification across all commands
    8fbacd3 feat: support markdown issue templates
    c66a0a8 Merge pull request 'feat: add page arg' (#235) from benmagill/forgejo-cli:page_arg into main
    968061c feat: add detail to output
    ea74fc8 feat: add page arg
    274b70d Merge pull request 'ci: improve release workflow' (#233) from ci-publish-improvements into main
    060c8fe style: rename deploy workflow to publish
    40535d6 style(ci): improve step names
    3ddaee2 build: use kaniko plugin instead of plain kaniko container
    1bc61d0 build: use alpine for zip step
    9000e57 build: publish linux build as .tar.gz instead of .gz
    68fcb89 fix(ci): remove unused client id secret
    f1aad61 Merge pull request 'Add manifest metadata to support cargo-binstall' (#231) from innocentzer0/forgejo-cli:main into main
    85db51d Update README with binstall instructions
    e93100d Add manifest metadata for cargo-binstall
    f79c3cf Merge pull request 'chore: update repo name' (#226) from update-repo-url into main
    c8fd407 chore: update repo name
    307e3ea Merge pull request 'feat: add --fill to pr create as an alias for --autofill' (#225) from autofill-alias-fill into main
    9214794 feat: add --fill to pr create as an alias for --autofill
    863adee Merge pull request 'feat: --autofill flag on pr create' (#223) from pr-autofill into main
    1c8bfde Merge pull request 'improve the look of issue/pr comments' (#224) from improve-comment-style into main
    1cc2101 design: improve the look of issue/pr comments
    e8c689e feat: --autofill flag on pr create
    a19193b Merge pull request 'don't compare schemes when checking if instances are the same' (#220) from fix-same-instance-detection into main
    f8619e2 fix: don't compare schemes when checking if instances are the same
    7c32bed Merge pull request 'use ssh_url_parse, not .parse::<Url>' (#219) from cyborus/agit-fix-wrong-parse into main
    2a0bed4 fix: use ssh_url_parse, not .parse::<Url>
    5db78c8 Merge pull request 'support more instances for oauth' (#215) from cyborus/agit-more-instances-2 into main
    45a4432 feat: add oauth support for more instances
    083dea2 Merge pull request 'Hardcode OAuth client IDs' (#214) from hardcode-client-ids into main
    22c58e5 feat: support more instances for oauth login
    223bdca feat!: hardcode oauth client ids
    1c941c5 fix: save keys file even when command results in error
    e4e5fda Merge pull request 'fix pr branch parsing' (#211) from fix-branch-parsing into main
    bcfb94c fix(pr create): parse the correct branch ref
    d45d42f fix: remote tracking branch parsing
    990ef21 Merge pull request 'Add installation note about Guix.' (#207) from gnutoo/main into main
    27acd8d Add installation note about Guix.
    837177a Merge pull request 'Updating readme.' (#188) from daniel-baumann/forgejo-cli:main into main
    64b38d0 Adding installation note about Debian and Ubuntu.
    940f0d3 Updating repo view example in usage for current forgejo-cli.
    5c970d6 Merge pull request 'chore(deps): disable unused comrak features' (#187) from tranzystorekk/forgejo-cli:comrak-disable-features into main
    70b4e6c chore(deps): disable unused comrak features
    ec440fd Merge pull request 'use code.forgejo.org as alias example instead of disroot' (#186) from change-alias-example into main
    aaf53f3 docs: use code.forgejo.org as alias example instead of disroot
    10e13a4 Merge pull request 'update client id var name in ci' (#185) from ci-oauth-var into main
    810ee06 ci: update client id var name
    49c4ea0 Merge pull request 'bump version to 0.3.0' (#184) from bump-0.3.0 into main
    3d50a40 chore: bump version to 0.3.0
    6b477c2 Merge pull request 'fix permissions for keys file' (#183) from keys-600 into main
    985a907 fix: 600 permission for keys file
    9268afc Merge pull request 'custom oauth client id support' (#182) from improve-oauth into main
    4cfca9e fix: validate builtin client ids more
    55f19a6 feat: custom oauth client ids
    1d8b1a7 Merge pull request 'chore: improve option descriptions' (#180) from 0ko/help into main
    fc92927 chore: improve option descriptions
    b7a9503 Merge pull request 'add ssh support' (#167) from ssh-support into main
    55a45a1 feat(pr): add ssh support to checkout
    5ec854e feat(auth): add command to use ssh by default for host
    3d4b1a1 Merge pull request 'Add Fedora installation instructions' (#166) from lih/forgejo-cli:main into main
    e2a75bf feat(repo): add ssh support for clone and create
    21b37e8 Add Fedora installation instructions
    569a4e2 Merge pull request 'update ci secret syntax' (#165) from fix-ci-secret into main
    5215cdd ci: update secret syntax
    6218b36 Merge pull request 'update dependencies' (#164) from update-deps into main
    39b0e03 chore(dep): update rand to 0.9.0
    da13e86 chore(dep): non-breaking updates
    3b3a47a chore(dep): update flake
    913a3b4 Merge pull request 'cargo fmt' (#163) from fmt into main
    6450450 style: fmt
    2247185 Merge pull request 'actions subcommand' (#162) from LordMZTE/forgejo-cli:actions into main
    cb5c0f1 fix(actions): print information output on more commands
    bcb36b4 fix(actions): secret create command cannot write secret to disk by invoking editor
    5d37d80 docs: use permalink to refer to task status in forgejo source
    0077e83 feat(actions): tasks subcommand takes --page argument
    823dbc5 chore(actions): Use nested match to dispatch subcommand
    4061363 feat(actions): dispatch command
    ecc0e64 feat(actions): secrets delete command
    defcaa1 feat(actions): secret create command
    5944cad chore(actions): list command shows workflow name before duration
    19ecad9 feat(actions): secrets list command
    cb2aef3 chore(actions): avoid needless clone in create_variable
    70f33ff feat(actions): variables delete command
    5ca3834 chore(actions): extract ActionVariable display logic to separate struct
    1eb4430 feat(actions): variables create command
    d000a1b feat(actions): list variables
    9bf656c feat(actions): better output format for actions tasks command
    23ccec8 feat: actions tasks command
    ecacb22 Merge pull request 'organization commands' (#160) from org-commands into main
    9f27434 docs(org): add help message to everything
    cecf250 feat(org): split edit and creation flags
    dc4578c unfeat(org): remove member list from team view
    fc3e9e9 feat(org): show page number and page count
    6e9850e feat(org): show member and team count in org view
    cdb9824 refactor(org): reorganize code
    3859981 feat(org): repo commands
    a869e93 feat(org): labels
    17a33c6 feat(org): membership visibility
    9f73fa7 feat(org): list members
    9b07958 feat(org): team member commands
    fe6d4b6 feat(org): removing repos from teams
    10dd2ac feat(org): adding repos to teams
    ae7bc8a feat(org): list team repos
    7a16cb7 feat(org): print "No results." when org list is empty
    d63821b feat(org): add --only-member-of to org list
    1a91ac8 fix: use proper pagination headers
    cb3a7e4 merge: branch 'main' into 'org-commands'
    0849e6f Merge pull request 'update forgejo-api to v0.7.0' (#158) from api-0.7.0 into main
    41546bf chore(dep): update forgejo-api to 0.7.0
    b82addc feat(org): team delete
    0d849cd feat(org): team edit
    9a960bf feat(org): list
    87286c3 feat(org): team view
    76f044b feat(org): move org name after command in team commands
    08e3668 feat(org): team create
    2726b89 feat(org): team list
    c57b371 feat(org): activity
    0708a5c feat(org): edit
    559308a feat(org): view
    9246071 feat(org): create
    4490815 chore: org commands boilerplate
    4605ea0 Merge pull request 'update forgejo-api to 0.6.0' (#157) from api-0.6.0 into main
    2a6b7ad chore(dep): update forgejo-api to 0.6.0
    a781d53 Merge pull request 'cargo fmt' (#156) from fmt into main
    18252ae style: cargo fmt
    cd35edc Merge pull request 'shell completions' (#155) from shell-completion into main
    8103a29 feat: shell completions
    3bc1c07 fix: remove argument ids with special characters
    a58080e Merge pull request 'always use Forgejo::with_user_agent' (#152) from user-agent-again into main
    1b3b032 fix: always use Forgejo::with_user_agent
    f51a709 Merge pull request 'fix missing env var in ci' (#151) from ci-fix-again into main
    1b20ecb fix(ci): missing env var
    b636bd4 Merge pull request 'update add-key args in ci' (#150) from ci-update-add-key into main
    3546499 ci: update add-key args
    9db33e3 Merge pull request 'add version --verbose' (#149) from verbose-version into main
    62f340c Merge pull request 'bump version in flake.nix to 0.2.0' (#148) from bump-flake-0.2.0 into main
    e99c2bf chore: update version in flake.nix to 0.2.0
    c77c42d Merge pull request 'bump version to 0.2.0' (#147) from bump-0.2.0 into main
    d3541e2 chore: bump version to 0.2.0
    f5ca7dc Merge pull request 'update forgejo-api' (#145) from update-api into main
    41cbec5 chore: update forgejo-api to 0.5.0
    6a592b3 feat: add --verbose flag to version command
    08e9fa2 Merge pull request 'use Repository::discover instead of open' (#144) from git-in-subdir into main
    822ff7b feat: use Repository::discover to open local repo
    b7a54fb Merge pull request 'fix: detaching when using browse' (#143) from dataCobra/forgejo-cli:detach into main
    fb9e3a6 fix: detaching when using browse
    23137cb Merge pull request 'add creating prs with agit' (#138) from cyborus/agit-main into main
    b658dbb Merge pull request 'fix ssh url parsing' (#141) from ssh-parse-mistake into main
    cf17761 fix: incorrect string slicing in ssh url parsing
    94c9349 chore: format
    b201206 feat: don't show empty base branch name
    6b3a98d feat: support agit prs in pr detection
    07436b5 feat: creating a pr with agit
    884778f Merge pull request 'move whoami and version into separate modules' (#137) from dataCobra/forgejo-cli:whoami into main
    68ec6a0 move version into a module
    81317e0 move whoami into a module
    bbcc33d Merge pull request 'add --web flag to issue create' (#136) from issue-create-web into main
    f377872 feat: add --web flag to issue create
    f67260e Merge pull request 'add user agent' (#135) from user-agent into main
    d9f93f0 feat: add user agent
    d961553 Merge pull request 'add repo readme' (#134) from repo-readme into main
    2eb6f73 feat: repo readme
    af11f1e Merge pull request 'add repo migrate' (#133) from migrate into main
    2c2b13e feat: repo migrate
    74c10f1 Merge pull request 'add pr status --wait' (#130) from status-wait into main
    e5b7a87 feat: pr status --wait
    c3fe6d5 Merge pull request 'add --web flag on pr create' (#129) from web-pr into main
    2af9bbb feat: --web flag on pr create
    3c33917 Merge pull request 'use None auth when not logged in' (#128) from public-access into main
    ce1ffa2 feat: allow accessing public info without logging in
    b7aa1e9 Merge pull request 'clean up urls better' (#126) from url-cleanup into main
    5abfa90 fix: make sure urls are http(s) and remove username
    74d3748 Merge pull request 'host aliases' (#125) from alias-host into main
    0e6ae39 feat: automatically add ssh url as alias if it is different
    7121e26 feat: add aliases to keys file
    f8650ab Merge pull request 'improve host name consistency' (#124) from host-consistency into main
    14e0b7d fix: consistency among host names
    23311d2 Merge pull request 'don't accept cannot-be-a-base urls in parsing' (#123) from not-base-fix into main
    e9f9687 fix: don't accept cannot-be-a-base urls in parsing
    e8e6d47 Merge pull request 'correctly parse ssh urls from git remotes' (#121) from ssh-remote-fix into main
    163e789 fix: correctly parse ssh urls from git remotes
    b7120d2 Merge pull request 'Squish clippy and audit errors/warnings' (#120) from Pi-Cla/forgejo-cli:fixes into main
    a979a34 Clippy Fixes
    e5eb3e4 Update Cargo.lock to openssl 0.10.66
    1281fb8 Merge pull request 'application settings page url should only be https' (#119) from app-url-fix into main
    d9256a6 fix: application settings page url should only be https
    fd6dd52 Merge pull request 'feat: add Nix flake' (#118) from LordMZTE/forgejo-cli:nix-flake into main
    4765746 docs: add Nix instructions to README
    bb536e9 feat: add Nix flake
    b3c242d Merge pull request 'bump version to 0.1.1' (#117) from bump-0.1.1 into main
    cbf588e chore: bump version to 0.1.1
    751730c Merge pull request 'fix: suggest correct add-key subcommand when no easy login available' (#116) from tranzystorekk/forgejo-cli:auth-typo into main
    7511d88 fix: suggest correct add-key subcommand when no easy login available
    d8bfaeb Merge pull request 'move repo commands into individual functions' (#115) from refactor-repo into main
    ed86e74 refactor: move repo commands into individual functions
    5f2f3ce Merge pull request 'fix install command in readme' (#114) from readme-install-fix into main
    6a6c8e3 docs: fix install command in readme
    dce6e09 Merge pull request 'split binary and package names' (#111) from fix-package-name into main
    daf086f fix: split binary and package names
    7cfa090 Merge pull request 'add package fields to Cargo.toml' (#110) from crates-io into main
    95c7f3e chore: add package fields to Cargo.toml
    2b25f0a Merge pull request 'bump version to 0.1.0' (#109) from bump-0.1.0 into main
    e1d360c Merge pull request 'fix ci build features flag' (#108) from ci-flag-fix into main
    d3b7e4d ci: --features flag, not --feature
    77400ab chore: bump version to v0.1.0
    4ac80ca Merge pull request 'add matrix chat link to readme' (#106) from matrix-link into main
    8e42e46 docs: add matrix chat link to readme
    96f72ee Merge pull request 'add wiki commands' (#105) from wiki into main
    09d9955 refactor: remove WikiCommand::no_repo_error
    13b7bf5 feat: wiki clone
    de144f2 feat: wiki browse
    a756d1d feat: wiki view
    296ac0c feat: wiki contents
    eadadf8 chore: wiki file
    3e334c7 Merge pull request 'update forgejo-api to v0.4.1' (#104) from api-0.4.1 into main
    288c0cb chore: update forgejo-api to v0.4.1
    da982e0 Merge pull request 'improve help/docs' (#102) from improve-help into main
    ca6d0d8 docs: document --remote
    72800f9 docs: document commands
    227a220 docs: better clap ids
    54fc89c Merge pull request 'update forgejo-api to v0.4.0' (#101) from api-0.4.0 into main
    67f09d8 chore(dep): update forgejo-api to v0.4.0
    0ca2a40 Merge pull request 'repo delete' (#99) from repo-delete into main
    efbefd7 feat: repo delete
    357dcee Merge pull request 'repo create should not take RepoArg for name argument' (#98) from repo-create-name-arg into main
    e77e978 fix: repo create should not take RepoArg for name argument
    121be52 Merge pull request 'update dependencies' (#96) from update-deps into main
    2f2a238 chore: update dependencies
    a835ec3 Merge pull request 'add branch guessing on pr creation' (#95) from pr-branch-guess into main
    af40eb3 feat!: add branch guessing on pr creation
    4a9c9b7 Merge pull request 'print message before reading in readline' (#92) from readline-fix into main
    45ad1d8 fix: print message before reading in readline
    23a345f Merge pull request 'prioritize remote tracking branch in repo detection' (#91) from remote-detect into main
    6fe22f5 fix: prioritize remote tracking branch in repo detection
    1003575 Merge pull request 'read detected pr from correct repo' (#90) from pr-repo-name-fix into main
    e8234b3 fix: read detected pr from correct repo
    0edf5ef Merge pull request 'fix pr detection' (#89) from pr-guess-fix-2 into main
    49b2088 fix: pr detection from branch
    43765c7 Merge pull request 'add pr status' (#88) from pr-status into main
    6c6c07b feat(pr): status command
    d0df1b3 Merge pull request 'update forgejo-api to 0.3.2' (#87) from api-0.3.2 into main
    f3f1f2d chore: update forgejo-api to 0.3.2
    88d5356 Merge pull request 'repo fork command' (#83) from fork into main
    346b7ed feat(repo): fork command
    fd829a5 refactor: RepoArg struct for repo name arguments
    61f5131 Merge pull request 'add user commands' (#86) from user-commands into main
    2466b89 feat(user): listing activities
    5313777 feat(user): editing settings
    38da0e6 feat(user): user search
    2aa4b15 feat(user): list user orgs
    ed4bed4 feat(user): list user repos
    ccf1688 feat(user): blocking and unblocking
    8a34e86 feat(user): following commands
    3a00896 feat(user): user view and user browse
    839a63b chore: user.rs file
    ebcc8b8 Merge pull request 'update forgejo-api to 0.3.0' (#85) from api-0.3.1 into main
    9458c77 chore: update forgejo-api to 0.3.1
    883a201 Merge pull request 'improve look of issues' (#84) from issue-pr-parity into main
    6b78a23 feat(display): bring issue printing to visual parity with PR printing
    02e2747 Merge pull request 'add FJ_FALLBACK_HOST env var' (#82) from host-fallback into main
    9eca2b5 feat: FJ_FALLBACK_HOST
    e68408e Merge pull request 'enable update checking in CI builds' (#81) from deploy-feature into main
    35f0912 chore: enable update-check feature in CI builds
    8dadac2 Merge pull request 'add version command and update checker' (#80) from version into main
    1eaeec7 feat: version command and update checker
    a0bab97 Merge pull request 'fix trailing paragraph newlines in markdown rendering' (#79) from trailing-newline-fix into main
    d060a73 fix(markdown): trailing paragraph newlines
    7a2d622 Merge pull request 'add more success messages' (#78) from success-msg into main
    a0c250f Merge pull request 'fix warnings' (#76) from warnings into main
    56f0e8b add more success messages
    09af9b3 fix warnings
    d10b517 Merge pull request 'print markdown text nicely' (#75) from pretty-text into main
    5a8626c fix first line of blockquote being grey
    45e3565 skip markdown handling for non-fancy output
    8bd72dd nicer markdown printing
    ed58e07 Merge pull request 'guess pr number from commit' (#74) from guess-pr into main
    a0188d9 pr browse opens current pr instead of pr list
    c9ddd94 guess pr number from commit
    9725bb6 Merge pull request 'add fj auth login' (#71) from oauth-login into main
    490a156 include codeberg oauth client info in CI builds
    349c6ad rename LoginInfo::Token to Application
    3ff6a86 implement fj auth login
    c47a24a add oauth token support to keys file
    98a82d0 update to forgejo-api v0.3.0
    aee8b4b Merge pull request 'pull request messages' (#72) from pr-message into main
    9001779 pull request merge messages
    2b9b64d Merge pull request 'improve specifying repo in issue and pr commands' (#70) from simplify-repo-specify into main
    619a17a improve specifying repo in issue and pr commands
    c30f7ad Merge pull request 'authenticate properly in repo clone' (#66) from auth-repo-clone into main
    956415b authenticate properly in repo clone
    b93717a Merge pull request 'add repo clone' (#65) from repo-clone into main
    b262d31 add repo clone
    b168dce Merge pull request 'rename repo info to repo view' (#64) from info-view into main
    20669bf rename repo info to repo view
    5e16810 Merge pull request 'remove outdated comment' (#63) from remove-comment into main
    89b0a2b remove outdated comment
    d7b84de Merge pull request 'fix repo create --push' (#62) from fix-push into main
    85c7d52 Merge pull request 'add repo star and repo unstar' (#61) from star into main
    3a47d94 fix repo create --push
    6687c9e add repo star and repo unstar
    a259a44 Merge pull request 'don't check ignored files when checking for uncommitted changes' (#59) from ignore-ignored into main
    df14392 Merge pull request 'fix pr-browse opening issues list' (#60) from browse-pr-fix into main
    3f212ba fix pr browse opening issues page
    b2eec65 don't check ignored files when checking for uncommitted changes
    85ee804 Merge pull request 'enumerate remotes before checking remote tracking branch' (#57) from adjust-remote-guess into main
    3dec5f9 enumerate remotes before checking remote tracking branch
    8465a4a Merge pull request 'trim title before checks' (#56) from trim-title into main
    142cb36 trim title before checks
    32babc3 Merge pull request 'add pull request commands' (#52) from pr into main
    9c65606 reorder pr commands
    1a839e2 add doc comment to pr::ViewCommand::Commits
    349855e add pr edit _ labels
    7214852 add doc comments to pr commands
    2f9c1a0 add pr view _ labels
    10a36f7 authenticate when fetching pull request
    b42a3c2 make pr view prettier
    9df8f68 add pr checkout
    b425f2b use fancy display in pr viewing
    3583943 display changed lines in pr view
    6fd1976 add pr change viewing commands
    460ac72 add pr commands
    0a30d14 Merge pull request 'add optional fancy output' (#53) from optional-pretty into main
    5ea7cdb add optional fancy output
    4ecb241 guess host from remote tracking branch before enumerating remotes
    a002adc Merge pull request 'cargo update' (#51) from cargo-update into main
    32f9743 cargo update
    a2ae51d Merge pull request 'update to forgejo-api v0.2.0' (#49) from api-0.2.0 into main
    df25728 update to forgejo-api v0.2.0
    36d970f Merge pull request 'use crates.io release of forgejo-api' (#48) from crates-io-api into main
    9e5c205 use crates.io release of forgejo-api
    cbf04f9 Merge pull request 'rename fj user to fj whoami' (#47) from whoami into main
    4ac90b6 rename fj user to fj whoami
    4061f79 Merge pull request 'don't print url scheme in fj user' (#46) from user-no-scheme into main
    5e59305 don't print url scheme in fj user
    a816b88 Merge pull request 'bump version to v0.0.4' (#45) from bump-0.0.4 into main
    c028348 bump version to v0.0.4
    b3db65d Merge pull request 'fix arch typo in readme' (#44) from arch-typo into main
    eb7c1f5 fix arch typo in readme
    1edb769 Merge pull request 'improve readme' (#43) from improve-readme into main
    6f8c924 improve readme
    24ab090 Merge pull request 'run ci build on tag rather than deploy' (#41) from tag-build into main
    6136e1f Merge pull request 'add proper readout for repo info' (#40) from repo-info into main
    88b801a run ci build on tag rather than deploy
    2587bf9 format
    6c08c8a add proper readout for repo info
    7fca58f Merge pull request 'update forgejo-api' (#39) from update-api into main
    38679ad update forgejo-api
    ed7f84e Merge pull request 'improve host url and repo name detection' (#38) from improve-host-detection into main
    c272e9f format
    46cd32e improve host url and repo name detection
    a014a4e Merge pull request 'update to new version of forgejo-api' (#37) from update-api into main
    6cbd80e update to new version of forgejo-api
    4c42632 Merge pull request 'update forgejo-api' (#36) from update-api into main
    68ae2c1 update forgejo-api
    9573940 Merge pull request 'update forgejo-api' (#35) from update-api into main
    b85b939 update forgejo-api
    bbe5536 Merge pull request 'fix key including newline when read from stdin' (#34) from trim-token into main
    43773f1 fix key including newline when read from stdin
    700b8ed Merge pull request 'fix attachment filename' (#30) from attach-fix into main
    8bef41e fix attachment filename
    1bfaec6 Merge pull request 'install certificates in Dockerfile' (#29) from container-certs into main
    7fc7a20 install certificates in Dockerfile
    e69590d Merge pull request '[ci] set FORGE_HOST env var in release step' (#28) from ci-fix into main
    f326e93 [ci] set FORGE_HOST env var in release step
    41035c1 Merge pull request 'forgejo instance agnostic deployment' (#27) from agnostic into main
    444def4 forgejo instance agnostic deployment
    84d5b8d Merge pull request 'fix adding token in ci' (#26) from ci-fix into main
    6ae35a3 fix adding token in ci
    23187f4 Merge pull request 'set repo url when creating release' (#24) from url-remote-ci into main
    f2bb74b use long form flag
    ce62142 set repo url when creating release
    f57dceb Merge pull request 'allow url as remote' (#23) from url-remote into main
    eebf27d allow url as remote
    0d22400 Merge pull request 'do apt update' (#22) from mingw-gcc into main
    07d0a30 do apt update
    99686e8 Merge pull request 'add -y flag' (#21) from mingw-gcc into main
    410c887 add -y flag
    4d8a22c Merge pull request 'install mingw gcc in ci' (#20) from mingw-gcc into main
    20834b7 install mingw gcc
    01a8228 Merge pull request 'update forgejo-api to not use rustls' (#19) from no-rustls into main
    7020f6e update forgejo-api to not use rustls
    2d50075 Merge pull request 'update version number to 0.0.1' (#18) from version-0.0.1 into main
    83e11e4 update version number to 0.0.1
    2a167c3 Merge pull request 'add deployment ci pipeline' (#17) from deploy-ci into main
    8010898 remove versioned container push for now
    4375e9b add deployment pipeline
    086420f Merge pull request 'add dockerfile' (#16) from dockerfile into main
    cce460e install libssl-dev
    eb7058a add dockerfile
    3844a31 Merge pull request 'format' (#15) from fmt into main
    71a63b2 format
    b643936 Merge pull request 'update forgejo-api to version that uses rustls' (#14) from rustls into main
    b842cbc update forgejo-api to version that uses rustls
    358125b Merge pull request 'add release commands' (#13) from releases into main
    a39201f add release commands
    e532aac Merge pull request 'add system for editor-specific flags' (#12) from editor-flags into main
    33367ed fmt
    4a9f524 add system for editor-specific flags
    c4810e3 Merge pull request 'add git remote selection flag' (#10) from select-remote into main
    1f8824d Merge pull request 'add issue search' (#9) from search-issues into main
    87bb4d7 format
    e365cd3 format
    1a9353c add issue search
    68d255d add git remote selection flag
    98e3cce Merge pull request 'add ci' (#8) from ci into main
    5dd4dbb format
    7b63ecd add ci
    ae38211 Merge pull request 'add basic issue commands' (#7) from issues into main
    d8c04f6 add basic issue commands
    be7136b Merge pull request 'fix repo creation pushing' (#6) from push-fix into main
    3a62e2d fix repo create push
    cb0a7d1 set private flag to -P instead of -p to not conflict with push flag
    1c78830 Merge pull request 'add licensing' (#5) from license into main
    e47c58e add licensing
    e18ef78 Merge pull request 'don't look for remote if it obviously won't be there' (#4) from fix-find-remote into main
    8b6a5a6 don't look for remote if it obviously won't be there
    337c575 Merge pull request 'decouple repository info from login info' (#3) from decouple-repo-keys into main
    5999e1e format
    7fc2bf7 fix url issues
    51b180d decouple repo info from key info
    66dd709 fmt
    1a7f0de Merge pull request 'improve organization' (#2) from organize into main
    7a525a5 improve organization
    20514e8 Merge pull request 'move forgejo-api to its own repo' (#1) from api-repo into main
    90084b9 move forgejo-api to its own repo
    af89252 Merge pull request 'praise rustfmt' (#10) from fmt into main
    b569329 praise rustfmt
    9a37f3b Merge pull request 'rework key lookup' (#9) from rework-key-lookup into main
    3dbbcb7 rework key lookup
    7b5dcb8 Merge pull request 'missed a bit in the key file move' (#8) from keys-file into main
    d7b4f64 missed a bit
    f87c12a Merge pull request 'move keys info to new file' (#7) from keys-file into main
    82a53c7 move keys info to new file
    be2f72e fix pushing
    c1806f5 Replace calls to git with git2 crate (#5)
    2c30803 remove unnecessary mut
    ab393f4 better api error
    59a0460 choose upstream name in repo create
    d3fe409 add repo browse
    22aad20 fix push flag
    6b2f762 initial commit

    Downloads