Gitoxide Versions Save

An idiomatic, lean, fast & safe pure Rust implementation of Git

gix-dir-v0.4.1

4 weeks ago

Bug Fixes

  • assure worktree-roots aren't pruned with pathspecs that are never meant for them. Previously, when pathspecs were defined, the classification of the worktree-root would also be using them. This means that depending on the pathspec, worktree-roots would be pruned, which in turn makes it impossible to recurse into them.

    Now pathspecs are disabled when classifying the worktree-root directory.

Commit Statistics

  • 4 commits contributed to the release over the course of 4 calendar days.
  • 5 days passed between releases.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelog prior to gix-dir patch release (6ca6fa6)
    • Assure worktree-roots aren't pruned with pathspecs that are never meant for them. (7f2f3ff)
    • Merge pull request #1345 from EliahKagan/shell-scripts (fe24c89)
    • Add missing +x bit on scripts that are run and not sourced (41bf65a)

gix-worktree-v0.33.1

4 weeks ago

A maintenance release without user-facing changes.

Commit Statistics

  • 3 commits contributed to the release over the course of 4 calendar days.
  • 5 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelog prior to gix-dir patch release (6ca6fa6)
    • Merge pull request #1345 from EliahKagan/shell-scripts (fe24c89)
    • Add missing +x bit on scripts that are run and not sourced (41bf65a)

gix-pathspec-v0.7.4

4 weeks ago

A maintenance release without user-facing changes.

Commit Statistics

  • 3 commits contributed to the release over the course of 4 calendar days.
  • 5 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelog prior to gix-dir patch release (6ca6fa6)
    • Merge pull request #1345 from EliahKagan/shell-scripts (fe24c89)
    • Add missing +x bit on scripts that are run and not sourced (41bf65a)

gix-index-v0.32.1

4 weeks ago

A maintenance release without user-facing changes.

Commit Statistics

  • 3 commits contributed to the release over the course of 4 calendar days.
  • 5 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelog prior to gix-dir patch release (6ca6fa6)
    • Merge pull request #1345 from EliahKagan/shell-scripts (fe24c89)
    • Add missing +x bit on scripts that are run and not sourced (41bf65a)

gix-transport-v0.42.0

1 month ago

Bug Fixes

  • Prevent usernames with leading - from being passed to SSH This detects ambiguous usernames in dangerous cases where they would be passed to external commands to form SSH connections, if they would be misinterpreted as option arguments.

    This change is analogous to https://github.com/Byron/gitoxide/commit/b06a0dd781accad317fdec5f86f069df4c21875c, hardening gix-transport and applications that use it against options smuggled in URLs, but for the non-mandatory username portion of a URL, rather than the host and path portions that were covered there.

    For example, commands like these no longer pass -F... options to ssh:

    gix clone 'ssh://[email protected]/abc' gix clone -- '[email protected]:abc/def'

    Instead, they refuse to run ssh, producing the error:

    Error: Username '-Fconfigfile' could be mistaken for a command-line argument

  • forward curl rustls feature from gix-transport to avoid curl in gix. This removes the curl dependency just for configuring it, and removes a hazard which became evident with reqwest.

Bug Fixes (BREAKING)

Commit Statistics

Commit Details

gix-v0.62.0

1 month ago

Please note that this release contains a security fix originally implemented in gix-transport via this PR which prevents ssh options to be smuggled into the ssh command-line invocation with a username provided to a clone or fetch URL.

Details can be found in the advisory.

Bug Fixes

  • into_index_worktree_iter() now takes an iterator, instead of a Vec. This makes the API more consistent, and one can pass None as well.

  • show submodules in status independently of their active state. Even inactive submodules are shown in the status by git status, so gix should do the same.

    First observed in https://github.com/helix-editor/helix/pull/5645#issuecomment-2016798212

  • forward curl rustls feature from gix-transport to avoid curl in gix. This removes the curl dependency just for configuring it, and removes a hazard which became evident with reqwest.

Bug Fixes (BREAKING)

  • Make topo more similar to Ancestors, but also rename Ancestors to Simple

Commit Statistics

Thanks Clippy

Clippy helped 1 time to make code idiomatic.

Commit Details

v0.35.0

1 month ago

New Features

  • add gix status --ignored support

  • add gix status --index-worktree-renames This enables rename-tracking between worktree and index, something that Git also doesn't do or doesn't do by default. It is, however, available in git2.

  • gix status with submodule and rewrite support. Submodule changes are now picked up as long as the submodule is in the index. Further, it's possible to enable rename-tracking between index and worktree separately.

  • add gix is-clean|is-changed It's a good way to compare the time it takes to run a full status compared to a quick is-dirty check.

  • gix submodules list --dirty-suffix for dirty-information This is a submodule-centric and greatly simplified way of obtaining describe information with dirty-suffix.

    Note that status information is also possible, but it seems hard to display nicely, which this command isn't great at in the first place.

  • add gix commit describe --dirty-suffix That way a suffix will be added depending on the dirty-state of the repository.

Commit Statistics

  • 11 commits contributed to the release over the course of 34 calendar days.
  • 47 days passed between releases.
  • 6 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

  • Uncategorized
    • Merge pull request #1341 from szepeviktor/typos (55f379b)
    • Fix typos (f72ecce)
    • Merge branch 'status' (3e5c974)
    • Add gix status --format to communicate the current format is very simple. (23bea36)
    • Add gix status --ignored support (84c74ff)
    • Add gix status --index-worktree-renames (66e87cd)
    • Fix lints for nightly, and clippy (f8ce3d0)
    • gix status with submodule and rewrite support. (61c002b)
    • Add gix is-clean|is-changed (98b3680)
    • gix submodules list --dirty-suffix for dirty-information (afd20ca)
    • Add gix commit describe --dirty-suffix (58231b4)

gix-v0.61.1

1 month ago

This release also updates reqwest to v0.12, bringing hyper 1.0 and a more recent rustls version.

Bug Fixes

  • missing closing backtick in gix lib documentation

Commit Statistics

  • 7 commits contributed to the release over the course of 2 calendar days.
  • 3 days passed between releases.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelogs prior to release (7018a92)
    • Merge branch 'patch-1' (8fde62b)
    • Turncurl into a workspace package (adee500)
    • Make reqwest a workspace package (369cf1b)
    • Merge pull request #1325 from kdelorey/fix/simple-docs-formatting (3b34699)
    • Fixed opening of backtick in documentation. (f1bc4cd)
    • Missing closing backtick in gix lib documentation (e1fec3c)

gix-transport-v0.41.3

1 month ago

A maintenance release without user-facing changes, but with a reqwest update that uses more recent tls and hyper versions.

Commit Statistics

  • 6 commits contributed to the release over the course of 1 calendar day.
  • 7 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelogs prior to release (7018a92)
    • Merge branch 'patch-1' (8fde62b)
    • Turncurl into a workspace package (adee500)
    • Adjust expectations to deal with reqwest Content-Length (3b8f39d)
    • Make reqwest a workspace package (369cf1b)
    • Bump dep reqwest from 0.11.12 to 0.12.0 (cdb128c)

gix-packetline-v0.17.5

1 month ago

A maintenance release without user-facing changes.

Commit Statistics

  • 2 commits contributed to the release.
  • 7 days passed between releases.
  • 0 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Prepare changelogs prior to release (7018a92)
    • Fix CI (a4af4cb)