Releases: GitoxideLabs/gitoxide
gix-hash v0.13.3
A maintenance release without user-facing changes.
Commit Statistics
- 3 commits contributed to the release over the course of 2 calendar days.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
gix-config v0.32.1
New Features
-
GIT_CONFIG_NOSYSTEM
now also affects the installation directory.
It makes sense to consider it part of the 'system', and allows for proper
isolation ofgix
operations, for example in tests.This is also a fix, as previously it checked for
...NO_SYSTEM
, instead ofNOSYSTEM
.
Commit Statistics
- 2 commits contributed to the release.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
v0.32.0
New Features
-
gix rev parse --format
to provide different versions of the same content.
This only applies to blobs, but allows to obtain different versions of the same blob
like:- what's stored in Git
- what would be checked out to the worktree
- what would be diffed
Bug Fixes
- in
--trace
mode, greatly increase message-buffer size.
That way, it's much less likely that messages will get lost
due to being overwritten before they can be displayed every
100ms or so. - set binary name for completions
Bug Fixes (BREAKING)
- rename
GITOXIDE_*
environment variables toGIX_#
Commit Statistics
- 27 commits contributed to the release over the course of 54 calendar days.
- 54 days passed between releases.
- 10 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
view details
- Uncategorized
- Merge branch 'adjustments-for-cargo' (8156340)
- Rename
GITOXIDE_*
environment variables toGIX_#
(2189cee) - Merge branch 'gix-status' (5fdc9df)
gix rev parse --format
to provide different versions of the same content. (cf51a4d)- J fmt (51c7abc)
- Merge branch 'gix-status' (dfb3f18)
- Adapt to changes in
gix-diff
(1706e23) - Add the
diff::resource_cache()
low-level utility for rapid in-memory diffing of combinations of resources. (4aea9b0) - Merge branch 'support_ssl_verify' (5ce9784)
- In gix read http.sslVerify config value and pass it to gix-transport. (c6e83cf)
- Merge branch 'check-cfg' (5a0d93e)
- Remove dead code from non-existent "lean-cli" feature (be1fa2f)
- Replace all docsrs config by the document-features feature (bb3224c)
- Merge branch 'feat_basic_connectivity_check' (1f9aca5)
- Flatten
fsck connectivity
into justfsck
much likegit fsck
(7ab5c76) - Refactor (7a88b42)
- Add basic connectivity check (8f795e8)
- Merge branch 'fix-1096' (48ef17e)
- Allow to print a tree without prettification, using
--tree-style raw
. (8dfbb4b) - Merge branch 'trace-packetlines' (e7de4c7)
- Automatically enforce strict mode if
-c
options are given on the command-line. (f9ae1bc) - In
--trace
mode, greatly increase message-buffer size. (b230078) - Merge branch 'discover-split-worktree' (16170d9)
- Add
gix free discover
to inform about repository discovery. (886289f) - Merge branch 'fix_completion-bin-name' (fb81093)
- Refactor (7f2bc08)
- Set binary name for completions (eab22bd)
gix-worktree v0.28.0
Changed (BREAKING)
- Use the
gix-object::Find
trait
New Features (BREAKING)
-
Use
&dyn gix_object::Find
where possible.
As otherwise, one cannot use&dyn
at all in this case as it's
unsized.`Additionally, rename top-level
pub use gix_glob
toglob
to be
in-line with other public exports of this kind.
Commit Statistics
- 12 commits contributed to the release over the course of 46 calendar days.
- 54 days passed between releases.
- 2 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
view details
- Uncategorized
- Release gix-date v0.8.1, gix-hash v0.13.2, gix-trace v0.1.4, gix-features v0.36.1, gix-actor v0.28.1, gix-validate v0.8.1, gix-object v0.39.0, gix-path v0.10.1, gix-glob v0.14.1, gix-quote v0.4.8, gix-attributes v0.20.1, gix-command v0.3.0, gix-packetline-blocking v0.17.0, gix-utils v0.1.6, gix-filter v0.7.0, gix-fs v0.8.1, gix-chunk v0.4.5, gix-commitgraph v0.22.1, gix-hashtable v0.4.1, gix-revwalk v0.10.0, gix-traverse v0.35.0, gix-worktree-stream v0.7.0, gix-archive v0.7.0, gix-config-value v0.14.1, gix-tempfile v11.0.1, gix-lock v11.0.1, gix-ref v0.39.0, gix-sec v0.10.1, gix-config v0.32.0, gix-prompt v0.8.0, gix-url v0.25.2, gix-credentials v0.22.0, gix-ignore v0.9.1, gix-bitmap v0.2.8, gix-index v0.27.0, gix-worktree v0.28.0, gix-diff v0.38.0, gix-discover v0.27.0, gix-macros v0.1.1, gix-mailmap v0.20.1, gix-negotiate v0.10.0, gix-pack v0.45.0, gix-odb v0.55.0, gix-pathspec v0.4.1, gix-packetline v0.17.0, gix-transport v0.39.0, gix-protocol v0.42.0, gix-revision v0.24.0, gix-refspec v0.20.0, gix-status v0.3.0, gix-submodule v0.6.0, gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0, safety bump 27 crates (55d386a)
- Prepare changelogs prior to release (d3dcbe5)
- J fmt (51c7abc)
- Merge branch 'gix-status' (dfb3f18)
- Use
&dyn gix_object::Find
where possible. (552bed2) - Merge branch 'check-cfg' (5a0d93e)
- Replace all docsrs config by the document-features feature (bb3224c)
- Merge branch 'gix-object-find' (c8bd660)
- Use the
gix-object::Find
trait (bf1e688) - Adapt to changes in
gix_object
andgix_odb
. (24e319e) - Merge branch 'size-optimization' (c0e72fb)
- Remove CHANGELOG.md from all packages (b65a80b)
gix-worktree-stream v0.7.0
Changed (BREAKING)
- Use the
gix-object::Find
trait
Commit Statistics
- 15 commits contributed to the release over the course of 46 calendar days.
- 54 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 (d3dcbe5)
- J fmt (51c7abc)
- Merge branch 'gix-status' (dfb3f18)
- Adapt to changes in
gix-filter
(1763862) - Merge branch 'improve-filters' (f09ea13)
- Adapt to changes in
gix-filter
(3b71ca5) - Merge branch 'fix-1096' (ff99a18)
- Adapt to changes in
gix-object
(203d69c) - Merge branch 'gix-object-find' (c8bd660)
- Adapt to changes related to usage of
gix-object::Find
trait where necessary (5761a4d) - Use the
gix-object::Find
trait (bf1e688) - Adapt to changes in
gix_object
andgix_odb
. (24e319e) - Merge branch 'size-optimization' (c0e72fb)
- Remove CHANGELOG.md from all packages (b65a80b)
- Assure all crates have includes configured (065ab57)
gix-worktree-state v0.5.0
New Features
- use
gix-object::Find
trait
Commit Statistics
- 12 commits contributed to the release over the course of 46 calendar days.
- 54 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Thanks Clippy
Clippy helped 1 time to make code idiomatic.
Commit Details
view details
- Uncategorized
- Release gix-worktree v0.28.0, gix-diff v0.38.0, gix-discover v0.27.0, gix-macros v0.1.1, gix-mailmap v0.20.1, gix-negotiate v0.10.0, gix-pack v0.45.0, gix-odb v0.55.0, gix-pathspec v0.4.1, gix-packetline v0.17.0, gix-transport v0.39.0, gix-protocol v0.42.0, gix-revision v0.24.0, gix-refspec v0.20.0, gix-status v0.3.0, gix-submodule v0.6.0, gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0 (d3fd11e)
- Release gix-date v0.8.1, gix-hash v0.13.2, gix-trace v0.1.4, gix-features v0.36.1, gix-actor v0.28.1, gix-validate v0.8.1, gix-object v0.39.0, gix-path v0.10.1, gix-glob v0.14.1, gix-quote v0.4.8, gix-attributes v0.20.1, gix-command v0.3.0, gix-packetline-blocking v0.17.0, gix-utils v0.1.6, gix-filter v0.7.0, gix-fs v0.8.1, gix-chunk v0.4.5, gix-commitgraph v0.22.1, gix-hashtable v0.4.1, gix-revwalk v0.10.0, gix-traverse v0.35.0, gix-worktree-stream v0.7.0, gix-archive v0.7.0, gix-config-value v0.14.1, gix-tempfile v11.0.1, gix-lock v11.0.1, gix-ref v0.39.0, gix-sec v0.10.1, gix-config v0.32.0, gix-prompt v0.8.0, gix-url v0.25.2, gix-credentials v0.22.0, gix-ignore v0.9.1, gix-bitmap v0.2.8, gix-index v0.27.0, gix-worktree v0.28.0, gix-diff v0.38.0, gix-discover v0.27.0, gix-macros v0.1.1, gix-mailmap v0.20.1, gix-negotiate v0.10.0, gix-pack v0.45.0, gix-odb v0.55.0, gix-pathspec v0.4.1, gix-packetline v0.17.0, gix-transport v0.39.0, gix-protocol v0.42.0, gix-revision v0.24.0, gix-refspec v0.20.0, gix-status v0.3.0, gix-submodule v0.6.0, gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0, safety bump 27 crates (55d386a)
- Prepare changelogs prior to release (d3dcbe5)
- J fmt (51c7abc)
- Merge branch 'gix-status' (c87f2cc)
- Adapt to changes in
gix-index
(8134767) - Merge branch 'gix-object-find' (c8bd660)
- Thanks clippy (82b01c2)
- Use
gix-object::Find
trait (a81514f) - Adapt to changes in
gix_object
andgix_odb
. (24e319e) - Merge branch 'size-optimization' (c0e72fb)
- Remove CHANGELOG.md from all packages (b65a80b)
gix-validate v0.8.1
A maintenance release without user-facing changes.
Commit Statistics
- 3 commits contributed to the release over the course of 46 calendar days.
- 121 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
gix v0.56.0
New Features
- add
gitoxide.core.externalCommandStderr
to allow enablingstderr
to the enclosing terminal.
Previously, this was enabled by default, now it can additionally be disabled by
the caller. - use
gitoxide.credentials.helperStderr
key to control how stderr is handled with helpers.
That way users can configure each repository instance according to their needs,
with which includes disabling thestderr
of credential helpers. revision::Spec::path_and_mode()
Provide additional information about revspecs for use with
worktree filters.- add key for
diff.external
.
That way it's conceivable that applications correctly run either
a configured external diff tool, or one that is configured on a
per diff-driver basis, while being allowed to fall back to
a built-in implementation as needed. - add the
diff::resource_cache()
low-level utility for rapid in-memory diffing of combinations of resources.
We also add theobject::tree::diff::Platform::for_each_to_obtain_tree_with_cache()
to pass a resource-cache
for re-use between multiple invocation for significant savings. - Add config value gitoxide.http.sslNoVerify
This value can by overriden by GIT_SSL_NO_VERIFY env variable. We use
the value to override http.sslVerify when specifying ssl_verify in
transport Options. - In gix read http.sslVerify config value and pass it to gix-transport.
- add
gitoxide.core.refsNamespace
key and respect theGIT_NAMESPACE
environment variable.
It's also provided as context value. - make
verbose-object-parsing-errors
available ingix
.
That way, it's easy to create programs that are geared towards
debugging repositories and finding invalid objects with detailed
errors. - add the
gitoxide.credentials.terminalPrompt
key to represent the GIT_TERMINAL_PROMPT
That way, it's easy to control the usage of terminals without using and environment. - Add
http-client-curl-rustls
(CLI) andblocking-http-transport-curl-rustls
(lib) features to avoid openssl.
That way, we should be able to avoid crashes on certain CI configurations. - add
Head::try_into_peeled_object()
andHead::peel_to_object_in_place()
This makes it easier to peel to a specific object type, after
all tags have been followed, without having to assume an intermediate
commit.
Bug Fixes
-
assure the correct repository is used for checkouts after clone.
If this is not the case, it's possible for filters to run in the context of
potential parent repositories, which then can have all kinds of issues.In case of
git-lfs
, for instance, it would try to download objects
from the wrong repository. -
Allow multiple packs to be received one after another.
Previously it would be difficult to perform another fetch operation on the
same connection as the final flush packet after a pack wouldn't be consumed.This has now been mitigated by consuming it in the one place where knoweldge
about this specialty exists. -
don't use
trust-dns
by default when using request.
It's reported to have issues under certain condition, please see
seanmonstar/reqwest#437 for more.The
blocking-http-transport-reqwest-rust-tls-trust-dns
feature was added
to provide the same feature-set as before for those who wanttrust-dns
. -
V1 negotiation won't hang anymore
The logic previously tried to estimate when a pack can be expected,
and when a NAK is the end of a block, or the beginning of a pack.This can be known because a pack (with our settings) needs two things:
- the server thinks it's ready
- a
done
sent by the client
New Features (BREAKING)
-
object::blob::diff::Platform
now performs all necessary conversions.
Previously it would just offer the git-ODB version of a blob for diffing,
while it will now make it possible to apply all necessary conversion steps
for you.This also moves
Event::diff()
toChange::diff()
, adds
Repository::diff_resource_cache()
and refactors nearly everything
about theobjects::blob::diff::Platform
. -
generalize rename-tracking engine for later use with status.
Previously the rename tracking engine was integrated with tree-diffs,
but already operates in a stand-alone fashion.
Now it's officially generalized which allows it to be tested separately
and used when tracking renames for diffs between index and tree, index
and index, and index and worktree. -
make it possible to trace incoming and outgoing packetlines.
Due to the way this is (and has to be) setup, unfortunately one
has to integrate that with two crates, instead of just one.This changes touches multiple crates, most of which receive a single
boolean as last argument to indicate whether the tracing should
happen in the first place. -
improve
head()
peeling API
Previously it was partially untested and it was hard to obtain an object of choice.Further breaking changes:
- rename
Head::peeled()
tointo_peeled_id()
- rename
- rename
Head::into_fully_peeled_id()
totry_peel_into_id()
- rename
Head::peel_to_id_in_place()
toHead::try_peel_to_id_in_place()
Bug Fixes (BREAKING)
- rename
GITOXIDE_*
environment variables toGIX_#
- Remove unsafe transmute of should_interrupt
Adds a lifetime to the ExtendedBufRead trait to specify how long the
callback provided must live.
Commit Statistics
- 68 commits contributed to the release over the course of 53 calendar days.
- 54 days passed between releases.
- 23 commits were understood as conventional.
- 6 unique issues were worked on: #1061, #1076, #1090, #1125, #1129, #972
Thanks Clippy
Clippy helped 1 time to make code idiomatic.
Commit Details
view details
- #1061
- V1 negotiation won't hang anymore (6295dec)
- #1076
- Don't use
trust-dns
by default when using request. (8d9296f)
- Don't use
- #1090
- Add the
gitoxide.credentials.terminalPrompt
key to represent the GIT_TERMINAL_PROMPT (e95bb9f)
- Add the
- #1125
- Fix;
SnapshotMut::set_value()
now sets values for keys in subsections as well. (d8452a0)
- Fix;
- #1129
- Assure the correct repository is used for checkouts after clone. (0b3eb14)
- #972
- Allow multiple packs to be received one after another. (3ff1827)
- Uncategorized
- Release gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0 (c8568b9)
- Release gix-worktree v0.28.0, gix-diff v0.38.0, gix-discover v0.27.0, gix-macros v0.1.1, gix-mailmap v0.20.1, gix-negotiate v0.10.0, gix-pack v0.45.0, gix-odb v0.55.0, gix-pathspec v0.4.1, gix-packetline v0.17.0, gix-transport v0.39.0, gix-protocol v0.42.0, gix-revision v0.24.0, gix-refspec v0.20.0, gix-status v0.3.0, gix-submodule v0.6.0, gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0 (d3fd11e)
- Release gix-date v0.8.1, gix-hash v0.13.2, gix-trace v0.1.4, gix-features v0.36.1, gix-actor v0.28.1, gix-validate v0.8.1, gix-object v0.39.0, gix-path v0.10.1, gix-glob v0.14.1, gix-quote v0.4.8, gix-attributes v0.20.1, gix-command v0.3.0, gix-packetline-blocking v0.17.0, gix-utils v0.1.6, gix-filter v0.7.0, gix-fs v0.8.1, gix-chunk v0.4.5, gix-commitgraph v0.22.1, gix-hashtable v0.4.1, gix-revwalk v0.10.0, gix-traverse v0.35.0, gix-worktree-stream v0.7.0, gix-archive v0.7.0, gix-config-value v0.14.1, gix-tempfile v11.0.1, gix-lock v11.0.1, gix-ref v0.39.0, gix-sec v0.10.1, gix-config v0.32.0, gix-prompt v0.8.0, gix-url v0.25.2, gix-credentials v0.22.0, gix-ignore v0.9.1, gix-bitmap v0.2.8, gix-index v0.27.0, gix-worktree v0.28.0, gix-diff v0.38.0, gix-discover v0.27.0, gix-macros v0.1.1, gix-mailmap v0.20.1, gix-negotiate v0.10.0, gix-pack v0.45.0, gix-odb v0.55.0, gix-pathspec v0.4.1, gix-packetline v0.17.0, gix-transport v0.39.0, gix-protocol v0.42.0, gix-revision v0.24.0, gix-refspec v0.20.0, gix-status v0.3.0, gix-submodule v0.6.0, gix-worktree-state v0.5.0, gix v0.56.0, gix-fsck v0.1.0, gitoxide-core v0.34.0, gitoxide v0.32.0, safety bump 27 crates (55d386a)
- Prepare changelogs prior to release (d3dcbe5)
- Merge branch 'adjustments-for-cargo' (8156340)
- Add
gitoxide.core.externalCommandStderr
to allow enablingstderr
to the enclosing terminal. (2762724) - Use
gitoxide.credentials.helperStderr
key to control how stderr is handled with helpers. (6cf73a4) - Rename
GITOXIDE_*
environment variables toGIX_#
(2189cee) - Merge branch 'gix-status' (5fdc9df)
- Merge branch 'remove-unsafe' (d2ba97c)
- Remove unsafe transmute of should_interrupt (88f8b34)
revision::Spec::path_and_mode()
(77686db)- J fmt (51c7abc)
- Merge branch 'gix-status' (dfb3f18)
- Adapt to changes in
gix-diff
(1706e23) object::blob::diff::Platform
now performs all necessary conversions. (4743212)- Add key for
diff.external
. (6f4bbc3) - Add the
diff::resource_cache()
low-level utility for rapid in-memory diffing of combinations of resources. (4aea9b0) - Merge branch 'support_ssl_verify' (5ce9784)
- Refactor (ead00e9)
- Add config value gitoxide.http.sslNoVerify (dd575cd)
- In gix read http.sslVerify config value and pass it to gix-transport. (c6e83cf)
- Merge pull request #1140 from bittrance/fix-pr1127 (698caaa)
- Connect new gitoxide.credentials subsection into section tree. (8b8704f)
- Adapt to changes in
gix-filter
(1763862) - Merge branch 'improve-filters' (f09ea13)
- Add
gitoxide.core.refsNamespace
key and respect theGIT_NAMESPACE
environment variable. ...
gix-utils v0.1.6
New Features
- Add
Buffers
type.
It allows to more easily manage a form of 'double buffering'
to better manage conditional alteration of a source buffer,
and to implement conversion pipelines which conditionally
transform an input over multiple steps.
Commit Statistics
- 6 commits contributed to the release over the course of 46 calendar days.
- 137 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
gix-url v0.25.2
Bug Fixes
- specify minimum required
url
version of v2.2.0.
Note that this is also the minimal required version that is resolved
withcargo +nightly update -Z minimal-versions
, but it's nothing
I could validate or reproduce myself just yet.
Commit Statistics
- 15 commits contributed to the release over the course of 52 calendar days.
- 53 days passed between releases.
- 1 commit was understood as conventional.
- 2 unique issues were worked on: #1082, #1119
Commit Details
view details
- #1082
- Add new test-case to reproduce gix-url failure in debug mode only (d78f445)
- #1119
- Specify minimum required
url
version of v2.2.0. (ee47fba)
- Specify minimum required
- Uncategorized
- Prepare changelogs prior to release (d3dcbe5)
- J fmt (51c7abc)
- Merge branch 'gix-status' (dfb3f18)
- Merge branch 'check-cfg' (5a0d93e)
- Replace all docsrs config by the document-features feature (bb3224c)
- Add another failing gix-url test-case found by the fuzzer. (9158ffc)
- Merge branch 'size-optimization' (c0e72fb)
- Remove CHANGELOG.md from all packages (b65a80b)
- Merge branch 'url-set-password' (650461c)
- Add test for password and user access (6b10245)
- Allow changing URL password. (4ba43ac)
- Merge branch 'fuzz' (c5a7e66)
- Add a new failure case which doesn't reproduce (bc82f8f)