Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.26.0 (2023-10-12)
Bug Fixes (BREAKING)
- use
PathStorageRef
in place of &PathStorage
Commit Statistics
- 8 commits contributed to the release over the course of 13 calendar days.
- 17 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Prepare changelogs prior to release (
1347a54
) - Merge branch ‘fix-input’ (
a899f74
) - Assure a prefixed entries range is never empty. (
357ba13
) - Fix docs (
995bc84
) - Merge branch ‘reset’ (
b842691
) - Use
PathStorageRef
in place of &PathStorage
(a1794b5
) - Add more traces to potentially longer-running operations (
1568948
) - Adapt to
gix-features
(9e7c3e1
)
0.25.0 (2023-09-24)
New Features
- add trace for
State::from_tree()
as it's rather time-consuming
Bug Fixes
- make time conversion more robust Previously it could easily fail if very old files are found, or future ones. Instead, such entries simply can't be compared quickly.
Commit Statistics
- 5 commits contributed to the release over the course of 1 calendar day.
- 16 days passed between releases.
- 2 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-features v0.35.0, gix-actor v0.27.0, gix-object v0.37.0, gix-glob v0.13.0, gix-attributes v0.19.0, gix-filter v0.5.0, gix-fs v0.7.0, gix-commitgraph v0.21.0, gix-revwalk v0.8.0, gix-traverse v0.33.0, gix-worktree-stream v0.5.0, gix-archive v0.5.0, gix-tempfile v10.0.0, gix-lock v10.0.0, gix-ref v0.37.0, gix-config v0.30.0, gix-url v0.24.0, gix-credentials v0.20.0, gix-diff v0.36.0, gix-discover v0.25.0, gix-ignore v0.8.0, gix-index v0.25.0, gix-mailmap v0.19.0, gix-negotiate v0.8.0, gix-pack v0.43.0, gix-odb v0.53.0, gix-pathspec v0.3.0, gix-transport v0.37.0, gix-protocol v0.40.0, gix-revision v0.22.0, gix-refspec v0.18.0, gix-status v0.1.0, gix-submodule v0.4.0, gix-worktree v0.26.0, gix-worktree-state v0.3.0, gix v0.54.0, gitoxide-core v0.32.0, gitoxide v0.30.0, safety bump 37 crates (
7891fb1
) - Prepare changelogs prior to release (
8a60d5b
) - Merge branch ‘reset’ (
54a8495
) - Make time conversion more robust (
fd034e0
) - Add trace for
State::from_tree()
as it's rather time-consuming (959dc17
)
0.24.0 (2023-09-08)
Bug Fixes (BREAKING)
- use
dyn
trait where possible. This reduces compile time due to avoiding duplication.
Commit Statistics
- 7 commits contributed to the release over the course of 6 calendar days.
- 7 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.8.0, gix-hash v0.13.0, gix-features v0.34.0, gix-actor v0.26.0, gix-object v0.36.0, gix-path v0.10.0, gix-glob v0.12.0, gix-attributes v0.18.0, gix-packetline-blocking v0.16.6, gix-filter v0.4.0, gix-fs v0.6.0, gix-commitgraph v0.20.0, gix-hashtable v0.4.0, gix-revwalk v0.7.0, gix-traverse v0.32.0, gix-worktree-stream v0.4.0, gix-archive v0.4.0, gix-config-value v0.14.0, gix-tempfile v9.0.0, gix-lock v9.0.0, gix-ref v0.36.0, gix-sec v0.10.0, gix-config v0.29.0, gix-prompt v0.7.0, gix-url v0.23.0, gix-credentials v0.19.0, gix-diff v0.35.0, gix-discover v0.24.0, gix-ignore v0.7.0, gix-index v0.24.0, gix-macros v0.1.0, gix-mailmap v0.18.0, gix-negotiate v0.7.0, gix-pack v0.42.0, gix-odb v0.52.0, gix-pathspec v0.2.0, gix-packetline v0.16.6, gix-transport v0.36.0, gix-protocol v0.39.0, gix-revision v0.21.0, gix-refspec v0.17.0, gix-submodule v0.3.0, gix-worktree v0.25.0, gix-worktree-state v0.2.0, gix v0.53.0, safety bump 39 crates (
8bd0456
) - Prepare changelogs for release (
375db06
) - Merge branch ‘optimizations’ (
6135a5e
) - Optimize internal
gix
usage for faster compile time (9d33e2f
) - Merge branch
dyn
ification (f658fcc
) - Use
dyn
trait where possible. (072ee32
) - Merge branch ‘adjustments-for-cargo’ (
b7560a2
)
0.23.1 (2023-09-01)
Bug Fixes
-
prefixed_entries_range()
now works correctly with directory prefixes. Previously, not all directory prefixes would work as expected due to incorrect search criteria.
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
- Uncategorized
- Release gix-index v0.23.1 (
11b9c71
) prefixed_entries_range()
now works correctly with directory prefixes. (6a8314b
)
0.23.0 (2023-09-01)
New Features
- add
State::prefixed_range()
to obtain a range of entries matching a prefix. This makes it easier to make changes to entries of a certain prefix. - add
State::remove_entries()
and entry_range()
. This makes it possible to, among other things, delete all occurrences of a particular entry. - add support for
write::Options::skip_hash
. With it, a hash will not be produced for indices.
Bug Fixes
-
gix-index
prefix matching should now work correctly with conflicting files. It was done in a rush and lacks a lot of tests. At least now it has a greater chance of working, as tests that would truly validate this are still missing for a lack of test date. It can be produced with git update-index
, but it wasn't yet worth it.
New Features (BREAKING)
- Check the hash when reading via
File::at()
just like git
, or skip the check. Note that indices written with index.skipHash=true
will be vastly faster to read by a factor of 2 or more.
Bug Fixes (BREAKING)
- skip the null-hash when validating the index. This is needed for compatibility with
index.skipHash
, which may skip producing the hash at the end of the index file, just filling in the null-hash.
Commit Statistics
- 10 commits contributed to the release over the course of 9 calendar days.
- 9 days passed between releases.
- 6 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates (
3be2b1c
) - Prepare
gix-index
release (6fdbc66
) - Add
State::prefixed_range()
to obtain a range of entries matching a prefix. (cfbfa43
) - Add
State::remove_entries()
and entry_range()
. (8b689c2
) gix-index
prefix matching should now work correctly with conflicting files. (6169325
)- Merge branch ‘fixes’ (
4bfd1cc
) - Check the hash when reading via
File::at()
just like git
, or skip the check. (61c2e34
) - Add support for
write::Options::skip_hash
. (2f42132
) - Skip the null-hash when validating the index. (
b310d04
) - Merge branch ‘gix-submodule’ (
363ee77
)
0.22.0 (2023-08-22)
Chore
- split tests off into their own crate to allow feature toggles. That way we can test with the
parallel
feature and won't have to create bogus feature toggles that are only used for testing, yet visbible to users.
New Features
- add
entry::Mode::is_submodule()
- add
State::prefixed_entries()
returning a range of entries with a given prefix. This is useful to limit entry traversal and thus do less work.
Commit Statistics
- 13 commits contributed to the release over the course of 18 calendar days.
- 30 days passed between releases.
- 3 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-url v0.22.0, gix-credentials v0.18.0, gix-diff v0.34.0, gix-discover v0.23.0, gix-ignore v0.6.0, gix-bitmap v0.2.7, gix-index v0.22.0, gix-mailmap v0.17.0, gix-negotiate v0.6.0, gix-pack v0.41.0, gix-odb v0.51.0, gix-pathspec v0.1.0, gix-packetline v0.16.5, gix-transport v0.35.0, gix-protocol v0.38.0, gix-revision v0.20.0, gix-refspec v0.16.0, gix-submodule v0.2.0, gix-worktree v0.24.0, gix-worktree-state v0.1.0, gix v0.52.0, gitoxide-core v0.31.0, gitoxide v0.29.0 (
6c62e74
) - Release gix-date v0.7.3, gix-hash v0.12.0, gix-features v0.33.0, gix-actor v0.25.0, gix-object v0.35.0, gix-path v0.9.0, gix-glob v0.11.0, gix-quote v0.4.7, gix-attributes v0.17.0, gix-command v0.2.9, gix-packetline-blocking v0.16.5, gix-filter v0.3.0, gix-fs v0.5.0, gix-commitgraph v0.19.0, gix-hashtable v0.3.0, gix-revwalk v0.6.0, gix-traverse v0.31.0, gix-worktree-stream v0.3.0, gix-archive v0.3.0, gix-config-value v0.13.0, gix-tempfile v8.0.0, gix-lock v8.0.0, gix-ref v0.35.0, gix-sec v0.9.0, gix-config v0.28.0, gix-prompt v0.6.0, gix-url v0.22.0, gix-credentials v0.18.0, gix-diff v0.34.0, gix-discover v0.23.0, gix-ignore v0.6.0, gix-bitmap v0.2.7, gix-index v0.22.0, gix-mailmap v0.17.0, gix-negotiate v0.6.0, gix-pack v0.41.0, gix-odb v0.51.0, gix-pathspec v0.1.0, gix-packetline v0.16.5, gix-transport v0.35.0, gix-protocol v0.38.0, gix-revision v0.20.0, gix-refspec v0.16.0, gix-submodule v0.2.0, gix-worktree v0.24.0, gix-worktree-state v0.1.0, gix v0.52.0, gitoxide-core v0.31.0, gitoxide v0.29.0, safety bump 41 crates (
30b2761
) - Update changelogs prior to release (
f23ea88
) - Merge branch ‘gix-submodule’ (
8f3f358
) - More cleanup of test crates (
73c685a
) - Split tests off into their own crate to allow feature toggles. (
93feea2
) - Merge branch ‘submodule-in-gix’ (
36f7b78
) - Add
entry::Mode::is_submodule()
(5fd6364
) - Merge branch ‘pathspec-matching’ (
9f4dfe0
) - Add
State::prefixed_entries()
returning a range of entries with a given prefix. (05ed965
) - Release gix-glob v0.10.2, gix-date v0.7.2, gix-validate v0.8.0, gix-object v0.34.0, gix-ref v0.34.0, gix-config v0.27.0, gix-commitgraph v0.18.2, gix-revwalk v0.5.0, gix-revision v0.19.0, gix-refspec v0.15.0, gix-submodule v0.1.0, safety bump 18 crates (
4604f83
) - Merge branch ‘dev-on-linux’ (
6b4a303
) - Fix various tests to run properly on linux (
ef8ccd9
)
0.21.1 (2023-07-22)
A maintenance release without user-facing changes.
Commit Statistics
- 9 commits contributed to the release over the course of 1 calendar day.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-diff v0.33.1, gix-discover v0.22.1, gix-ignore v0.5.1, gix-bitmap v0.2.6, gix-index v0.21.1, gix-mailmap v0.16.1, gix-negotiate v0.5.1, gix-pack v0.40.1, gix-odb v0.50.1, gix-packetline v0.16.4, gix-transport v0.34.1, gix-protocol v0.36.1, gix-revision v0.18.1, gix-refspec v0.14.1, gix-worktree v0.23.0, gix v0.50.0 (
0062971
) - Release gix-tempfile v7.0.2, gix-utils v0.1.5, gix-lock v7.0.2, gix-ref v0.33.1, gix-sec v0.8.4, gix-prompt v0.5.4, gix-url v0.21.1, gix-credentials v0.17.1, gix-diff v0.33.1, gix-discover v0.22.1, gix-ignore v0.5.1, gix-bitmap v0.2.6, gix-index v0.21.1, gix-mailmap v0.16.1, gix-negotiate v0.5.1, gix-pack v0.40.1, gix-odb v0.50.1, gix-packetline v0.16.4, gix-transport v0.34.1, gix-protocol v0.36.1, gix-revision v0.18.1, gix-refspec v0.14.1, gix-worktree v0.23.0, gix v0.50.0 (
107a64e
) - Release gix-features v0.32.1, gix-actor v0.24.1, gix-validate v0.7.7, gix-object v0.33.1, gix-path v0.8.4, gix-glob v0.10.1, gix-quote v0.4.6, gix-attributes v0.16.0, gix-command v0.2.8, gix-packetline-blocking v0.16.4, gix-filter v0.2.0, gix-fs v0.4.1, gix-chunk v0.4.4, gix-commitgraph v0.18.1, gix-hashtable v0.2.4, gix-revwalk v0.4.1, gix-traverse v0.30.1, gix-worktree-stream v0.2.0, gix-archive v0.2.0, gix-config-value v0.12.5, gix-tempfile v7.0.1, gix-utils v0.1.5, gix-lock v7.0.2, gix-ref v0.33.1, gix-sec v0.8.4, gix-prompt v0.5.4, gix-url v0.21.1, gix-credentials v0.17.1, gix-diff v0.33.1, gix-discover v0.22.1, gix-ignore v0.5.1, gix-bitmap v0.2.6, gix-index v0.21.1, gix-mailmap v0.16.1, gix-negotiate v0.5.1, gix-pack v0.40.1, gix-odb v0.50.1, gix-packetline v0.16.4, gix-transport v0.34.1, gix-protocol v0.36.1, gix-revision v0.18.1, gix-refspec v0.14.1, gix-worktree v0.23.0, gix v0.50.0, safety bump 5 crates (
16295b5
) - Prepare more changelogs (
c4cc5f2
) - Release gix-date v0.7.1, gix-hash v0.11.4, gix-trace v0.1.3, gix-features v0.32.0, gix-actor v0.24.0, gix-validate v0.7.7, gix-object v0.33.0, gix-path v0.8.4, gix-glob v0.10.0, gix-quote v0.4.6, gix-attributes v0.15.0, gix-command v0.2.7, gix-packetline-blocking v0.16.3, gix-filter v0.1.0, gix-fs v0.4.0, gix-chunk v0.4.4, gix-commitgraph v0.18.0, gix-hashtable v0.2.4, gix-revwalk v0.4.0, gix-traverse v0.30.0, gix-worktree-stream v0.2.0, gix-archive v0.2.0, gix-config-value v0.12.4, gix-tempfile v7.0.1, gix-utils v0.1.5, gix-lock v7.0.2, gix-ref v0.33.0, gix-sec v0.8.4, gix-prompt v0.5.3, gix-url v0.21.0, gix-credentials v0.17.0, gix-diff v0.33.0, gix-discover v0.22.0, gix-ignore v0.5.0, gix-bitmap v0.2.6, gix-index v0.21.0, gix-mailmap v0.16.0, gix-negotiate v0.5.0, gix-pack v0.40.0, gix-odb v0.50.0, gix-packetline v0.16.4, gix-transport v0.34.0, gix-protocol v0.36.0, gix-revision v0.18.0, gix-refspec v0.14.0, gix-worktree v0.22.0, gix v0.49.1 (
5cb3589
) - Update changelogs prior to release (
2fc66b5
) - Merge branch ‘gix-archive’ (
1dda48b
) - Use new
gix-fs
capabilities (1c1d19b
) - Update license field following SPDX 2.1 license expression standard (
9064ea3
)
0.21.0 (2023-07-19)
New Features
-
State::entry_by_path_ours()
to find an entry which is either stage 0 or stage 2. This is the preferred way of accessing entries for lookup in the object database as it will also work while merges are ongoing, returning the correct object accordingly.
Commit Statistics
- 7 commits contributed to the release over the course of 11 calendar days.
- 19 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-filter v0.1.0, gix-ignore v0.5.0, gix-revwalk v0.4.0, gix-traverse v0.30.0, gix-index v0.21.0, gix-mailmap v0.16.0, gix-negotiate v0.5.0, gix-pack v0.40.0, gix-odb v0.50.0, gix-transport v0.34.0, gix-protocol v0.36.0, gix-revision v0.18.0, gix-refspec v0.14.0, gix-worktree v0.22.0, gix v0.49.0 (
4aca8c2
) - Release gix-features v0.32.0, gix-actor v0.24.0, gix-glob v0.10.0, gix-attributes v0.15.0, gix-commitgraph v0.18.0, gix-config-value v0.12.4, gix-fs v0.4.0, gix-object v0.33.0, gix-ref v0.33.0, gix-config v0.26.0, gix-command v0.2.7, gix-url v0.21.0, gix-credentials v0.17.0, gix-diff v0.33.0, gix-discover v0.22.0, gix-filter v0.1.0, gix-ignore v0.5.0, gix-revwalk v0.4.0, gix-traverse v0.30.0, gix-index v0.21.0, gix-mailmap v0.16.0, gix-negotiate v0.5.0, gix-pack v0.40.0, gix-odb v0.50.0, gix-transport v0.34.0, gix-protocol v0.36.0, gix-revision v0.18.0, gix-refspec v0.14.0, gix-worktree v0.22.0, gix v0.49.0 (
68ae3ff
) - Adjust package versions (by cargo-smart-release) (
c70e54f
) - Prepare changelogs prior to release (
e4dded0
) - Merge branch ‘integrate-filtering’ (
b19a56d
) - Assure we run all tests in nextest (
3821089
) State::entry_by_path_ours()
to find an entry which is either stage 0 or stage 2. (20c0d25
)
0.20.0 (2023-06-29)
A maintenance release without user-facing changes.
Commit Statistics
- 3 commits contributed to the release over the course of 6 calendar days.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.7.0, gix-trace v0.1.2, gix-actor v0.23.0, gix-commitgraph v0.17.1, gix-utils v0.1.4, gix-object v0.32.0, gix-ref v0.32.0, gix-config v0.25.0, gix-diff v0.32.0, gix-discover v0.21.0, gix-hashtable v0.2.3, gix-revwalk v0.3.0, gix-traverse v0.29.0, gix-index v0.20.0, gix-mailmap v0.15.0, gix-negotiate v0.4.0, gix-pack v0.39.0, gix-odb v0.49.0, gix-protocol v0.35.0, gix-revision v0.17.0, gix-refspec v0.13.0, gix-worktree v0.21.0, gix v0.48.0, safety bump 20 crates (
27e8c18
) - Prepare changelogs prior to release (
00f96fb
) - Upgrade memmap2 and fastrand dependencies (
6fc7497
)
0.19.0 (2023-06-22)
New Features
- provide basic
tracing
spans for common operations. This is just the beginning and more crates will integrate with it over time.
Commit Statistics
- 7 commits contributed to the release over the course of 5 calendar days.
- 12 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.6.0, gix-hash v0.11.3, gix-trace v0.1.1, gix-features v0.31.0, gix-actor v0.22.0, gix-path v0.8.2, gix-glob v0.9.0, gix-quote v0.4.5, gix-attributes v0.14.0, gix-chunk v0.4.3, gix-commitgraph v0.17.0, gix-config-value v0.12.2, gix-fs v0.3.0, gix-tempfile v7.0.0, gix-utils v0.1.3, gix-lock v7.0.0, gix-validate v0.7.6, gix-object v0.31.0, gix-ref v0.31.0, gix-sec v0.8.2, gix-config v0.24.0, gix-command v0.2.6, gix-prompt v0.5.2, gix-url v0.20.0, gix-credentials v0.16.0, gix-diff v0.31.0, gix-discover v0.20.0, gix-hashtable v0.2.2, gix-ignore v0.4.0, gix-bitmap v0.2.5, gix-revwalk v0.2.0, gix-traverse v0.28.0, gix-index v0.19.0, gix-mailmap v0.14.0, gix-negotiate v0.3.0, gix-pack v0.38.0, gix-odb v0.48.0, gix-packetline v0.16.3, gix-transport v0.33.0, gix-protocol v0.34.0, gix-revision v0.16.0, gix-refspec v0.12.0, gix-worktree v0.20.0, gix v0.47.0, gitoxide-core v0.29.0, gitoxide v0.27.0, safety bump 30 crates (
ea9f942
) - Prepare changelogs prior to release (
18b0a37
) - Merge branch ‘gix-corpus’ (
5861afb
) - Add more tasks to gather a little more information (
891a061
) - Merge branch ‘corpus’ (
aa16c8c
) - Change MSRV to 1.65 (
4f635fc
) - Provide basic
tracing
spans for common operations. (3cffa26
)
0.18.0 (2023-06-10)
A maintenance release without user-facing changes.
Commit Statistics
- 2 commits contributed to the release.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-attributes v0.13.1, gix-diff v0.30.1, gix-revwalk v0.1.0, gix-traverse v0.27.0, gix-index v0.18.0, gix-revision v0.15.2, gix-negotiate v0.2.1, gix-pack v0.37.0, gix-odb v0.47.0, gix-protocol v0.33.2, gix-worktree v0.19.0, gix v0.46.0, safety bump 7 crates (
2560a2c
) - Prepare changelogs prior to release (
298f3d7
)
0.17.0 (2023-06-06)
New Features
- add
State::into_entries()
. It's useful to create standalone boxable iterators over entries without having to clone.
Commit Statistics
- 13 commits contributed to the release over the course of 28 calendar days.
- 38 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.5.1, gix-hash v0.11.2, gix-features v0.30.0, gix-actor v0.21.0, gix-path v0.8.1, gix-glob v0.8.0, gix-quote v0.4.4, gix-attributes v0.13.0, gix-chunk v0.4.2, gix-commitgraph v0.16.0, gix-config-value v0.12.1, gix-fs v0.2.0, gix-tempfile v6.0.0, gix-utils v0.1.2, gix-lock v6.0.0, gix-validate v0.7.5, gix-object v0.30.0, gix-ref v0.30.0, gix-sec v0.8.1, gix-config v0.23.0, gix-command v0.2.5, gix-prompt v0.5.1, gix-url v0.19.0, gix-credentials v0.15.0, gix-diff v0.30.0, gix-discover v0.19.0, gix-hashtable v0.2.1, gix-ignore v0.3.0, gix-bitmap v0.2.4, gix-traverse v0.26.0, gix-index v0.17.0, gix-mailmap v0.13.0, gix-revision v0.15.0, gix-negotiate v0.2.0, gix-pack v0.36.0, gix-odb v0.46.0, gix-packetline v0.16.2, gix-transport v0.32.0, gix-protocol v0.33.0, gix-refspec v0.11.0, gix-worktree v0.18.0, gix v0.45.0, safety bump 29 crates (
9a9fa96
) - Prepare changelogs prior to release (
8f15cec
) - Merge branch ‘fix-docs’ (
420553a
) - Cleaning up documentation (
2578e57
) - Merge branch ‘auto-clippy’ (
dbf8aa1
) - Autofix map-or-unwrap clippy lint (and manual fix what was left) (
2087032
) - Merge branch ‘main’ into auto-clippy (
3ef5c90
) - Auto-fix clippy to remove explicit iter looping (
3eff567
) - Merge branch ‘blinxen/main’ (
9375cd7
) - Include license files in all crates (
facaaf6
) - Release gix-object v0.29.2 (
4f879bf
) - Merge branch ‘gix-attributes-validate’ (
a849da8
) - Add
State::into_entries()
. (973bf70
)
0.16.1 (2023-04-29)
Bug Fixes
- docs.rs builds work again by correctly specifying
serde
dependency.
Commit Statistics
- 2 commits contributed to the release.
- 2 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-index v0.16.1 (
08c6f9d
) - Docs.rs builds work again by correctly specifying
serde
dependency. (4d82ea2
)
0.16.0 (2023-04-26)
New Features
- add
Index::entries_mut_and_pathbacking()
. With it one can read entries and read paths at the same time.
New Features (BREAKING)
Rename serde1
cargo feature to serde
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.
Commit Statistics
- 26 commits contributed to the release over the course of 23 calendar days.
- 27 days passed between releases.
- 2 commits were understood as conventional.
- 1 unique issue was worked on: #814
Thanks Clippy
Clippy helped 1 time to make code idiomatic.
Commit Details
- #814
- Rename
serde1
cargo feature to serde
and use the weak-deps cargo capability. (b83ee36
)
- 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
) - Merge branch ‘fix-823’ (
6ebd61e
) - Thanks clippy (
14e64e7
) - 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
) - Make fmt (
5d2b5d0
) - Merge branch ‘main’ into dev (
cdef398
) - Rename the serde1 feature to serde (
19338d9
) - Add a test for --intend-to-add and clarify what this flag means. (
27471e7
) - Add
Index::entries_mut_and_pathbacking()
. (9af47c3
) - Refactor (
691758a
) - Improve documentation of gix_index::entry::Stat::matches (
1e19760
) - Clarify Stat::is_racy documentation (
4736b60
) - Improve Mode::change_to_match_fs documentation (
bf8a7a4
) - Cleanup entry::mode API (
9cb76e9
) - Update index::entry::stat tests (
f2a9b3f
) - Parallel status check (
d7f250d
) - Streamline status API (
0f747f3
) - Centralize index entry Stat creation/comparison (
870bdb2
) - Allow access to index timestamp (
c49f12d
) - Release gix-hash v0.10.4, gix-hashtable v0.1.3 (
b574a39
) - Merge branch ‘patch-1’ (
d0052c1
) - Update to latest
bitflags
version. (594cca5
)
0.15.1 (2023-03-30)
Documentation
Commit Statistics
- 3 commits contributed to the release over the course of 19 calendar days.
- 19 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-path v0.7.3, gix-config-value v0.10.2, gix-config v0.20.1, gix-discover v0.16.2, gix-index v0.15.1, gix-odb v0.43.1, gix-packetline v0.15.1, gix-protocol v0.30.2, gix-worktree v0.15.2, gix v0.43.1 (
38eed1d
) - Fix minor typos (
02c4659
) - Merge branch ‘fix-cred-helper’ (
01277a6
)
0.15.0 (2023-03-10)
A maintenance release without user-facing changes.
Commit Statistics
- 2 commits contributed to the release.
- 6 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-tempfile v5.0.0, gix-lock v5.0.0, gix-ref v0.27.0, gix-config v0.19.0, gix-url v0.16.0, gix-credentials v0.12.0, gix-discover v0.16.0, gix-index v0.15.0, gix-pack v0.33.0, gix-odb v0.43.0, gix-transport v0.28.0, gix-protocol v0.29.0, gix-worktree v0.15.0, gix v0.41.0, safety bump 12 crates (
29a0870
) - Prepare changelogs prior to release (
e06f5f5
)
0.14.0 (2023-03-04)
A maintenance release without user-facing changes.
Commit Statistics
- 5 commits contributed to the release over the course of 1 calendar day.
- 3 days passed between releases.
- 0 commits were understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-attributes v0.10.0, gix-ref v0.26.0, gix-config v0.18.0, gix-url v0.15.0, gix-credentials v0.11.0, gix-discover v0.15.0, gix-index v0.14.0, gix-mailmap v0.11.0, gix-odb v0.42.0, gix-transport v0.27.0, gix-protocol v0.28.0, gix-revision v0.12.0, gix-refspec v0.9.0, gix-worktree v0.14.0, gix v0.39.0 (
93e75fe
) - Prepare changelogs prior to release (
895e482
) - Release gix-features v0.28.0, gix-actor v0.19.0, gix-object v0.28.0, gix-diff v0.28.0, gix-traverse v0.24.0, gix-pack v0.32.0, safety bump 20 crates (
0f411e9
) - Merge branch ‘adjustments-for-cargo’ (
04ab852
) - Adjust to changes in
git-features
(726b2cd
)
0.13.0 (2023-03-01)
Chore
- use
btoi
instead of atoi
. There was no need to introduce an extra dependency here, and btoi
is already used in a couple of additional places.
Commit Statistics
- 9 commits contributed to the release over the course of 3 calendar days.
- 8 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-tempfile v4.1.0, gix-lock v4.0.0, gix-ref v0.25.0, gix-config v0.17.0, gix-url v0.14.0, gix-credentials v0.10.0, gix-diff v0.27.0, gix-discover v0.14.0, gix-hashtable v0.1.2, gix-bitmap v0.2.2, gix-traverse v0.23.0, gix-index v0.13.0, gix-mailmap v0.10.0, gix-pack v0.31.0, gix-odb v0.41.0, gix-transport v0.26.0, gix-protocol v0.27.0, gix-revision v0.11.0, gix-refspec v0.8.0, gix-worktree v0.13.0, gix v0.38.0, safety bump 6 crates (
ea9fd1d
) - Release gix-features v0.27.0, gix-actor v0.18.0, gix-quote v0.4.3, gix-attributes v0.9.0, gix-object v0.27.0, gix-ref v0.25.0, gix-config v0.17.0, gix-url v0.14.0, gix-credentials v0.10.0, gix-diff v0.27.0, gix-discover v0.14.0, gix-hashtable v0.1.2, gix-bitmap v0.2.2, gix-traverse v0.23.0, gix-index v0.13.0, gix-mailmap v0.10.0, gix-pack v0.31.0, gix-odb v0.41.0, gix-transport v0.26.0, gix-protocol v0.27.0, gix-revision v0.11.0, gix-refspec v0.8.0, gix-worktree v0.13.0, gix v0.38.0 (
e6cc618
) - Remove versions from dev-dependencies to workspace crates. (
3cfbf89
) - Adjust manifests prior to release (
addd789
) - Prepare changelogs prior to release (
94c99c7
) - Merge branch ‘adjustments-for-cargo’ (
d686d94
) - Use
btoi
instead of atoi
. (41c8151
) - Prepare for git-tempfile release (
56c005b
) - Make fmt (
8ef1cb2
)
0.12.4 (2023-02-20)
Bug Fixes
note that crates have been renamed from git-*
to gix-*
. This also means that the git-*
prefixed crates of the gitoxide
project are effectively unmaintained. Use the crates with the gix-*
prefix instead.
If you were using git-repository
, then gix
is its substitute.
compatibility with bstr
v1.3, use *.as_bytes()
instead of .as_ref()
. as_ref()
relies on a known target type which isn‘t always present. However, once there is only one implementation, that’s no problem, but when that changes compilation fails due to ambiguity.
Commit Statistics
- 2 commits contributed to the release.
- 3 days passed between releases.
- 1 commit was understood as conventional.
- 0 issues like ‘(#ID)’ were seen in commit messages
Commit Details
- Uncategorized
- Release gix-date v0.4.3, gix-hash v0.10.3, gix-features v0.26.5, gix-actor v0.17.2, gix-glob v0.5.5, gix-path v0.7.2, gix-quote v0.4.2, gix-attributes v0.8.3, gix-validate v0.7.3, gix-object v0.26.2, gix-ref v0.24.1, gix-config v0.16.2, gix-command v0.2.4, gix-url v0.13.3, gix-credentials v0.9.2, gix-discover v0.13.1, gix-index v0.12.4, gix-mailmap v0.9.3, gix-pack v0.30.3, gix-packetline v0.14.3, gix-transport v0.25.6, gix-protocol v0.26.4, gix-revision v0.10.4, gix-refspec v0.7.3, gix-worktree v0.12.3, gix v0.36.1 (
9604783
) - Compatibility with
bstr
v1.3, use *.as_bytes()
instead of .as_ref()
. (135d317
)
0.12.3 (2023-02-17)
Documentation
New Features
- read shared indices by dissolving them into the current one. This allows the ‘link’ extension to be processed correctly, even though it won't be maintained. When written back, the ‘link’ extension will be removed automatically.
- add
impl Debug for State
to print all entries in a digestible form. - add
State::sort_entries_by(...)
to allow comparing by additional criteria. This allows to orgranize entries based on flags, for example, which may help in special occasions. -
entry::Time
can convert from and to system time. - add
State::sort_entries()
and State::dangerously_push_entry()
. Both methods work in tandem as one breaks invariants, but allows to quickly add entries, while the other restores them. - add
State::entry_mut_by_path_and_stage()
-
State::write_to()
respects the REMOVED
flag. That way, one can mark entries for removal and these will be pruned at write time. This is preferable over performing removals expensively in memory. - expose
git_hash
as hash
in the root of the crate. This makes it easier to use the crate standalone as plumbing as instantiation requires access to git_hash
. - add
File::at_or_default(...)
to easily open or create an empty in-memory index. This is a common operation in new repositories. - add
State::new()
to create a new empty in-memory index. - add
File::set_path()
to allow setting the location of an index file on disk. This is useful to change the location of an index after reading it (from another location, similar to copy-on-write). - name spawned threads That way it‘s a bit more obvious what’s happening when the CPU goes up in flames.
- Clnoe for
File
-
decode::Options::default_from_object_hash()
An easier way to initialize decode options, providing only the mandatory information. -
File::write()
for secure and complete writing of index files. - use docsrs feature in code to show what is feature-gated automatically on docs.rs
- pass --cfg docsrs when compiling for https://docs.rs
-
Stage::entry_index_by_path_and_stage()
, now with ::entry_by_path_and_stage()
-
State::entry_by_path_and_stage()
to find entries. -
Debug
and Clone
for File
-
State::path_backing()
. That way it's possible to call certain methods that take a separate path buffer. - support for separating lifetimes of entries and path-backing This way it should be possible to access paths immutably even while entries are available mutably, assuming we stagger accesses to put mutation of entries last.
Refactor
inline bounds checks With FnMut
one can pass any data to mutable state available via references and thus bypass limitations due to the closure's return type.
The gix-bitmap
crate was kept simple to encourage using it this way.
Reverted (BREAKING)
-
decode::Options::default()
- remove Default
impl. The contained git_hash::Kind
can't actually be defaulted as we have to know the actual kind used in the repository. - remove
write::Options::default()
. In practice it‘s required to inform about the hash kind to use and it’s possibly incorrect to assume Sha1.
Bug Fixes (BREAKING)
- lower rust edition to 2018
New Features (BREAKING)
upgrade edition to 2021 in most crates. MSRV for this is 1.56, and we are now at 1.60 so should be compatible. This isn‘t more than a patch release as it should break nobody who is adhering to the MSRV, but let’s be careful and mark it breaking.
Note that git-features
and git-pack
are still on edition 2018 as they make use of a workaround to support (safe) mutable access to non-overlapping entries in a slice which doesn't work anymore in edition 2021.
Changed (BREAKING)
remove File::into_state()
in favor of From<File> for State
. That way it‘s less discoverable, but more idiomatic, and we don’t want to get into the habit of providing multiple names of the exact same functionality.
write::Options::object_hash
is now implied by the State
itself. The State
, once initialized, knows the kind of object hash it uses and there is no need to specify it again.
This affects some method signatures which now work without object_hash
.
decode::Options::object_hash
is now a parameter to methods. It's not actually an option that could be defaulted, but an integral piece of knowledge that must always be defined by the caller.
This also makes decode::Options::default()
available once again.
seal File
members to preserve consistency better. This also makes sure that it's obvious if the checksum
is actually already computed.
upgrade bstr
to 1.0.1
Other
- sketch out how a write implementation could work
- :init module
Bug Fixes
Chore
- remove default link to cargo doc everywhere
Commit Statistics
- 433 commits contributed to the release over the course of 903 calendar days.
- 37 commits were understood as conventional.
- 11 unique issues were worked on: #293, #298, #301, #329, #333, #384, #427, #450, #470, #691, #XXX
Commit Details
- #293
- Remove performance bottleneck when reading TREE extension (
50411c8
) - Assert store tree cache matches actual source objects (
b062bec
) - Sketch a surprisingly difficult way of loading objects in verify_extension() (
3baeab4
) - Properly sort cache tree entries upon load (
421d1ba
) - Tree-ordering validation shows something wrong (
5fb2857
) - First stab at tree verification (
f928350
) - Verify entry order (
2d101eb
) - Refactor (
017e915
) - Basic index file checksum verification (
c644565
) - At least check for the presence of extensions (
28c056c
) - Thorough checking of Tree extension (
d1063aa
) - Refactor (
d0725bd
) - Fix tree-extension loading for empty trees (
2e13989
) - Now we are able to load indices correctly (
762efa3
) - Add breaking test with conflicting file in index (
791a9f8
) - Print extension names instead of count (
1cc07e0
) - Print basic index information, including the tree extension (
9277cf8
) - Lower rust edition to 2018 (
0b1543d
) - Lower MSRV to 1.52 (
c2cc939
) - Prepare changelogs for git-index and dependencies (
f54bf4b
) - Test for extra-long paths (
3d61afe
) - Test for extended flags (
ae3b697
) - Use bitflags for Flags (in-memory and at-rest) (
ea86eb0
) - Use bitflags for entry Mode (
53df605
) - FSMN V2 decoding (
04279bf
) - Failing test for fs-monitor V1 (
625b89a
) - Validate UNTR with exclude-file oids (
20ebb81
) - Read remaining pieces of UNTR (
9d9cc95
) - Make stat parsing more general/reusable (
c41b933
) - Refactor (
a1dc8de
) - Simplify UNTR directory indexing (
7857d08
) - Flatten UNTR directory list for later access via bitmaps (
2e39184
) - Read UNTR directory blocks and bitmaps (
59f46fe
) - First portion of reading the untracked cache (
ed2fe5d
) - Failing test for UNTR extension (
223f2cc
) - Add UNTR extension fixture (
3c7ba24
) - REUC reading works (
29c1af9
) - Frame and test for REUC exstension (
229cabe
) - Add git index with REUC exstension (
8359fdb
) - Support for ‘sdir’ extension (
a38c3b8
) - Turn git-bitmap Array into Vec, as it will be able to adjust its size (
9e99e01
) - First stab at decoding ewah bitmaps (
353a53c
) - ‘link’ extension decoding to the point where bitmaps are needed (
e18a2fd
) - Support for errors in extensions (
8971991
) - Failing test for link decoding (
e1daf18
) - Don't forget to fail on unknown mandatory extension (
f7e2bdd
) - Aggregation for index entries loaded in parallel (
995994a
) - Parallel loading of entries right before reducing them (
de84a3a
) - Frame for using the new ‘scoped threads’ feature in git-features (
6fea17d
) - Single and multi-threaded index tests (
a22cb0f
) - Prepare decode options for better control of threads (
30de988
) - Cleanup (
99d7224
) - Basic IEOT parsing (
35bdee4
) - Refactor (
6f04f8b
) - Parse V4 delta-paths (
06640e3
) - More thorough tests for more complex repo with more entries (
273853f
) - The first test to validate an entry (
f865ef6
) - Now with counting of consumed bytes in extensions (
77a062c
) - Use correct post-header slice when parsing entries (
da556b0
) - All code needed to load extensions… (
0a03f19
) - A step towards pasing V2 paths (
01036ad
) - Most of the entry decoding, name is still missing (
53e2d75
) - Extensions are optional, and so is their iteration (
620d2e6
) - Prepare a more complex test for tree parsing, requires entry parsing (
e7e0679
) - Parse TREE chunk (
a2ea498
) - Get closer to implementing a simple TREE extension decoding (
49fcb6f
) - Refactor (
07e8fb2
) - The first actual assetion (
c17240d
) - Refactor (
d4b3a07
) - Refactor (
9fdd34b
) - Fix counting issue, checksum matches now (
cc33752
) - Another big step, even though EOIE checksum is still bugged (
9ffd523
) - Right before implementing a traversal over extension chunks (
79ca582
) - Refactor (
9b28b18
) - First step towards reading the EOIE extension (
068c716
) - Parse index header (
5c731f8
) - First stab at basic index file parsing (
826ca0c
) - Refactor (
494ed46
) - Git-index uses memmap2 (
fbfea28
) - The realization that FileBuffer really shouldn't be used anymore (
b481f13
) - Base setup for index testing (
aa60fdf
) - Notes on how test indices have been created (
3040857
)
- #298
- Upgrade git-index->atoi to 1.0 (
728dd65
) - Use hash_hasher based hash state for better keys/less collisions (
814de07
) - Also print stage of entries (
003515f
) - Simple printing of basic entry information (
329538b
)
- #301
- Update changelogs prior to release (
84cb256
) - Differentiate between owned and ref'ed path storage (
c71b2bb
) State::path_backing()
. (8ab219a
)- Sketch
open_index()
on Worktree
, but… (ff76261
) - Support for separating lifetimes of entries and path-backing (
645ed50
) - An attempt to build a lookup table of attribute files, but… (
9841efb
) - Refactor (
475aa6a
) - Adjustments to support lower MSRV (
16a0973
) - Basic version of index checkout via command-line (
f23b8d2
) - Document-features support for git-index and git-worktree (
1367cf5
) - Make fmt (
636fa8a
) - Strucural refactor (
cdca1df
) - Allow mutation of entries during iteration, while obtaining their path (
d0c4563
)
- #329
- Document all features related to serde1 (
72b97f2
)
- #333
- Use git_features::path everywhere where there is a path conversion (
2e1437c
)
- #384
- Prevent line-ending conversions for shell scripts on windows (
96bb4d4
) - No need to isolate archives by crate name (
19d46f3
) - Add archive files via git-lfs (
7202a1c
) - Assure we don't pick up unnecessary files during publishing (
545b2d5
) - Auto-set commit.gpgsign=false when executing git (
c23feb6
)
- #427
- Make fmt (
4b320e7
) - Fix docs (
5a0d6b7
) Stage::entry_index_by_path_and_stage()
, now with ::entry_by_path_and_stage()
(6d8d5e6
)State::entry_by_path_and_stage()
to find entries. (55363ea
)- Refactor; prepare for entry-lookup by path (
92de081
) Debug
and Clone
for File
(40e6bde
)
- #450
- #470
- Update changelogs prior to release (
caa7a1b
)
- #691
- #XXX
- Add tests to run into long-paths special case (
d7a8a7d
)
- Uncategorized
- Release gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
48f5bd2
) - Release gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
a5869e0
) - Release gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
41d57b9
) - Release gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
e313112
) - Release gix-features v0.26.4, gix-actor v0.17.1, gix-glob v0.5.3, gix-path v0.7.1, gix-quote v0.4.1, gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
6efd0d3
) - Release gix-date v0.4.2, gix-hash v0.10.2, gix-features v0.26.4, gix-actor v0.17.1, gix-glob v0.5.3, gix-path v0.7.1, gix-quote v0.4.1, gix-attributes v0.8.2, gix-config-value v0.10.1, gix-tempfile v3.0.2, gix-lock v3.0.2, gix-validate v0.7.2, gix-object v0.26.1, gix-ref v0.24.0, gix-sec v0.6.2, gix-config v0.16.1, gix-command v0.2.3, gix-prompt v0.3.2, gix-url v0.13.2, gix-credentials v0.9.1, gix-diff v0.26.1, gix-discover v0.13.0, gix-hashtable v0.1.1, gix-bitmap v0.2.1, gix-traverse v0.22.1, gix-index v0.12.3, gix-mailmap v0.9.2, gix-chunk v0.4.1, gix-pack v0.30.2, gix-odb v0.40.2, gix-packetline v0.14.2, gix-transport v0.25.4, gix-protocol v0.26.3, gix-revision v0.10.3, gix-refspec v0.7.2, gix-worktree v0.12.2, gix v0.36.0 (
6ccc88a
) - Merge branch ‘rename-crates’ into inform-about-gix-rename (
c9275b9
) - Fix link in docs for
sort_entries_by
(eb48b16
) - Rename
git-testtools
to gix-testtools
(b65c33d
) - Adjust to renaming of
git-pack
to gix-pack
(1ee81ad
) - Adjust to renaming of
git-odb
to gix-odb
(476e2ad
) - Adjust to renaming of
git-index
to gix-index
(86db5e0
) - Rename
git-index
to gix-index
(ecd3541
) - Adjust to renaming of
git-diff
to gix-diff
(49a163e
) - Adjust to renaming of
git-commitgraph
to gix-commitgraph
(f1dd0a3
) - Adjust to renaming of
git-mailmap
to gix-mailmap
(2e28c56
) - Adjust to renaming of
git-discover
to gix-discover
(53adfe1
) - Adjust to renaming of
git-lfs
to gix-lfs
(b9225c8
) - Adjust to renaming of
git-chunk
to gix-chunk
(59194e3
) - Adjust to renaming of
git-bitmap
to gix-bitmap
(75f2a07
) - Adjust to renaming for
git-protocol
to gix-protocol
(823795a
) - Adjust to renaming of
git-refspec
to gix-refspec
(c958802
) - Adjust to renaming of
git-revision
to gix-revision
(ee0ee84
) - Adjust to renaming of
git-transport
to gix-transport
(b2ccf71
) - Adjust to renaming of
git-credentials
to gix-credentials
(6b18abc
) - Adjust to renaming of
git-prompt
to gix-prompt
(6a4654e
) - Adjust to renaming of
git-command
to gix-command
(d26b8e0
) - Adjust to renaming of
git-packetline
to gix-packetline
(5cbd22c
) - Adjust to renaming of
git-worktree
to gix-worktree
(73a1282
) - Adjust to renamining of
git-hashtable
to gix-hashtable
(26a0c98
) - Adjust to renamining of
git-worktree
to gix-worktree
(108bb1a
) - Adjust to renaming of
git-url
to gix-url
(b50817a
) - Adjust to renaming of
git-date
to gix-date
(9a79ff2
) - Adjust to renamining of
git-attributes
to gix-attributes
(4a8b3b8
) - Adjust to renaminig of
git-quote
to gix-quote
(648025b
) - Adjust to renaming of
git-config
to gix-config
(3a861c8
) - Adjust to renaming of
git-ref
to gix-ref
(1f5f695
) - Adjust to renaming of
git-lock
to gix-lock
(2028e78
) - Adjust to renaming of
git-tempfile
to gix-tempfile
(b6cc3eb
) - Adjust to renaming of
git-object
to gix-object
(fc86a1e
) - Adjust to renaming of
git-actor
to gix-actor
(4dc9b44
) - Adjust to renaming of
git-validate
to gix-validate
(5e40ad0
) - Adjust to renaming of
git-hash
to gix-hash
(4a9d025
) - Adjust to renaming of
git-features
to gix-features
(e2dd68a
) - Adjust to renaming of
git-glob
to gix-glob
(35b2a3a
) - Adjust to renaming of
git-sec
to gix-sec
(eabbb92
) - Adapt to renaming of
git-path
to gix-path
(d3bbcfc
) - Adjust to rename of
git-config-value
to gix-config-value
(622b3e1
) - Release git-features v0.26.4 (
109f434
) - Release git-features v0.26.3 (
1ecfb7f
) - Merge branch ‘rename-crates’ (
6461c3d
) - Rename
git-repository
to gix
(7bed2a9
) - Release git-date v0.4.2, git-hash v0.10.2, git-features v0.26.2, git-actor v0.17.1, git-glob v0.5.3, git-path v0.7.1, git-quote v0.4.1, git-attributes v0.8.2, git-config-value v0.10.1, git-tempfile v3.0.2, git-lock v3.0.2, git-validate v0.7.2, git-object v0.26.1, git-ref v0.24.0, git-sec v0.6.2, git-config v0.16.0, git-command v0.2.3, git-prompt v0.3.2, git-url v0.13.2, git-credentials v0.9.1, git-diff v0.26.1, git-discover v0.13.0, git-hashtable v0.1.1, git-bitmap v0.2.1, git-traverse v0.22.1, git-index v0.12.3, git-mailmap v0.9.2, git-chunk v0.4.1, git-pack v0.30.2, git-odb v0.40.2, git-packetline v0.14.2, git-transport v0.25.4, git-protocol v0.26.3, git-revision v0.10.2, git-refspec v0.7.2, git-worktree v0.12.2, git-repository v0.34.0, safety bump 3 crates (
c196d20
) - Prepare changelogs prior to release (
7c846d2
) - Merge branch ‘Lioness100/main’ (
1e544e8
) - Fix typos (
39ed9ed
) - Make fmt (
e22080e
) - Break cyclical dev dependencies (
1fea18f
) - Make error handling of split index to seemingly be en-par with ‘git’ (
cec2547
) - Read shared indices by dissolving them into the current one. (
5dc408f
) - Inline bounds checks (
dc3fd48
) - Remove
VerifiedBitmaps
structure… (49cf105
) - Release git-date v0.4.1, git-features v0.26.1, git-glob v0.5.2, git-attributes v0.8.1, git-tempfile v3.0.1, git-ref v0.23.1, git-sec v0.6.1, git-config v0.15.1, git-prompt v0.3.1, git-url v0.13.1, git-discover v0.12.1, git-index v0.12.2, git-mailmap v0.9.1, git-pack v0.30.1, git-odb v0.40.1, git-transport v0.25.3, git-protocol v0.26.2, git-revision v0.10.1, git-refspec v0.7.1, git-worktree v0.12.1, git-repository v0.33.0 (
5b5b380
) - Prepare changelogs prior to release (
93bef97
) - Merge branch ‘patch-1’ (
b93f0c4
) - Thanks clippy (
9e04685
) - Move error handling into its own function (
2b22d91
) - Release git-index v0.12.1 (
8aa5c1d
) - Merge branch ‘various-improvements’ (
f191c1a
) - Add
impl Debug for State
to print all entries in a digestible form. (6d8eb9f
) - Add
State::sort_entries_by(...)
to allow comparing by additional criteria. (7c8ba2c
) - Update documentation to make users of
State::dangerously_push_entry()
more aware. (b56de39
) - Release git-date v0.4.0, git-actor v0.17.0, git-object v0.26.0, git-traverse v0.22.0, git-index v0.12.0, safety bump 15 crates (
0e3d0a5
) - Prepare changelogs prior to release (
d679f5b
) - Merge branch ‘various-improvements’ (
9eee8fe
) entry::Time
can convert from and to system time. (1e3341a
)- Add
State::sort_entries()
and State::dangerously_push_entry()
. (654bd8f
) - Improved error handling - panicing version (
9509891
) - Add
State::entry_mut_by_path_and_stage()
(aa1b6ee
) State::write_to()
respects the REMOVED
flag. (3ebe2d4
)- Expose
git_hash
as hash
in the root of the crate. (ec36586
) - Add
File::at_or_default(...)
to easily open or create an empty in-memory index. (5cc3a15
) - Add
State::new()
to create a new empty in-memory index. (0b40951
) - Remove
File::into_state()
in favor of From<File> for State
. (3753ad5
) - Add
File::set_path()
to allow setting the location of an index file on disk. (a7183e2
) - Release git-features v0.26.0, git-actor v0.16.0, git-attributes v0.8.0, git-object v0.25.0, git-ref v0.22.0, git-config v0.14.0, git-command v0.2.1, git-url v0.13.0, git-credentials v0.9.0, git-diff v0.25.0, git-discover v0.11.0, git-traverse v0.21.0, git-index v0.11.0, git-mailmap v0.8.0, git-pack v0.29.0, git-odb v0.39.0, git-transport v0.25.0, git-protocol v0.26.0, git-revision v0.9.0, git-refspec v0.6.0, git-worktree v0.11.0, git-repository v0.31.0, safety bump 24 crates (
5ac9fbe
) - Prepare changelogs prior to release (
30d8ca1
) - Release git-date v0.3.1, git-features v0.25.0, git-actor v0.15.0, git-glob v0.5.1, git-path v0.7.0, git-attributes v0.7.0, git-config-value v0.10.0, git-lock v3.0.1, git-validate v0.7.1, git-object v0.24.0, git-ref v0.21.0, git-sec v0.6.0, git-config v0.13.0, git-prompt v0.3.0, git-url v0.12.0, git-credentials v0.8.0, git-diff v0.24.0, git-discover v0.10.0, git-traverse v0.20.0, git-index v0.10.0, git-mailmap v0.7.0, git-pack v0.28.0, git-odb v0.38.0, git-packetline v0.14.1, git-transport v0.24.0, git-protocol v0.25.0, git-revision v0.8.0, git-refspec v0.5.0, git-worktree v0.10.0, git-repository v0.30.0, safety bump 26 crates (
e6b9906
) - Prepare chnagelogs prior to git-repository release (
7114bbb
) - Merge branch ‘main’ into read-split-index (
c57bdde
) - Assure recursive shared indices (possibly malicious) don't crash us (
ede718c
) - Refactor (
d6ba366
) - Refactor (
c840c0d
) - Merge branch ‘adjustments-for-cargo’ (
083909b
) - Upload missing fixture archive (
5cab553
) - Fix failing test… (
1057ee4
) - Refactor (
dfd00e5
) - Test is green (
800fc2b
) - Sketch
resolve_link_extension
function (c62a25b
) - Add test that compares split index with regular index (
fc89517
) - Adjust to changes in
git-testtools
(4eb842c
) - Merge branch ‘adjustments-for-cargo’ (
70ccbb2
) - Upgrade atoi from 1 to 2 (
be6c65c
) - Release git-hash v0.10.1, git-hashtable v0.1.0 (
7717170
) - Merge branch ‘main’ into http-config (
6b9632e
) - Release git-features v0.24.1, git-actor v0.14.1, git-index v0.9.1 (
7893502
) - Merge branch ‘named-threads’ (
726dd87
) - Name spawned threads (
fd2dd3a
) - Merge branch ‘main’ into http-config (
bcd9654
) - Make fmt (
0abab7d
) - Release git-hash v0.10.0, git-features v0.24.0, git-date v0.3.0, git-actor v0.14.0, git-glob v0.5.0, git-path v0.6.0, git-quote v0.4.0, git-attributes v0.6.0, git-config-value v0.9.0, git-tempfile v3.0.0, git-lock v3.0.0, git-validate v0.7.0, git-object v0.23.0, git-ref v0.20.0, git-sec v0.5.0, git-config v0.12.0, git-command v0.2.0, git-prompt v0.2.0, git-url v0.11.0, git-credentials v0.7.0, git-diff v0.23.0, git-discover v0.9.0, git-bitmap v0.2.0, git-traverse v0.19.0, git-index v0.9.0, git-mailmap v0.6.0, git-chunk v0.4.0, git-pack v0.27.0, git-odb v0.37.0, git-packetline v0.14.0, git-transport v0.23.0, git-protocol v0.24.0, git-revision v0.7.0, git-refspec v0.4.0, git-worktree v0.9.0, git-repository v0.29.0, git-commitgraph v0.11.0, gitoxide-core v0.21.0, gitoxide v0.19.0, safety bump 28 crates (
b2c301e
) - Prepare changelogs prior to release (
e4648f8
) - Merge branch ‘version2021’ (
0e4462d
) - Upgrade edition to 2021 in most crates. (
3d8fa8f
) - Release git-glob v0.4.2, git-config-value v0.8.2, git-lock v2.2.0, git-ref v0.19.0, git-config v0.11.0, git-discover v0.8.0, git-index v0.8.0, git-transport v0.22.0, git-protocol v0.23.0, git-worktree v0.8.0, git-repository v0.28.0, gitoxide-core v0.20.0, gitoxide v0.18.0, safety bump 9 crates (
0c253b1
) - Prepare changelogs prior to release (
fe5721f
) - Merge branch ‘main’ into http-config (
7c5b37d
) - Release git-diff v0.22.0, git-index v0.7.1, git-pack v0.26.0, git-odb v0.36.0, git-transport v0.21.2, git-repository v0.27.0, safety bump 6 crates (
f0cab31
) - Prepare changelogs prior to release (
f5f3a9e
) - Merge branch ‘fixes-for-crates-index-diff’ (
255be4d
) - Remove unused import; fix docs (
efe0a51
) - Release git-features v0.23.1, git-glob v0.4.1, git-config-value v0.8.1, git-tempfile v2.0.6, git-object v0.22.1, git-ref v0.18.0, git-sec v0.4.2, git-config v0.10.0, git-prompt v0.1.1, git-url v0.10.1, git-credentials v0.6.1, git-diff v0.21.0, git-discover v0.7.0, git-index v0.7.0, git-pack v0.25.0, git-odb v0.35.0, git-transport v0.21.1, git-protocol v0.22.0, git-refspec v0.3.1, git-worktree v0.7.0, git-repository v0.26.0, git-commitgraph v0.10.0, gitoxide-core v0.19.0, gitoxide v0.17.0, safety bump 9 crates (
d071583
) - Prepare changelogs prior to release (
423af90
) - Merge branch ‘write-sparse-index’ (
ba17db0
) - Thanks clippy (
49b539b
) - Remove tests and scaffolding code that probably won't be implemented soon. (
177d1c8
) - Refactor (
0a74625
) - Act like git and write a sparse index even if it contains no dir entries anymore. (
53af48c
) - Bake knowledge about sparse related config parameters into types. (
e61957e
) - Merge branch ‘main’ into write-sparse-index (upgrade to Rust 1.65) (
5406630
) - Thanks clippy (
04cfa63
) - Merge branch ‘main’ into write-sparse-index (
c4e6849
) - Make fmt (
ea2136b
) - Merge branch ‘gix-clone’ (
def53b3
) - Add and use
checked_is_sparse()
instead of cached is_sparse
flag (e41ad0f
) - Refactor (
3683963
) - Thanks clippy (
646b868
) - Added fixture, adjusted tests, refactor (
3173c0b
) - Make clear in code that mandatory extensions will always be written… (
3e37443
) - Respect the current 'is_sparse()
state when writing. ([
2012b27`](https://github.com/Byron/gitoxide/commit/2012b27246e8835b19725862409d2df23a2638c6)) - Refactor (
a929bcf
) - Thanks clippy (
5bfd947
) - Sketch out how a write implementation could work (
4a6d46f
) - Regenerated archive (
cd1c752
) - Updated docs (
77a9d42
) - Added first tests and implementation for writing the
sdir
extension (66a675f
) - Capability to write
sdir
extension (762e4cb
) - Added tests for reading sparse indexes (
ddaa003
) - Add temporary sparse index playground testfile (
5589a7f
) - Add sparse index text fixtures (
8a8a53e
) - Add
is_sparse
access method for State
(7f012cf
) - Merge branch ‘main’ into gix-clone (
de4fe06
) - Merge branch ‘fix-gix-index-from-tree’ (
da5f63c
) write::Options::object_hash
is now implied by the State
itself. (59f6791
)decode::Options::object_hash
is now a parameter to methods. (908163a
)decode::Options::default_from_object_hash()
(9e03110
)- Refactor (
6fb3255
) - Seal
File
members to preserve consistency better. (92dda50
) decode::Options::default()
- remove Default
impl. (bd312ac
)- Fix tests (
fc5cee1
) - Assure we also write V3 files, validate auto-version discovery (
abc3cf8
) - Loose fixtures are usable more easily now (
b86012b
) - Remove
write::Options::default()
. (2da5a62
) File::write()
for secure and complete writing of index files. (eedcffa
)- Prepare test for writing a complete index file from arbitrary state (
281f5b8
) - Merge branch ‘gix-index-from-tree’ (
8c24386
) - Refactor (
08d5c0b
) - Release git-hash v0.9.11, git-features v0.23.0, git-actor v0.13.0, git-attributes v0.5.0, git-object v0.22.0, git-ref v0.17.0, git-sec v0.4.1, git-config v0.9.0, git-url v0.10.0, git-credentials v0.6.0, git-diff v0.20.0, git-discover v0.6.0, git-traverse v0.18.0, git-index v0.6.0, git-mailmap v0.5.0, git-pack v0.24.0, git-odb v0.34.0, git-packetline v0.13.1, git-transport v0.21.0, git-protocol v0.21.0, git-revision v0.6.0, git-refspec v0.3.0, git-worktree v0.6.0, git-repository v0.25.0, safety bump 24 crates (
104d922
) - Prepare changelogs for release (
d232567
) - Remove the .insert() call… (
4bb3e8b
) - Merge branch ‘main’ into fetch-pack (
d686020
) - Thanks clippy (
b9937ad
) - Merge branch ‘fix-git-features’ (
82fd251
) - Merge branch ‘diff’ (
25a7726
) - Release git-hash v0.9.10, git-features v0.22.5, git-date v0.2.0, git-actor v0.12.0, git-glob v0.4.0, git-path v0.5.0, git-quote v0.3.0, git-attributes v0.4.0, git-config-value v0.8.0, git-tempfile v2.0.5, git-validate v0.6.0, git-object v0.21.0, git-ref v0.16.0, git-sec v0.4.0, git-config v0.8.0, git-discover v0.5.0, git-traverse v0.17.0, git-index v0.5.0, git-worktree v0.5.0, git-testtools v0.9.0, git-command v0.1.0, git-prompt v0.1.0, git-url v0.9.0, git-credentials v0.5.0, git-diff v0.19.0, git-mailmap v0.4.0, git-chunk v0.3.2, git-pack v0.23.0, git-odb v0.33.0, git-packetline v0.13.0, git-transport v0.20.0, git-protocol v0.20.0, git-revision v0.5.0, git-refspec v0.2.0, git-repository v0.24.0, git-commitgraph v0.9.0, gitoxide-core v0.18.0, gitoxide v0.16.0, safety bump 28 crates (
29a043b
) - Make fmt (
429cccc
) - Merge branch ‘filter-refs’ (
fd14489
) - Release git-features v0.22.6 (
c9eda72
) - Fix docs (
87f6db7
) - Merge branch ‘index-from-tree’ (
172f73c
) - Refactor (
c40528e
) - Refactor (
b2835cc
) - Remove depthfirst traversal todo (
5ca7945
) - Add test fixture and adjust (
e153340
) - Overwrite duplicate entries (like ‘git’)… (
16d8944
) - Refactor (
49dc4a6
) - Refactor (
c2524a6
) - Refactor (
6683081
) - Compare individual entries more thoroughly (
1c9b703
) - Thanks clippy (
878593e
) - Refactor... (
dce45e6
) - :init module (
6c17f96
) - Refactor
Entry::cmp
(3a58c3e
) - Make fmt (
535e967
) - Merge branch ‘main’ into filter-refs-by-spec (
9aa1d3d
) - Release git-features v0.22.4, git-url v0.8.0, safety bump 4 crates (
1d4600a
) - Merge branch ‘main’ into filter-refs-by-spec (
1f6e5ab
) - Merge branch ‘fix-522’ (
5869e9f
) - Release git-hash v0.9.9 (
da0716f
) - Refactor (
bba180d
) - Merge branch ‘main’ into index-from-tree (
bc64b96
) - Added more fixtures to test (
adf5e54
) - Initial test and implementation for State::from_tree (
14694a4
) - Merge branch ‘main’ into filter-refs-by-spec (
cef0b51
) - Release git-attributes v0.3.3, git-ref v0.15.3, git-index v0.4.3, git-worktree v0.4.3, git-testtools v0.8.0 (
baad4ce
) - Prepare changelogs prior to release of git-testtools (
7668e38
) - Release git-features v0.22.3, git-revision v0.4.4 (
c2660e2
) - Merge branch ‘main’ into filter-refs-by-spec (
cfa1440
) - Release git-date v0.0.5, git-hash v0.9.8, git-features v0.22.2, git-actor v0.11.3, git-glob v0.3.2, git-quote v0.2.1, git-attributes v0.3.2, git-tempfile v2.0.4, git-lock v2.1.1, git-validate v0.5.5, git-object v0.20.2, git-ref v0.15.2, git-sec v0.3.1, git-config v0.7.0, git-credentials v0.4.0, git-diff v0.17.2, git-discover v0.4.1, git-bitmap v0.1.2, git-index v0.4.2, git-mailmap v0.3.2, git-chunk v0.3.1, git-traverse v0.16.2, git-pack v0.21.2, git-odb v0.31.2, git-packetline v0.12.7, git-url v0.7.2, git-transport v0.19.2, git-protocol v0.19.0, git-revision v0.4.2, git-refspec v0.1.0, git-worktree v0.4.2, git-repository v0.22.0, safety bump 4 crates (
4974eca
) - Merge branch ‘main’ into remote-ls-refs (
e2ee3de
) - Merge branch ‘docsrs-show-features’ (
31c2351
) - Use docsrs feature in code to show what is feature-gated automatically on docs.rs (
b1c40b0
) - Pass --cfg docsrs when compiling for https://docs.rs (
5176771
) - Remove default link to cargo doc everywhere (
533e887
) - Merge branch ‘main’ into remote-ls-refs (
bd5f3e8
) - Release git-date v0.0.3, git-actor v0.11.1, git-attributes v0.3.1, git-tempfile v2.0.3, git-object v0.20.1, git-ref v0.15.1, git-config v0.6.1, git-diff v0.17.1, git-discover v0.4.0, git-bitmap v0.1.1, git-index v0.4.1, git-mailmap v0.3.1, git-traverse v0.16.1, git-pack v0.21.1, git-odb v0.31.1, git-packetline v0.12.6, git-url v0.7.1, git-transport v0.19.1, git-protocol v0.18.1, git-revision v0.4.0, git-worktree v0.4.1, git-repository v0.21.0, safety bump 5 crates (
c96473d
) - Prepare changelogs prior to reelase (
c06ae1c
) - Release git-hash v0.9.7, git-features v0.22.1 (
232784a
) - Merge branch ‘main’ into remote-ls-refs (
c4bf958
) - Fix CI for good (
e0c0b8c
) - Fix CI (
2433be1
) - Merge branch ‘index-write-refactor’ (
805f432
) - Refactor (
3af5121
) - Refactor (
b41d93a
) - Thanks clippy (
4390c32
) - Run tests against all input files we have (
de8abe6
) - Combine more tests into one to reduce duplication (
933ad9e
) - Assure that extended flags receive version 3; make
version
an implementation detail (6d810a1
) - Support for extended flags, and V3 as it's a requirements. (
417d90e
) - Refcator (
27993c0
) - Fix tree ext reading and writing; round-trip with long path works now (
f93febe
) - First PoC for writing long paths, even though it doens't produce the entire file yet (
581cbd7
) - Make it more explicit to write all available extensions by default (
fbe9815
) - Fix docs (
9861a6c
) - Thanks clippy (
834be93
) - Thanks clippy (
9b3a940
) - Generalize extension writing so that writing more will be easier (
8ef5378
) - Generalize EOIE exstension writing (
18b722e
) - Provide a stand-alone way of writing end-of-index extensions (
7ca297a
) - Refactor (
a5b2ef9
) - Additional validation (
ee7b5bb
) - Refactor (
e35aac6
) - Refactor (
52386f4
) - Refactor (
75a2338
) - Refactor (
f6f2861
) - Refactor (
6cf9277
) - Refactor (
a6354c0
) - Fill in all remaining documentation, raise
git-index
to ‘usable’ state (3568ae3
) - First step towards everything being documented (
919923c
) - Remove quickerror in favor of thiserror (
dd7ce3f
) - Refactor (
618736b
) - Refactor (
4dda27e
) - Added test for eoie extension (
a433c0d
) - Estimate vector size for tree entries (
74455e6
) - Implemented File::write_to for hashed write (
6b6db34
) - Refactor and add more tests (
6b32bcf
) - Merge branch ‘write-index-files’ into write-index-v2 (
cddc2ca
) - Thanks clippy (
a66403c
) - Write wrapper to count written bytes (
b147090
) - Refactor test (
33a3009
) - Merge branch ‘rev-parse-delegate’ (
2f506c7
) - Refactor... (
81eef35
) - Refactor tests... (
3a9b51b
) - Convert ‘in-memory’ flags to ‘storage’ flags (
017377d
) - Merge branch ‘write-index-files’ into rev-parse-delegate (
370110d
) - Small improvements (
e5cb6d9
) - Fix pathname in test (
1f18e19
) - Thanks clippy (
3f72180
) - Sucesfully writing the first basic index files (
a9c6f22
) - Merge pull request #2 from SidneyDouw/main (
ce885ad
) - Merge branch ‘Byron:main’ into main (
9b9ea02
) - Merge branch ‘main’ into rev-parse-delegate (
6da8250
) - Merge branch ‘main’ into pathspec (
7b61506
) - Release git-config v0.6.0, git-credentials v0.3.0, git-diff v0.17.0, git-discover v0.3.0, git-index v0.4.0, git-mailmap v0.3.0, git-traverse v0.16.0, git-pack v0.21.0, git-odb v0.31.0, git-url v0.7.0, git-transport v0.19.0, git-protocol v0.18.0, git-revision v0.3.0, git-worktree v0.4.0, git-repository v0.20.0, git-commitgraph v0.8.0, gitoxide-core v0.15.0, gitoxide v0.13.0 (
aa639d8
) - Release git-hash v0.9.6, git-features v0.22.0, git-date v0.0.2, git-actor v0.11.0, git-glob v0.3.1, git-path v0.4.0, git-attributes v0.3.0, git-tempfile v2.0.2, git-object v0.20.0, git-ref v0.15.0, git-sec v0.3.0, git-config v0.6.0, git-credentials v0.3.0, git-diff v0.17.0, git-discover v0.3.0, git-index v0.4.0, git-mailmap v0.3.0, git-traverse v0.16.0, git-pack v0.21.0, git-odb v0.31.0, git-url v0.7.0, git-transport v0.19.0, git-protocol v0.18.0, git-revision v0.3.0, git-worktree v0.4.0, git-repository v0.20.0, git-commitgraph v0.8.0, gitoxide-core v0.15.0, gitoxide v0.13.0, safety bump 22 crates (
4737b1e
) - Prepare changelog prior to release (
3c50625
) - Setup and refactor tests (
7eed237
) - Generate index header (
f1d7c1c
) - Merge pull request #1 from Byron/main (
085e76b
) - Merge branch ‘main’ into SidneyDouw-pathspec (
a22b1d8
) - Merge branch ‘main’ into git_includeif (
598c853
) - Release git-ref v0.13.0, git-discover v0.1.0, git-index v0.3.0, git-mailmap v0.2.0, git-traverse v0.15.0, git-pack v0.19.0, git-odb v0.29.0, git-packetline v0.12.5, git-url v0.5.0, git-transport v0.17.0, git-protocol v0.16.0, git-revision v0.2.0, git-worktree v0.2.0, git-repository v0.17.0 (
349c590
) - Release git-hash v0.9.4, git-features v0.21.0, git-actor v0.10.0, git-glob v0.3.0, git-path v0.1.1, git-attributes v0.1.0, git-sec v0.1.0, git-config v0.3.0, git-credentials v0.1.0, git-validate v0.5.4, git-object v0.19.0, git-diff v0.16.0, git-lock v2.1.0, git-ref v0.13.0, git-discover v0.1.0, git-index v0.3.0, git-mailmap v0.2.0, git-traverse v0.15.0, git-pack v0.19.0, git-odb v0.29.0, git-packetline v0.12.5, git-url v0.5.0, git-transport v0.17.0, git-protocol v0.16.0, git-revision v0.2.0, git-worktree v0.2.0, git-repository v0.17.0, safety bump 20 crates (
654cf39
) - Merge branch ‘main’ into git_includeif (
b1bfc8f
) - Merge branch ‘basic-worktree-support’ (
e058bda
) - Merge branch ‘main’ into git_includeif (
05eb340
) - Merge branch ‘main’ into msrv-for-windows (
7cb1972
) - Merge branch ‘worktree-stack’ (
98da8ba
) - Merge branch ‘worktree-stack’ (
39046e9
) - Merge branch ‘main’ into repo-status (
0eb2372
) - Merge branch ‘test-archive-support’ (
350df01
) - Release git-diff v0.14.0, git-bitmap v0.1.0, git-index v0.2.0, git-tempfile v2.0.1, git-lock v2.0.0, git-mailmap v0.1.0, git-traverse v0.13.0, git-pack v0.17.0, git-quote v0.2.0, git-odb v0.27.0, git-packetline v0.12.4, git-url v0.4.0, git-transport v0.16.0, git-protocol v0.15.0, git-ref v0.12.0, git-worktree v0.1.0, git-repository v0.15.0, cargo-smart-release v0.9.0, safety bump 5 crates (
e58dc30
) - Release git-hash v0.9.3, git-features v0.20.0, git-config v0.2.0, safety bump 12 crates (
f0cbb24
) - Merge branch ‘unify-path-encoding’ (
566ff8a
) - Merge branch ‘AP2008-implement-worktree’ (
f32c669
) - Implemented git-worktree (
4177d72
) - Release git-hash v0.9.2, git-object v0.17.1, git-pack v0.16.1 (
0db19b8
) - Merge branch ‘index-verification’ (
ad3c803
) - Refactor (
afdeca1
) - Thanks clippy (
2f25bf1
) - Thanks clippy (
d721019
) - Merge branch ‘index-information’ (
025f157
) - Release git-hash v0.9.1, git-features v0.19.1, git-actor v0.8.0, git-config v0.1.10, git-object v0.17.0, git-diff v0.13.0, git-tempfile v1.0.4, git-chunk v0.3.0, git-traverse v0.12.0, git-pack v0.16.0, git-odb v0.26.0, git-packetline v0.12.3, git-url v0.3.5, git-transport v0.15.0, git-protocol v0.14.0, git-ref v0.11.0, git-repository v0.14.0, cargo-smart-release v0.8.0, safety bump 4 crates (
373cbc8
) - Upgrade to tui 0.17 and prodash 18 (
eba101a
) - Dependency update (
ca59e44
) - Release git-bitmap v0.0.1, git-hash v0.9.0, git-features v0.19.0, git-index v0.1.0, safety bump 9 crates (
4624725
) - Thanks clippy (
09df2bc
) - Thanks clippy (
93c3d23
) - Fix index without extension test & thanks clippy (
066464d
) - Thanks clippy (
f477032
) - Thanks clippy (
5526020
) - Thanks clippy (
591511a
) - Remove dash in all repository links (
98c1360
) - Merge from main. (
b59bd5e
) - Refactor (
e4bcfe6
) - Add placeholder for git-index crate (
52ff13c
)
0.12.2 (2023-01-10)
A maintenance release without user-facing changes.
0.12.1 (2023-01-08)
New Features
- add
impl Debug for State
to print all entries in a digestible form. - add
State::sort_entries_by(...)
to allow comparing by additional criteria. This allows to organize entries based on flags, for example, which may help in special occasions.
0.12.0 (2023-01-06)
New Features
-
entry::Time
can convert from and to system time. - add
State::sort_entries()
and State::dangerously_push_entry()
. Both methods work in tandem as one breaks invariants, but allows to quickly add entries, while the other restores them. - add
State::entry_mut_by_path_and_stage()
-
State::write_to()
respects the REMOVED
flag. That way, one can mark entries for removal and these will be pruned at write time. This is preferable over performing removals expensively in memory. - expose
gix_hash
as hash
in the root of the crate. This makes it easier to use the crate standalone as plumbing as instantiation requires access to gix_hash
. - add
File::at_or_default(...)
to easily open or create an empty in-memory index. This is a common operation in new repositories. - add
State::new()
to create a new empty in-memory index. - add
File::set_path()
to allow setting the location of an index file on disk. This is useful to change the location of an index after reading it (from another location, similar to copy-on-write).
Changed (BREAKING)
- remove
File::into_state()
in favor of From<File> for State
. That way it‘s less discoverable, but more idiomatic, and we don’t want to get into the habit of providing multiple names of the exact same functionality.
0.11.0 (2022-12-30)
A maintenance release without user-facing changes.
0.10.0 (2022-12-19)
A maintenance release without user-facing changes.
0.9.1 (2022-11-27)
New Features
- name spawned threads That way it‘s a bit more obvious what’s happening when the CPU goes up in flames.
0.9.0 (2022-11-21)
New Features (BREAKING)
upgrade edition to 2021 in most crates. MSRV for this is 1.56, and we are now at 1.60 so should be compatible. This isn‘t more than a patch release as it should break nobody who is adhering to the MSRV, but let’s be careful and mark it breaking.
Note that gix-features
and gix-pack
are still on edition 2018 as they make use of a workaround to support (safe) mutable access to non-overlapping entries in a slice which doesn't work anymore in edition 2021.
0.8.0 (2022-11-17)
A maintenance release without user-facing changes.
0.7.1 (2022-11-08)
A maintenance release without user-facing changes.
0.7.0 (2022-11-06)
New Features
- Clone for
File
-
decode::Options::default_from_object_hash()
An easier way to initialize decode options, providing only the mandatory information. -
File::write()
for secure and complete writing of index files.
Other
- sketch out how a write implementation could work
Changed (BREAKING)
write::Options::object_hash
is now implied by the State
itself. The State
, once initialized, knows the kind of object hash it uses and there is no need to specify it again.
This affects some method signatures which now work without object_hash
.
decode::Options::object_hash
is now a parameter to methods. It's not actually an option that could be defaulted, but an integral piece of knowledge that must always be defined by the caller.
This also makes decode::Options::default()
available once again.
seal File
members to preserve consistency better. This also makes sure that it's obvious if the checksum
is actually already computed.
Reverted (BREAKING)
-
decode::Options::default()
- remove Default
impl. The contained gix_hash::Kind
can't actually be defaulted as we have to know the actual kind used in the repository. - remove
write::Options::default()
. In practice it‘s required to inform about the hash kind to use and it’s possibly incorrect to assume Sha1.
0.6.0 (2022-10-10)
Maintenance release without user-facing changes.
0.5.0 (2022-09-20)
Other
Changed (BREAKING)
0.4.3 (2022-08-27)
Maintenance release without user-facing changes.
0.4.2 (2022-08-24)
Chore
- remove default link to cargo doc everywhere
New Features
- use docsrs feature in code to show what is feature-gated automatically on docs.rs
- pass --cfg docsrs when compiling for https://docs.rs
0.4.1 (2022-08-17)
New Features
-
Stage::entry_index_by_path_and_stage()
, now with ::entry_by_path_and_stage()
-
State::entry_by_path_and_stage()
to find entries. -
Debug
and Clone
for File
0.4.0 (2022-07-22)
This is a maintenance release with no functional changes.
0.3.0 (2022-05-18)
New Features
-
State::path_backing()
. That way it's possible to call certain methods that take a separate path buffer. - support for separating lifetimes of entries and path-backing This way it should be possible to access paths immutably even while entries are available mutably, assuming we stagger accesses to put mutation of entries last.
0.2.0 (2022-04-03)
Bug Fixes
Bug Fixes (BREAKING)
- lower rust edition to 2018
0.1.0 (2022-01-19)
The initial release which can read a complete index, version 2 to 4, with all extensions. The reading can be performed with multiple threads as well, partially depending on whether certain extensions are present.
v0.0.0 (2020-08-28)