New Features
gix index entries
also prints attributes.- add
Repository::attributes()
andWorktree::attributes()
. - add
index.threads
configuration togix::config::tree
- Before writing new objects, check if they exist.
That way we safe expensive IO at the cost of some CPU. - add
Object::into_tag()
andTag::decode()
methods.
This makes the API more symmetric as similar methods exist for commits
and trees. - Allow
USE_NSEC
andUSE_STDEV
compile time flags to configured at runtime.
Right now git may be compiled without these capabilities, even though on some platforms
it might make perfect sense to enable them by default or enable them on a per repository
basis. This is now possible thanks to added gitoxide specific functions. open::Options
now allow controlling where gitattributes files are loaded from.
That way it's possible to, for example, isolate all operations that rely on thegitattribute
system, like checkouts or additions to the index.revision::walk::Platform::selected(filter)
to selectively prune parts of the commit graph.
Bug Fixes
- When removing all shallow commits from shallow file, delete it.
Previously it would leave an empty file, which will be ignored by the implementation
but might be confusing to users. gix::open()
can handle bare repositories with index.
These are mis-classified as non-bare repository, which previosuly
caused it to get off-track.
New Features (BREAKING)
-
add
Repository::excludes()
and simplify signature ofWorktree::excludes()
.
Further, this change removes thepermission
module without replacement,
and movespermissions
intoopen
.This corrects an artifact of this crate previously being name
gix-repository
and brings
these types semantically closer to where they are actually used. -
support configuring the connection (i.e. for auth) during clone.
This change also removes the generic type for Progress fromConnection
which forces it to be passed to every potentially long-running method. -
Rename
serde1
cargo feature toserde
and use the weak-deps cargo capability.
With it it's possible to not automatically declare all optional dependencies externally visible
features, and thus re-use feature names that oterwise are also a crate name.Previously I thought that
serde1
is for future-proofing and supporting multiple serde versions
at the same time. However, it's most definitely a burden I wouldn't want anyway, so using
serde
seems to be the way to go into the future. -
remove types that are now available in
gix-os
Commit Statistics
- 47 commits contributed to the release over the course of 26 calendar days.
- 27 days passed between releases.
- 14 commits were understood as conventional.
- 2 unique issues were worked on: #801, #814
Thanks Clippy
Clippy helped 1 time to make code idiomatic.
Commit Details
view details
- #801
revision::walk::Platform::selected(filter)
to selectively prune parts of the commit graph. (ec93f75)
- #814
- Rename
serde1
cargo feature toserde
and use the weak-deps cargo capability. (b83ee36)
- Rename
- Uncategorized
- Release gix-index v0.16.0, gix-mailmap v0.12.0, gix-pack v0.34.0, gix-odb v0.44.0, gix-packetline v0.16.0, gix-transport v0.30.0, gix-protocol v0.31.0, gix-revision v0.13.0, gix-refspec v0.10.0, gix-worktree v0.16.0, gix v0.44.0 (d7173b2)
- Release gix-index v0.16.0, gix-mailmap v0.12.0, gix-pack v0.34.0, gix-odb v0.44.0, gix-packetline v0.16.0, gix-transport v0.30.0, gix-protocol v0.31.0, gix-revision v0.13.0, gix-refspec v0.10.0, gix-worktree v0.16.0, gix v0.44.0 (e4df557)
- Release gix-hash v0.11.1, gix-path v0.7.4, gix-glob v0.6.0, gix-attributes v0.11.0, gix-config-value v0.11.0, gix-fs v0.1.1, gix-tempfile v5.0.3, gix-utils v0.1.1, gix-lock v5.0.1, gix-object v0.29.1, gix-ref v0.28.0, gix-sec v0.7.0, gix-config v0.21.0, gix-prompt v0.4.0, gix-url v0.17.0, gix-credentials v0.13.0, gix-diff v0.29.0, gix-discover v0.17.0, gix-hashtable v0.2.0, gix-ignore v0.1.0, gix-bitmap v0.2.3, gix-traverse v0.25.0, gix-index v0.16.0, gix-mailmap v0.12.0, gix-pack v0.34.0, gix-odb v0.44.0, gix-packetline v0.16.0, gix-transport v0.30.0, gix-protocol v0.31.0, gix-revision v0.13.0, gix-refspec v0.10.0, gix-worktree v0.16.0, gix v0.44.0, safety bump 7 crates (91134a1)
- Prepare changelogs prior to release (30a1a71)
- When removing all shallow commits from shallow file, delete it. (2cd5054)
- Merge branch 'index-entries-attrs' (f37a930)
gix index entries
also prints attributes. (08e8fc2)- Adjust to changes in
gix-worktree
(27a39ca) - Add
Repository::attributes()
andWorktree::attributes()
. (bc28443) - Add
Repository::excludes()
and simplify signature ofWorktree::excludes()
. (26e6a66) - Add
index.threads
configuration togix::config::tree
(40a1b74) - Adjust to changes in
gix-worktree
(f722d6b) - Merge branch 'attributes-cache' (3456c84)
- Adjust to changes in
gix-worktree
(13a070f) - Merge branch 'fix-823' (6ebd61e)
gix::open()
can handle bare repositories with index. (43f695a)- Thanks clippy (14e64e7)
- Merge branch 'clone-auth' (1a65308)
- Support configuring the connection (i.e. for auth) during clone. (cb34376)
- Merge branch 'fix-819' (69faad0)
- Before writing new objects, check if they exist. (afe7faa)
- Add
Object::into_tag()
andTag::decode()
methods. (037f52d) - Release gix-utils v0.1.0, gix-hash v0.11.0, gix-date v0.5.0, gix-features v0.29.0, gix-actor v0.20.0, gix-object v0.29.0, gix-archive v0.1.0, gix-fs v0.1.0, safety bump 25 crates (8dbd0a6)
- Support native zlib-ng via flate2's zlib-ng feature (9a6e0d7)
- Make fmt (5d2b5d0)
- Merge branch 'main' into dev (cdef398)
- Minor adjustments to the worktree structure. (8920229)
- Rename the serde1 feature to serde (19338d9)
- Create new
gix-fs
crate to consolidate all filesystem utilities (f8cc33c) - Allow
USE_NSEC
andUSE_STDEV
compile time flags to configured at runtime. (35cb6b4) - Merge branch 'main' into dev (23ee47f)
- Merge branch 'worktree-stack' (3d47919)
open::Options
now allow controlling where gitattributes files are loaded from. (358500f)- Adjust to changes in
gix-attributes
(1755c81) - Remove types that are now available in
gix-os
(b645d28) - Refactor (0677406)
- Centralize index entry Stat creation/comparison (870bdb2)
- Release gix-hash v0.10.4, gix-hashtable v0.1.3 (b574a39)
- Merge branch 'patch-1' (b02bf24)
- Add test to run tests on 32 bit systems (fb31ee8)
- Merge branch 'patch-1' (d0052c1)
- Upgrade serial-test to v2 (6932017)
- Release gix-revision v0.12.2 (ec64a88)
- Merge branch 'fix-801' (a884121)
- Prevent env-altering tests to affect shallow tests (61eec5a)