diff --git a/.github/workflows/msrv.yml b/.github/workflows/msrv.yml
index 4d2e98cbfd7..922615f22e3 100644
--- a/.github/workflows/msrv.yml
+++ b/.github/workflows/msrv.yml
@@ -19,8 +19,9 @@ jobs:
- ubuntu-latest
runs-on: ${{ matrix.os }}
env:
- # dictated by `firefox` to support the `helix` editor, but now driven by the `time` crate. IMPORTANT: adjust etc/msrv-badge.svg as well
- rust_version: 1.67.0
+ # dictated by `firefox` to support the `helix` editor, but now probably effectively be controlled by `jiff`, which also aligns with `regex`.
+ # IMPORTANT: adjust etc/msrv-badge.svg as well
+ rust_version: 1.70.0
steps:
- uses: actions/checkout@v4
- uses: extractions/setup-just@v2
diff --git a/Cargo.lock b/Cargo.lock
index 4cf9cfc1a95..b2044b9d16e 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1240,7 +1240,6 @@ dependencies = [
"prodash",
"serde_derive",
"terminal_size",
- "time",
"tracing",
"tracing-forest",
"tracing-subscriber",
@@ -1298,7 +1297,7 @@ dependencies = [
"gix-commitgraph 0.24.3",
"gix-config",
"gix-credentials",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-diff",
"gix-dir",
"gix-discover 0.33.0",
@@ -1373,7 +1372,7 @@ version = "0.31.5"
dependencies = [
"bstr",
"document-features",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-hash 0.14.2",
"gix-testtools",
"gix-utils 0.1.12",
@@ -1392,7 +1391,7 @@ dependencies = [
"document-features",
"flate2",
"gix-attributes 0.22.3",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-filter",
"gix-hash 0.14.2",
"gix-object 0.42.3",
@@ -1401,9 +1400,9 @@ dependencies = [
"gix-testtools",
"gix-worktree 0.34.1",
"gix-worktree-stream",
+ "jiff",
"tar",
"thiserror",
- "time",
"zip",
]
@@ -1515,7 +1514,7 @@ dependencies = [
"bstr",
"document-features",
"gix-chunk 0.4.8",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-features 0.38.2",
"gix-hash 0.14.2",
"gix-testtools",
@@ -1608,17 +1607,17 @@ dependencies = [
[[package]]
name = "gix-date"
-version = "0.8.7"
+version = "0.9.0"
dependencies = [
"bstr",
"document-features",
"gix-hash 0.14.2",
"gix-testtools",
"itoa",
+ "jiff",
"once_cell",
"serde",
"thiserror",
- "time",
]
[[package]]
@@ -2021,7 +2020,7 @@ dependencies = [
"bstr",
"document-features",
"gix-actor 0.31.5",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-testtools",
"serde",
"thiserror",
@@ -2033,7 +2032,7 @@ version = "0.13.2"
dependencies = [
"bitflags 2.4.1",
"gix-commitgraph 0.24.3",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-hash 0.14.2",
"gix-object 0.42.3",
"gix-odb",
@@ -2075,7 +2074,7 @@ dependencies = [
"criterion",
"document-features",
"gix-actor 0.31.5",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-features 0.38.2",
"gix-hash 0.14.2",
"gix-testtools",
@@ -2095,7 +2094,7 @@ version = "0.61.1"
dependencies = [
"arc-swap",
"document-features",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-features 0.38.2",
"gix-fs 0.11.2",
"gix-hash 0.14.2",
@@ -2116,7 +2115,7 @@ dependencies = [
"crossbeam-channel",
"filetime",
"gix-actor 0.31.5",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-features 0.38.2",
"gix-hash 0.14.2",
"gix-object 0.42.3",
@@ -2268,7 +2267,7 @@ dependencies = [
"futures-io",
"futures-lite 2.1.0",
"gix-credentials",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-features 0.38.2",
"gix-hash 0.14.2",
"gix-packetline",
@@ -2333,7 +2332,7 @@ version = "0.45.0"
dependencies = [
"document-features",
"gix-actor 0.31.5",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-features 0.38.2",
"gix-fs 0.11.2",
"gix-hash 0.14.2",
@@ -2355,7 +2354,7 @@ name = "gix-ref-tests"
version = "0.0.0"
dependencies = [
"gix-actor 0.31.5",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-discover 0.33.0",
"gix-features 0.38.2",
"gix-fs 0.11.2",
@@ -2388,7 +2387,7 @@ dependencies = [
"bstr",
"document-features",
"gix-commitgraph 0.24.3",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-hash 0.14.2",
"gix-hashtable 0.5.2",
"gix-object 0.42.3",
@@ -2420,7 +2419,7 @@ name = "gix-revwalk"
version = "0.13.2"
dependencies = [
"gix-commitgraph 0.24.3",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-hash 0.14.2",
"gix-hashtable 0.5.2",
"gix-object 0.42.3",
@@ -2643,7 +2642,7 @@ version = "0.39.2"
dependencies = [
"bitflags 2.4.1",
"gix-commitgraph 0.24.3",
- "gix-date 0.8.7",
+ "gix-date 0.9.0",
"gix-hash 0.14.2",
"gix-hashtable 0.5.2",
"gix-object 0.42.3",
@@ -3077,9 +3076,9 @@ dependencies = [
[[package]]
name = "indoc"
-version = "2.0.4"
+version = "2.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
+checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
[[package]]
name = "instant"
@@ -3183,6 +3182,31 @@ version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+[[package]]
+name = "jiff"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c33f2189d126c374d29641af39a0dc73daa1c8292403645575ce32e22e768a4"
+dependencies = [
+ "jiff-tzdb-platform",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "jiff-tzdb"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05fac328b3df1c0f18a3c2ab6cb7e06e4e549f366017d796e3e66b6d6889abe6"
+
+[[package]]
+name = "jiff-tzdb-platform"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8da387d5feaf355954c2c122c194d6df9c57d865125a67984bb453db5336940"
+dependencies = [
+ "jiff-tzdb",
+]
+
[[package]]
name = "js-sys"
version = "0.3.66"
@@ -5499,7 +5523,6 @@ dependencies = [
"indexmap",
"memchr",
"thiserror",
- "time",
"zopfli",
]
diff --git a/Cargo.toml b/Cargo.toml
index 4dc1037437a..fb25223a704 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -164,14 +164,12 @@ http-client-reqwest = ["gix/blocking-http-transport-reqwest-rust-tls"]
## Use async client networking.
gitoxide-core-async-client = ["gitoxide-core/async-client", "futures-lite"]
-
[dependencies]
anyhow = "1.0.42"
gitoxide-core = { version = "^0.39.1", path = "gitoxide-core" }
gix-features = { version = "^0.38.2", path = "gix-features" }
gix = { version = "^0.64.0", path = "gix", default-features = false }
-time = "0.3.23"
clap = { version = "4.1.1", features = ["derive", "cargo"] }
clap_complete = "4.4.3"
diff --git a/etc/msrv-badge.svg b/etc/msrv-badge.svg
index 3e6cb76b75c..e2938f8f94b 100644
--- a/etc/msrv-badge.svg
+++ b/etc/msrv-badge.svg
@@ -1 +1,21 @@
-
+
diff --git a/gix-actor/Cargo.toml b/gix-actor/Cargo.toml
index 56fd21b58ff..a7e009b3fbd 100644
--- a/gix-actor/Cargo.toml
+++ b/gix-actor/Cargo.toml
@@ -18,7 +18,7 @@ doctest = false
serde = ["dep:serde", "bstr/serde", "gix-date/serde"]
[dependencies]
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-utils = { version = "^0.1.11", path = "../gix-utils" }
thiserror = "1.0.38"
diff --git a/gix-archive/Cargo.toml b/gix-archive/Cargo.toml
index e932caf1717..2fb96e1414b 100644
--- a/gix-archive/Cargo.toml
+++ b/gix-archive/Cargo.toml
@@ -21,18 +21,18 @@ tar = ["dep:tar", "dep:gix-path"]
tar_gz = ["tar", "dep:flate2"]
## Enable the `zip` archive format.
-zip = ["dep:zip", "dep:time"]
+zip = ["dep:zip"]
[dependencies]
gix-worktree-stream = { version = "^0.13.1", path = "../gix-worktree-stream" }
gix-object = { version = "^0.42.3", path = "../gix-object" }
gix-path = { version = "^0.10.9", path = "../gix-path", optional = true }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
flate2 = { version = "1.0.26", optional = true }
-zip = { version = "2.1.0", optional = true, default-features = false, features = ["deflate", "time"] }
-time = { version = "0.3.23", optional = true, default-features = false, features = ["std"] }
+zip = { version = "2.1.0", optional = true, default-features = false, features = ["deflate"] }
+jiff = { version = "0.1.2", default-features = false, features = ["std"] }
thiserror = "1.0.26"
bstr = { version = "1.5.0", default-features = false }
diff --git a/gix-archive/src/write.rs b/gix-archive/src/write.rs
index 244b40554e0..0c6fd435f25 100644
--- a/gix-archive/src/write.rs
+++ b/gix-archive/src/write.rs
@@ -134,10 +134,22 @@ where
{
let mut ar = zip::write::ZipWriter::new(out);
let mut buf = Vec::new();
- let mtime = time::OffsetDateTime::from_unix_timestamp(opts.modification_time)
+ let zdt = jiff::Timestamp::from_second(opts.modification_time)
.map_err(|err| Error::InvalidModificationTime(Box::new(err)))?
- .try_into()
- .map_err(|err| Error::InvalidModificationTime(Box::new(err)))?;
+ .to_zoned(jiff::tz::TimeZone::UTC);
+ let mtime = zip::DateTime::from_date_and_time(
+ zdt.year()
+ .try_into()
+ .map_err(|err| Error::InvalidModificationTime(Box::new(err)))?,
+ // These are all OK because month, day, hour, minute and second
+ // are always positive.
+ zdt.month().try_into().expect("non-negative"),
+ zdt.day().try_into().expect("non-negative"),
+ zdt.hour().try_into().expect("non-negative"),
+ zdt.minute().try_into().expect("non-negative"),
+ zdt.second().try_into().expect("non-negative"),
+ )
+ .map_err(|err| Error::InvalidModificationTime(Box::new(err)))?;
while let Some(entry) = next_entry(stream)? {
append_zip_entry(
&mut ar,
diff --git a/gix-date/CHANGELOG.md b/gix-date/CHANGELOG.md
index f101ec0468e..610eb1f2cba 100644
--- a/gix-date/CHANGELOG.md
+++ b/gix-date/CHANGELOG.md
@@ -5,6 +5,58 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## Unreleased
+
+This is a *breaking release* as the `time` is gone and it's API isn't available publicly anymore.
+
+### Other
+
+ - switch from `time` to `jiff`
+ This swaps out `time` for `jiff`. It doesn't completely remove `time`
+ from the dependency tree. The last remaining use of `time` is in
+ `prodash`, outside of the gitoxide project.
+ - bump MSRV to Rust 1.70
+ The bump to Rust 1.70 (released over 1 year ago) is needed since that's
+ Jiff current MSRV. This doesn't bump the MSRV of the broader gitoxide
+ project, however, so this is probably wrong or incomplete.
+ - make `time` a private dependency of `gix-date`
+ This should make the swap from `time` to `jiff` easier.
+
+ This comment[1] indicates that it's okay for `time` to be a public
+ dependency, but since this patch series is about swapping `time` for
+ `jiff`, it seemed appropriate to take this step first. And in
+ particular, it was *almost* already the case that `time` was a private
+ dependency of `gix-date`. The only thing we really had to button up was
+ the exposure of `time`'s custom formatting description language.
+
+ Jiff doesn't support `time`'s custom formatting machinery and instead
+ uses a strftime/strptime like API. We could expose that instead, but
+ since nothing (other than a test) was actually utilizing `time`'s custom
+ formatting machinery external to `gix-date`, I figured we might as well
+ completely encapsulate it.
+
+### Commit Statistics
+
+
+
+ - 4 commits contributed to the release over the course of 2 calendar days.
+ - 35 days passed between releases.
+ - 3 commits were understood as [conventional](https://www.conventionalcommits.org).
+ - 0 issues like '(#ID)' were seen in commit messages
+
+### Commit Details
+
+
+
+view details
+
+ * **Uncategorized**
+ - Assure the next release is breaking ([`04760c5`](https://github.com/BurntSushi/gitoxide/commit/04760c50be9114e66a32f8e0606e5e6db96566f7))
+ - Switch from `time` to `jiff` ([`28ac657`](https://github.com/BurntSushi/gitoxide/commit/28ac6572722f7ea31795dc0417521c70bcb6ec8f))
+ - Bump MSRV to Rust 1.70 ([`1b9c30d`](https://github.com/BurntSushi/gitoxide/commit/1b9c30dfb43373a76f3b65ae90a74dc99a892821))
+ - Make `time` a private dependency of `gix-date` ([`5a88413`](https://github.com/BurntSushi/gitoxide/commit/5a88413a2d3acb5c4ba5e49e47a42f0182d9e9fb))
+
+
## 0.8.7 (2024-06-23)
A maintenance release without user-facing changes.
@@ -13,7 +65,7 @@ A maintenance release without user-facing changes.
- - 7 commits contributed to the release over the course of 21 calendar days.
+ - 8 commits contributed to the release over the course of 21 calendar days.
- 40 days passed between releases.
- 0 commits were understood as [conventional](https://www.conventionalcommits.org).
- 0 issues like '(#ID)' were seen in commit messages
@@ -25,13 +77,14 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - Prepare release of `gix-mailmap` ([`14c3396`](https://github.com/Byron/gitoxide/commit/14c339614b76706dfbf77fe97319f0c3452390e6))
- - Merge branch 'tar-only' ([`1dfa90d`](https://github.com/Byron/gitoxide/commit/1dfa90d641306b4099a6ecd52e2056b231467807))
- - Remove binary files in favor of `tar` files ([`dcab79a`](https://github.com/Byron/gitoxide/commit/dcab79a6958cbf5cd69184c24497dc27c6f94961))
- - Merge branch 'main' into config-key-take-2 ([`9fa1054`](https://github.com/Byron/gitoxide/commit/9fa1054a01071180d7b08c8c2b5bd61e9d0d32da))
- - Merge pull request #1361 from EliahKagan/freebsd ([`9c65d98`](https://github.com/Byron/gitoxide/commit/9c65d9886328f53129b966aecdc91644297c54be))
- - Regenerate archives for changed scripts ([`ea12fc2`](https://github.com/Byron/gitoxide/commit/ea12fc234e898eb15013da40d2a82f69c2d20482))
- - Make bash script shebangs more portable ([`68cbea8`](https://github.com/Byron/gitoxide/commit/68cbea815aa979acb0b86943db83ab77bbc728c4))
+ - Release gix-date v0.8.7, gix-mailmap v0.23.2 ([`c1d7c02`](https://github.com/BurntSushi/gitoxide/commit/c1d7c023d595eb04891b65295f001d85c9ba8074))
+ - Prepare release of `gix-mailmap` ([`14c3396`](https://github.com/BurntSushi/gitoxide/commit/14c339614b76706dfbf77fe97319f0c3452390e6))
+ - Merge branch 'tar-only' ([`1dfa90d`](https://github.com/BurntSushi/gitoxide/commit/1dfa90d641306b4099a6ecd52e2056b231467807))
+ - Remove binary files in favor of `tar` files ([`dcab79a`](https://github.com/BurntSushi/gitoxide/commit/dcab79a6958cbf5cd69184c24497dc27c6f94961))
+ - Merge branch 'main' into config-key-take-2 ([`9fa1054`](https://github.com/BurntSushi/gitoxide/commit/9fa1054a01071180d7b08c8c2b5bd61e9d0d32da))
+ - Merge pull request #1361 from EliahKagan/freebsd ([`9c65d98`](https://github.com/BurntSushi/gitoxide/commit/9c65d9886328f53129b966aecdc91644297c54be))
+ - Regenerate archives for changed scripts ([`ea12fc2`](https://github.com/BurntSushi/gitoxide/commit/ea12fc234e898eb15013da40d2a82f69c2d20482))
+ - Make bash script shebangs more portable ([`68cbea8`](https://github.com/BurntSushi/gitoxide/commit/68cbea815aa979acb0b86943db83ab77bbc728c4))
## 0.8.6 (2024-05-14)
@@ -53,7 +106,7 @@ A maintenance release without user-facing changes.
- 5 commits contributed to the release over the course of 24 calendar days.
- 60 days passed between releases.
- 2 commits were understood as [conventional](https://www.conventionalcommits.org).
- - 1 unique issue was worked on: [#1367](https://github.com/Byron/gitoxide/issues/1367)
+ - 1 unique issue was worked on: [#1367](https://github.com/BurntSushi/gitoxide/issues/1367)
### Commit Details
@@ -61,13 +114,13 @@ A maintenance release without user-facing changes.
view details
- * **[#1367](https://github.com/Byron/gitoxide/issues/1367)**
- - Assure writing invalid dates doesn't panic. ([`3448fd9`](https://github.com/Byron/gitoxide/commit/3448fd9cc0edc93d7a5b511fd4ec0a8e84b87e51))
+ * **[#1367](https://github.com/BurntSushi/gitoxide/issues/1367)**
+ - Assure writing invalid dates doesn't panic. ([`3448fd9`](https://github.com/BurntSushi/gitoxide/commit/3448fd9cc0edc93d7a5b511fd4ec0a8e84b87e51))
* **Uncategorized**
- - Release gix-date v0.8.6 ([`d3588ca`](https://github.com/Byron/gitoxide/commit/d3588ca4fe0364c88e42cdac24ceae548355d99d))
- - Merge branch 'status' ([`04ef31e`](https://github.com/Byron/gitoxide/commit/04ef31e9d6f5332d49037a5a4c248ebbb5aaf92b))
- - Merge branch 'status' ([`68fd5b3`](https://github.com/Byron/gitoxide/commit/68fd5b34e1214d5c2cc7d00dd06e19ee86c00c66))
- - Make clear that `Time::seconds` is UTC. ([`8d610ab`](https://github.com/Byron/gitoxide/commit/8d610ab8de7d3f62116632de6975f00c845dc842))
+ - Release gix-date v0.8.6 ([`d3588ca`](https://github.com/BurntSushi/gitoxide/commit/d3588ca4fe0364c88e42cdac24ceae548355d99d))
+ - Merge branch 'status' ([`04ef31e`](https://github.com/BurntSushi/gitoxide/commit/04ef31e9d6f5332d49037a5a4c248ebbb5aaf92b))
+ - Merge branch 'status' ([`68fd5b3`](https://github.com/BurntSushi/gitoxide/commit/68fd5b34e1214d5c2cc7d00dd06e19ee86c00c66))
+ - Make clear that `Time::seconds` is UTC. ([`8d610ab`](https://github.com/BurntSushi/gitoxide/commit/8d610ab8de7d3f62116632de6975f00c845dc842))
## 0.8.5 (2024-03-14)
@@ -90,10 +143,10 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - Release gix-date v0.8.5, gix-hash v0.14.2, gix-trace v0.1.8, gix-utils v0.1.11, gix-features v0.38.1, gix-actor v0.31.0, gix-validate v0.8.4, gix-object v0.42.0, gix-path v0.10.7, gix-glob v0.16.2, gix-quote v0.4.12, gix-attributes v0.22.2, gix-command v0.3.6, gix-filter v0.11.0, gix-fs v0.10.1, gix-chunk v0.4.8, gix-commitgraph v0.24.2, gix-hashtable v0.5.2, gix-revwalk v0.13.0, gix-traverse v0.38.0, gix-worktree-stream v0.11.0, gix-archive v0.11.0, gix-config-value v0.14.6, gix-tempfile v13.1.1, gix-lock v13.1.1, gix-ref v0.43.0, gix-sec v0.10.6, gix-config v0.36.0, gix-prompt v0.8.4, gix-url v0.27.2, gix-credentials v0.24.2, gix-ignore v0.11.2, gix-bitmap v0.2.11, gix-index v0.31.0, gix-worktree v0.32.0, gix-diff v0.42.0, gix-discover v0.31.0, gix-pathspec v0.7.1, gix-dir v0.2.0, gix-macros v0.1.4, gix-mailmap v0.23.0, gix-negotiate v0.13.0, gix-pack v0.49.0, gix-odb v0.59.0, gix-packetline v0.17.4, gix-transport v0.41.2, gix-protocol v0.44.2, gix-revision v0.27.0, gix-refspec v0.23.0, gix-status v0.7.0, gix-submodule v0.10.0, gix-worktree-state v0.9.0, gix v0.60.0, safety bump 26 crates ([`b050327`](https://github.com/Byron/gitoxide/commit/b050327e76f234b19be921b78b7b28e034319fdb))
- - Prepare changelogs prior to release ([`52c3bbd`](https://github.com/Byron/gitoxide/commit/52c3bbd36b9e94a0f3a78b4ada84d0c08eba27f6))
- - Merge branch 'status' ([`3e5c974`](https://github.com/Byron/gitoxide/commit/3e5c974dd62ac134711c6c2f5a5490187a6ea55e))
- - Fix lints for nightly, and clippy ([`f8ce3d0`](https://github.com/Byron/gitoxide/commit/f8ce3d0721b6a53713a9392f2451874f520bc44c))
+ - Release gix-date v0.8.5, gix-hash v0.14.2, gix-trace v0.1.8, gix-utils v0.1.11, gix-features v0.38.1, gix-actor v0.31.0, gix-validate v0.8.4, gix-object v0.42.0, gix-path v0.10.7, gix-glob v0.16.2, gix-quote v0.4.12, gix-attributes v0.22.2, gix-command v0.3.6, gix-filter v0.11.0, gix-fs v0.10.1, gix-chunk v0.4.8, gix-commitgraph v0.24.2, gix-hashtable v0.5.2, gix-revwalk v0.13.0, gix-traverse v0.38.0, gix-worktree-stream v0.11.0, gix-archive v0.11.0, gix-config-value v0.14.6, gix-tempfile v13.1.1, gix-lock v13.1.1, gix-ref v0.43.0, gix-sec v0.10.6, gix-config v0.36.0, gix-prompt v0.8.4, gix-url v0.27.2, gix-credentials v0.24.2, gix-ignore v0.11.2, gix-bitmap v0.2.11, gix-index v0.31.0, gix-worktree v0.32.0, gix-diff v0.42.0, gix-discover v0.31.0, gix-pathspec v0.7.1, gix-dir v0.2.0, gix-macros v0.1.4, gix-mailmap v0.23.0, gix-negotiate v0.13.0, gix-pack v0.49.0, gix-odb v0.59.0, gix-packetline v0.17.4, gix-transport v0.41.2, gix-protocol v0.44.2, gix-revision v0.27.0, gix-refspec v0.23.0, gix-status v0.7.0, gix-submodule v0.10.0, gix-worktree-state v0.9.0, gix v0.60.0, safety bump 26 crates ([`b050327`](https://github.com/BurntSushi/gitoxide/commit/b050327e76f234b19be921b78b7b28e034319fdb))
+ - Prepare changelogs prior to release ([`52c3bbd`](https://github.com/BurntSushi/gitoxide/commit/52c3bbd36b9e94a0f3a78b4ada84d0c08eba27f6))
+ - Merge branch 'status' ([`3e5c974`](https://github.com/BurntSushi/gitoxide/commit/3e5c974dd62ac134711c6c2f5a5490187a6ea55e))
+ - Fix lints for nightly, and clippy ([`f8ce3d0`](https://github.com/BurntSushi/gitoxide/commit/f8ce3d0721b6a53713a9392f2451874f520bc44c))
## 0.8.4 (2024-02-25)
@@ -116,10 +169,10 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - Release gix-date v0.8.4, gix-utils v0.1.10, gix-actor v0.30.1, gix-object v0.41.1, gix-path v0.10.6, gix-glob v0.16.1, gix-quote v0.4.11, gix-attributes v0.22.1, gix-command v0.3.5, gix-filter v0.10.0, gix-commitgraph v0.24.1, gix-worktree-stream v0.10.0, gix-archive v0.10.0, gix-config-value v0.14.5, gix-ref v0.42.0, gix-sec v0.10.5, gix-config v0.35.0, gix-prompt v0.8.3, gix-url v0.27.1, gix-credentials v0.24.1, gix-ignore v0.11.1, gix-index v0.30.0, gix-worktree v0.31.0, gix-diff v0.41.0, gix-discover v0.30.0, gix-pathspec v0.7.0, gix-dir v0.1.0, gix-pack v0.48.0, gix-odb v0.58.0, gix-transport v0.41.1, gix-protocol v0.44.1, gix-revision v0.26.1, gix-refspec v0.22.1, gix-status v0.6.0, gix-submodule v0.9.0, gix-worktree-state v0.8.0, gix v0.59.0, gix-fsck v0.3.0, gitoxide-core v0.36.0, gitoxide v0.34.0, safety bump 10 crates ([`45b4470`](https://github.com/Byron/gitoxide/commit/45b447045bc826f252129c300c531acde2652c64))
- - Prepare changelogs prior to release ([`f2e111f`](https://github.com/Byron/gitoxide/commit/f2e111f768fc1bc6182355261c20b63610cffec7))
- - Merge branch 'dirwalk' ([`face359`](https://github.com/Byron/gitoxide/commit/face359443ba33e8985ec1525d5ec38b743ea7a9))
- - Adjust gitignore files with precious declarations ([`ae86a6a`](https://github.com/Byron/gitoxide/commit/ae86a6a206074b85ff1eba32aea9c8b40c087b17))
+ - Release gix-date v0.8.4, gix-utils v0.1.10, gix-actor v0.30.1, gix-object v0.41.1, gix-path v0.10.6, gix-glob v0.16.1, gix-quote v0.4.11, gix-attributes v0.22.1, gix-command v0.3.5, gix-filter v0.10.0, gix-commitgraph v0.24.1, gix-worktree-stream v0.10.0, gix-archive v0.10.0, gix-config-value v0.14.5, gix-ref v0.42.0, gix-sec v0.10.5, gix-config v0.35.0, gix-prompt v0.8.3, gix-url v0.27.1, gix-credentials v0.24.1, gix-ignore v0.11.1, gix-index v0.30.0, gix-worktree v0.31.0, gix-diff v0.41.0, gix-discover v0.30.0, gix-pathspec v0.7.0, gix-dir v0.1.0, gix-pack v0.48.0, gix-odb v0.58.0, gix-transport v0.41.1, gix-protocol v0.44.1, gix-revision v0.26.1, gix-refspec v0.22.1, gix-status v0.6.0, gix-submodule v0.9.0, gix-worktree-state v0.8.0, gix v0.59.0, gix-fsck v0.3.0, gitoxide-core v0.36.0, gitoxide v0.34.0, safety bump 10 crates ([`45b4470`](https://github.com/BurntSushi/gitoxide/commit/45b447045bc826f252129c300c531acde2652c64))
+ - Prepare changelogs prior to release ([`f2e111f`](https://github.com/BurntSushi/gitoxide/commit/f2e111f768fc1bc6182355261c20b63610cffec7))
+ - Merge branch 'dirwalk' ([`face359`](https://github.com/BurntSushi/gitoxide/commit/face359443ba33e8985ec1525d5ec38b743ea7a9))
+ - Adjust gitignore files with precious declarations ([`ae86a6a`](https://github.com/BurntSushi/gitoxide/commit/ae86a6a206074b85ff1eba32aea9c8b40c087b17))
## 0.8.3 (2023-12-30)
@@ -150,9 +203,9 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - Release gix-date v0.8.3, gix-hash v0.14.1, gix-trace v0.1.6, gix-features v0.37.1, gix-actor v0.29.1, gix-validate v0.8.3, gix-object v0.40.1, gix-path v0.10.3, gix-glob v0.15.1, gix-quote v0.4.10, gix-attributes v0.21.1, gix-command v0.3.2, gix-packetline-blocking v0.17.2, gix-utils v0.1.8, gix-filter v0.8.1, gix-fs v0.9.1, gix-chunk v0.4.7, gix-commitgraph v0.23.1, gix-hashtable v0.5.1, gix-revwalk v0.11.1, gix-traverse v0.36.1, gix-worktree-stream v0.8.1, gix-archive v0.8.1, gix-config-value v0.14.3, gix-tempfile v12.0.1, gix-lock v12.0.1, gix-ref v0.40.1, gix-sec v0.10.3, gix-config v0.33.1, gix-prompt v0.8.2, gix-url v0.26.1, gix-credentials v0.23.1, gix-ignore v0.10.1, gix-bitmap v0.2.10, gix-index v0.28.1, gix-worktree v0.29.1, gix-diff v0.39.1, gix-discover v0.28.1, gix-macros v0.1.3, gix-mailmap v0.21.1, gix-negotiate v0.11.1, gix-pack v0.46.1, gix-odb v0.56.1, gix-pathspec v0.5.1, gix-packetline v0.17.2, gix-transport v0.40.1, gix-protocol v0.43.1, gix-revision v0.25.1, gix-refspec v0.21.1, gix-status v0.4.1, gix-submodule v0.7.1, gix-worktree-state v0.6.1, gix v0.57.1 ([`972241f`](https://github.com/Byron/gitoxide/commit/972241f1904944e8b6e84c6aa1649a49be7a85c3))
- - Merge branch 'msrv' ([`8c492d7`](https://github.com/Byron/gitoxide/commit/8c492d7b7e6e5d520b1e3ffeb489eeb88266aa75))
- - Change `rust-version` manifest field back to 1.65. ([`3bd09ef`](https://github.com/Byron/gitoxide/commit/3bd09ef120945a9669321ea856db4079a5dab930))
+ - Release gix-date v0.8.3, gix-hash v0.14.1, gix-trace v0.1.6, gix-features v0.37.1, gix-actor v0.29.1, gix-validate v0.8.3, gix-object v0.40.1, gix-path v0.10.3, gix-glob v0.15.1, gix-quote v0.4.10, gix-attributes v0.21.1, gix-command v0.3.2, gix-packetline-blocking v0.17.2, gix-utils v0.1.8, gix-filter v0.8.1, gix-fs v0.9.1, gix-chunk v0.4.7, gix-commitgraph v0.23.1, gix-hashtable v0.5.1, gix-revwalk v0.11.1, gix-traverse v0.36.1, gix-worktree-stream v0.8.1, gix-archive v0.8.1, gix-config-value v0.14.3, gix-tempfile v12.0.1, gix-lock v12.0.1, gix-ref v0.40.1, gix-sec v0.10.3, gix-config v0.33.1, gix-prompt v0.8.2, gix-url v0.26.1, gix-credentials v0.23.1, gix-ignore v0.10.1, gix-bitmap v0.2.10, gix-index v0.28.1, gix-worktree v0.29.1, gix-diff v0.39.1, gix-discover v0.28.1, gix-macros v0.1.3, gix-mailmap v0.21.1, gix-negotiate v0.11.1, gix-pack v0.46.1, gix-odb v0.56.1, gix-pathspec v0.5.1, gix-packetline v0.17.2, gix-transport v0.40.1, gix-protocol v0.43.1, gix-revision v0.25.1, gix-refspec v0.21.1, gix-status v0.4.1, gix-submodule v0.7.1, gix-worktree-state v0.6.1, gix v0.57.1 ([`972241f`](https://github.com/BurntSushi/gitoxide/commit/972241f1904944e8b6e84c6aa1649a49be7a85c3))
+ - Merge branch 'msrv' ([`8c492d7`](https://github.com/BurntSushi/gitoxide/commit/8c492d7b7e6e5d520b1e3ffeb489eeb88266aa75))
+ - Change `rust-version` manifest field back to 1.65. ([`3bd09ef`](https://github.com/BurntSushi/gitoxide/commit/3bd09ef120945a9669321ea856db4079a5dab930))
## 0.8.2 (2023-12-29)
@@ -180,13 +233,13 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - Release gix-date v0.8.2, gix-hash v0.14.0, gix-trace v0.1.5, gix-features v0.37.0, gix-actor v0.29.0, gix-validate v0.8.2, gix-object v0.40.0, gix-path v0.10.2, gix-glob v0.15.0, gix-quote v0.4.9, gix-attributes v0.21.0, gix-command v0.3.1, gix-packetline-blocking v0.17.1, gix-utils v0.1.7, gix-filter v0.8.0, gix-fs v0.9.0, gix-chunk v0.4.6, gix-commitgraph v0.23.0, gix-hashtable v0.5.0, gix-revwalk v0.11.0, gix-traverse v0.36.0, gix-worktree-stream v0.8.0, gix-archive v0.8.0, gix-config-value v0.14.2, gix-tempfile v12.0.0, gix-lock v12.0.0, gix-ref v0.40.0, gix-sec v0.10.2, gix-config v0.33.0, gix-prompt v0.8.1, gix-url v0.26.0, gix-credentials v0.23.0, gix-ignore v0.10.0, gix-bitmap v0.2.9, gix-index v0.28.0, gix-worktree v0.29.0, gix-diff v0.39.0, gix-discover v0.28.0, gix-macros v0.1.2, gix-mailmap v0.21.0, gix-negotiate v0.11.0, gix-pack v0.46.0, gix-odb v0.56.0, gix-pathspec v0.5.0, gix-packetline v0.17.1, gix-transport v0.40.0, gix-protocol v0.43.0, gix-revision v0.25.0, gix-refspec v0.21.0, gix-status v0.4.0, gix-submodule v0.7.0, gix-worktree-state v0.6.0, gix v0.57.0, gix-fsck v0.2.0, gitoxide-core v0.35.0, gitoxide v0.33.0, safety bump 40 crates ([`e1aae19`](https://github.com/Byron/gitoxide/commit/e1aae191d7421c748913c92e2c5883274331dd20))
- - Prepare changelogs of next release ([`e78a92b`](https://github.com/Byron/gitoxide/commit/e78a92bfeda168b2f35bb7ba9a94175cdece12f2))
- - Merge branch 'maintenance' ([`4454c9d`](https://github.com/Byron/gitoxide/commit/4454c9d66c32a1de75a66639016c73edbda3bd34))
- - Upgrade MSRV to v1.70 ([`aea89c3`](https://github.com/Byron/gitoxide/commit/aea89c3ad52f1a800abb620e9a4701bdf904ff7d))
- - Merge branch 'main' into fix-1183 ([`1691ba6`](https://github.com/Byron/gitoxide/commit/1691ba669537f4a39ebb0891747dc509a6aedbef))
- - Merge branch 'archive-handling' ([`7549559`](https://github.com/Byron/gitoxide/commit/7549559fcbf42249939f41fd7aa34b4449eb1fec))
- - Check all git-lfs managed files into the repository ([`35439de`](https://github.com/Byron/gitoxide/commit/35439defd2d71779d4b3795b7652cde18ff11150))
+ - Release gix-date v0.8.2, gix-hash v0.14.0, gix-trace v0.1.5, gix-features v0.37.0, gix-actor v0.29.0, gix-validate v0.8.2, gix-object v0.40.0, gix-path v0.10.2, gix-glob v0.15.0, gix-quote v0.4.9, gix-attributes v0.21.0, gix-command v0.3.1, gix-packetline-blocking v0.17.1, gix-utils v0.1.7, gix-filter v0.8.0, gix-fs v0.9.0, gix-chunk v0.4.6, gix-commitgraph v0.23.0, gix-hashtable v0.5.0, gix-revwalk v0.11.0, gix-traverse v0.36.0, gix-worktree-stream v0.8.0, gix-archive v0.8.0, gix-config-value v0.14.2, gix-tempfile v12.0.0, gix-lock v12.0.0, gix-ref v0.40.0, gix-sec v0.10.2, gix-config v0.33.0, gix-prompt v0.8.1, gix-url v0.26.0, gix-credentials v0.23.0, gix-ignore v0.10.0, gix-bitmap v0.2.9, gix-index v0.28.0, gix-worktree v0.29.0, gix-diff v0.39.0, gix-discover v0.28.0, gix-macros v0.1.2, gix-mailmap v0.21.0, gix-negotiate v0.11.0, gix-pack v0.46.0, gix-odb v0.56.0, gix-pathspec v0.5.0, gix-packetline v0.17.1, gix-transport v0.40.0, gix-protocol v0.43.0, gix-revision v0.25.0, gix-refspec v0.21.0, gix-status v0.4.0, gix-submodule v0.7.0, gix-worktree-state v0.6.0, gix v0.57.0, gix-fsck v0.2.0, gitoxide-core v0.35.0, gitoxide v0.33.0, safety bump 40 crates ([`e1aae19`](https://github.com/BurntSushi/gitoxide/commit/e1aae191d7421c748913c92e2c5883274331dd20))
+ - Prepare changelogs of next release ([`e78a92b`](https://github.com/BurntSushi/gitoxide/commit/e78a92bfeda168b2f35bb7ba9a94175cdece12f2))
+ - Merge branch 'maintenance' ([`4454c9d`](https://github.com/BurntSushi/gitoxide/commit/4454c9d66c32a1de75a66639016c73edbda3bd34))
+ - Upgrade MSRV to v1.70 ([`aea89c3`](https://github.com/BurntSushi/gitoxide/commit/aea89c3ad52f1a800abb620e9a4701bdf904ff7d))
+ - Merge branch 'main' into fix-1183 ([`1691ba6`](https://github.com/BurntSushi/gitoxide/commit/1691ba669537f4a39ebb0891747dc509a6aedbef))
+ - Merge branch 'archive-handling' ([`7549559`](https://github.com/BurntSushi/gitoxide/commit/7549559fcbf42249939f41fd7aa34b4449eb1fec))
+ - Check all git-lfs managed files into the repository ([`35439de`](https://github.com/BurntSushi/gitoxide/commit/35439defd2d71779d4b3795b7652cde18ff11150))
## 0.8.1 (2023-12-06)
@@ -209,15 +262,15 @@ A maintenance release without user-facing changes.
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`](https://github.com/Byron/gitoxide/commit/55d386a2448aba1dd22c73fb63b3fd5b3a8401c9))
- - Prepare changelogs prior to release ([`d3dcbe5`](https://github.com/Byron/gitoxide/commit/d3dcbe5c4e3a004360d02fbfb74a8fad52f19b5e))
- - J fmt ([`51c7abc`](https://github.com/Byron/gitoxide/commit/51c7abc65f368b1b2bd3d82473793d3cd4fcbad5))
- - Merge branch 'check-cfg' ([`5a0d93e`](https://github.com/Byron/gitoxide/commit/5a0d93e7522564d126c34ce5d569f9a385698513))
- - Replace all docsrs config by the document-features feature ([`bb3224c`](https://github.com/Byron/gitoxide/commit/bb3224c25abf6df50286b3bbdf2cdef01e9eeca1))
- - Merge branch 'fix-gix-rev' ([`d3fb537`](https://github.com/Byron/gitoxide/commit/d3fb5377bb3a90deae714e613d89a891fcf69d40))
- - For good measure, use `unsigned_abs()` for a variant that can't panic. ([`045dd9d`](https://github.com/Byron/gitoxide/commit/045dd9db06e30e3852904651ac29cf82b2792066))
- - Merge branch 'size-optimization' ([`c0e72fb`](https://github.com/Byron/gitoxide/commit/c0e72fbadc0a494f47a110aebb46462d7b9f5664))
- - Remove CHANGELOG.md from all packages ([`b65a80b`](https://github.com/Byron/gitoxide/commit/b65a80b05c9372e752e7e67fcc5c073f71da164a))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/55d386a2448aba1dd22c73fb63b3fd5b3a8401c9))
+ - Prepare changelogs prior to release ([`d3dcbe5`](https://github.com/BurntSushi/gitoxide/commit/d3dcbe5c4e3a004360d02fbfb74a8fad52f19b5e))
+ - J fmt ([`51c7abc`](https://github.com/BurntSushi/gitoxide/commit/51c7abc65f368b1b2bd3d82473793d3cd4fcbad5))
+ - Merge branch 'check-cfg' ([`5a0d93e`](https://github.com/BurntSushi/gitoxide/commit/5a0d93e7522564d126c34ce5d569f9a385698513))
+ - Replace all docsrs config by the document-features feature ([`bb3224c`](https://github.com/BurntSushi/gitoxide/commit/bb3224c25abf6df50286b3bbdf2cdef01e9eeca1))
+ - Merge branch 'fix-gix-rev' ([`d3fb537`](https://github.com/BurntSushi/gitoxide/commit/d3fb5377bb3a90deae714e613d89a891fcf69d40))
+ - For good measure, use `unsigned_abs()` for a variant that can't panic. ([`045dd9d`](https://github.com/BurntSushi/gitoxide/commit/045dd9db06e30e3852904651ac29cf82b2792066))
+ - Merge branch 'size-optimization' ([`c0e72fb`](https://github.com/BurntSushi/gitoxide/commit/c0e72fbadc0a494f47a110aebb46462d7b9f5664))
+ - Remove CHANGELOG.md from all packages ([`b65a80b`](https://github.com/BurntSushi/gitoxide/commit/b65a80b05c9372e752e7e67fcc5c073f71da164a))
## 0.8.0 (2023-09-08)
@@ -243,11 +296,11 @@ A maintenance release without user-facing changes.
view 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`](https://github.com/Byron/gitoxide/commit/8bd045676bb2cdc02624ab93e73ff8518064ca38))
- - Prepare changelogs for release ([`375db06`](https://github.com/Byron/gitoxide/commit/375db06a8442378c3f7a922fae38e2a6694d9d04))
- - Merge branch `dyn`ification ([`f658fcc`](https://github.com/Byron/gitoxide/commit/f658fcc52dc2200ae34ca53dc10be97fb9012057))
- - Use `dyn` trait where possible. ([`072ee32`](https://github.com/Byron/gitoxide/commit/072ee32f693a31161cd6a843da6582d13efbb20b))
- - Merge branch 'adjustments-for-cargo' ([`b7560a2`](https://github.com/Byron/gitoxide/commit/b7560a2445b62f888bf5aa2ba4c5a47ae037cb23))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/8bd045676bb2cdc02624ab93e73ff8518064ca38))
+ - Prepare changelogs for release ([`375db06`](https://github.com/BurntSushi/gitoxide/commit/375db06a8442378c3f7a922fae38e2a6694d9d04))
+ - Merge branch `dyn`ification ([`f658fcc`](https://github.com/BurntSushi/gitoxide/commit/f658fcc52dc2200ae34ca53dc10be97fb9012057))
+ - Use `dyn` trait where possible. ([`072ee32`](https://github.com/BurntSushi/gitoxide/commit/072ee32f693a31161cd6a843da6582d13efbb20b))
+ - Merge branch 'adjustments-for-cargo' ([`b7560a2`](https://github.com/BurntSushi/gitoxide/commit/b7560a2445b62f888bf5aa2ba4c5a47ae037cb23))
## 0.7.4 (2023-09-01)
@@ -276,10 +329,10 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates ([`3be2b1c`](https://github.com/Byron/gitoxide/commit/3be2b1ccfe30eeae45711c64b88efc522a2b51b7))
- - Prepare `gix-index` release ([`6fdbc66`](https://github.com/Byron/gitoxide/commit/6fdbc667c20f10734390341b435c15c73b7cd227))
- - Thanks clippy ([`5044c3b`](https://github.com/Byron/gitoxide/commit/5044c3b87456cf58ebfbbd00f23c9ba671cb290c))
- - Merge branch 'gix-submodule' ([`363ee77`](https://github.com/Byron/gitoxide/commit/363ee77400805f473c9ad66eadad9214e7ab66f4))
+ - Release gix-date v0.7.4, gix-index v0.23.0, safety bump 5 crates ([`3be2b1c`](https://github.com/BurntSushi/gitoxide/commit/3be2b1ccfe30eeae45711c64b88efc522a2b51b7))
+ - Prepare `gix-index` release ([`6fdbc66`](https://github.com/BurntSushi/gitoxide/commit/6fdbc667c20f10734390341b435c15c73b7cd227))
+ - Thanks clippy ([`5044c3b`](https://github.com/BurntSushi/gitoxide/commit/5044c3b87456cf58ebfbbd00f23c9ba671cb290c))
+ - Merge branch 'gix-submodule' ([`363ee77`](https://github.com/BurntSushi/gitoxide/commit/363ee77400805f473c9ad66eadad9214e7ab66f4))
## 0.7.3 (2023-08-22)
@@ -306,9 +359,9 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - 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`](https://github.com/Byron/gitoxide/commit/30b27615047692d3ced1b2d9c2ac15a80f79fbee))
- - Update changelogs prior to release ([`f23ea88`](https://github.com/Byron/gitoxide/commit/f23ea8828f2d9ba7559973daca388c9591bcc5fc))
- - Don't call crate 'WIP' in manifest anymore. ([`229bd48`](https://github.com/Byron/gitoxide/commit/229bd4899213f749a7cc124aa2b82a1368fba40f))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/30b27615047692d3ced1b2d9c2ac15a80f79fbee))
+ - Update changelogs prior to release ([`f23ea88`](https://github.com/BurntSushi/gitoxide/commit/f23ea8828f2d9ba7559973daca388c9591bcc5fc))
+ - Don't call crate 'WIP' in manifest anymore. ([`229bd48`](https://github.com/BurntSushi/gitoxide/commit/229bd4899213f749a7cc124aa2b82a1368fba40f))
## 0.7.2 (2023-08-07)
@@ -322,7 +375,7 @@ A maintenance release without user-facing changes.
- 6 commits contributed to the release over the course of 4 calendar days.
- 15 days passed between releases.
- 0 commits were understood as [conventional](https://www.conventionalcommits.org).
- - 1 unique issue was worked on: [#961](https://github.com/Byron/gitoxide/issues/961)
+ - 1 unique issue was worked on: [#961](https://github.com/BurntSushi/gitoxide/issues/961)
### Commit Details
@@ -330,14 +383,14 @@ A maintenance release without user-facing changes.
view details
- * **[#961](https://github.com/Byron/gitoxide/issues/961)**
- - Add another fuzz-failure that doesn't fail ([`90ec770`](https://github.com/Byron/gitoxide/commit/90ec77057fa8a7d191c959e2f3a3c958270803eb))
+ * **[#961](https://github.com/BurntSushi/gitoxide/issues/961)**
+ - Add another fuzz-failure that doesn't fail ([`90ec770`](https://github.com/BurntSushi/gitoxide/commit/90ec77057fa8a7d191c959e2f3a3c958270803eb))
* **Uncategorized**
- - 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`](https://github.com/Byron/gitoxide/commit/4604f83ef238dc07c85aaeae097399b67f3cfd0c))
- - Prepare changelogs prior to release of `gix-submodule` ([`f3c4311`](https://github.com/Byron/gitoxide/commit/f3c43110e8d5f16cf87e50821044d8b3edbae235))
- - Merge branch 'dev-on-linux' ([`6b4a303`](https://github.com/Byron/gitoxide/commit/6b4a30330fe49fc97daa73f55bf56580cc0597aa))
- - Fix various tests to run properly on linux ([`ef8ccd9`](https://github.com/Byron/gitoxide/commit/ef8ccd9d16143d37155d063747c69cade80f162d))
- - Update `time` crate explicitly in Cargo.toml to latest version ([`e145a74`](https://github.com/Byron/gitoxide/commit/e145a7489dd5e1a7c3458428ecbd101e7b53536b))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/4604f83ef238dc07c85aaeae097399b67f3cfd0c))
+ - Prepare changelogs prior to release of `gix-submodule` ([`f3c4311`](https://github.com/BurntSushi/gitoxide/commit/f3c43110e8d5f16cf87e50821044d8b3edbae235))
+ - Merge branch 'dev-on-linux' ([`6b4a303`](https://github.com/BurntSushi/gitoxide/commit/6b4a30330fe49fc97daa73f55bf56580cc0597aa))
+ - Fix various tests to run properly on linux ([`ef8ccd9`](https://github.com/BurntSushi/gitoxide/commit/ef8ccd9d16143d37155d063747c69cade80f162d))
+ - Update `time` crate explicitly in Cargo.toml to latest version ([`e145a74`](https://github.com/BurntSushi/gitoxide/commit/e145a7489dd5e1a7c3458428ecbd101e7b53536b))
## 0.7.1 (2023-07-22)
@@ -360,9 +413,9 @@ A maintenance release without user-facing changes.
view details
* **Uncategorized**
- - 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`](https://github.com/Byron/gitoxide/commit/5cb3589b74fc5376e02cbfe151e71344e1c417fe))
- - Update changelogs prior to release ([`2fc66b5`](https://github.com/Byron/gitoxide/commit/2fc66b55097ed494b72d1af939ba5561f71fde97))
- - Update license field following SPDX 2.1 license expression standard ([`9064ea3`](https://github.com/Byron/gitoxide/commit/9064ea31fae4dc59a56bdd3a06c0ddc990ee689e))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/5cb3589b74fc5376e02cbfe151e71344e1c417fe))
+ - Update changelogs prior to release ([`2fc66b5`](https://github.com/BurntSushi/gitoxide/commit/2fc66b55097ed494b72d1af939ba5561f71fde97))
+ - Update license field following SPDX 2.1 license expression standard ([`9064ea3`](https://github.com/BurntSushi/gitoxide/commit/9064ea31fae4dc59a56bdd3a06c0ddc990ee689e))
## 0.7.0 (2023-06-29)
@@ -390,11 +443,11 @@ A maintenance release without user-facing changes.
view 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`](https://github.com/Byron/gitoxide/commit/27e8c18db5a9a21843381c116a8ed6d9f681b3f8))
- - Prepare changelogs prior to release ([`00f96fb`](https://github.com/Byron/gitoxide/commit/00f96fb3110a8f81a1bd0d74c757c15b8773c6f6))
- - Merge branch 'i64-times' ([`b407461`](https://github.com/Byron/gitoxide/commit/b407461d8991db67a5bdb2ab13f518f78a85ed40))
- - Adapt to changes in `gix-date` ([`fba45c6`](https://github.com/Byron/gitoxide/commit/fba45c68d57d5f73070a6949556a04187d42e427))
- - Support dates prior to the UNIX epoch. ([`09fbfd2`](https://github.com/Byron/gitoxide/commit/09fbfd2ac3100947c8ea96fdf6425032354aee1b))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/27e8c18db5a9a21843381c116a8ed6d9f681b3f8))
+ - Prepare changelogs prior to release ([`00f96fb`](https://github.com/BurntSushi/gitoxide/commit/00f96fb3110a8f81a1bd0d74c757c15b8773c6f6))
+ - Merge branch 'i64-times' ([`b407461`](https://github.com/BurntSushi/gitoxide/commit/b407461d8991db67a5bdb2ab13f518f78a85ed40))
+ - Adapt to changes in `gix-date` ([`fba45c6`](https://github.com/BurntSushi/gitoxide/commit/fba45c68d57d5f73070a6949556a04187d42e427))
+ - Support dates prior to the UNIX epoch. ([`09fbfd2`](https://github.com/BurntSushi/gitoxide/commit/09fbfd2ac3100947c8ea96fdf6425032354aee1b))
## 0.6.0 (2023-06-22)
@@ -430,15 +483,15 @@ A maintenance release without user-facing changes.
view 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`](https://github.com/Byron/gitoxide/commit/ea9f9424e777f10da0e33bb9ffbbefd01c4c5a74))
- - Prepare changelogs prior to release ([`18b0a37`](https://github.com/Byron/gitoxide/commit/18b0a371941aa2d4d62512437d5daa351ba99ffd))
- - `just fmt` ([`871dd0b`](https://github.com/Byron/gitoxide/commit/871dd0b977caf17159092a4739ba5408403cdb2c))
- - Merge branch 'corpus' ([`aa16c8c`](https://github.com/Byron/gitoxide/commit/aa16c8ce91452a3e3063cf1cf0240b6014c4743f))
- - Change MSRV to 1.65 ([`4f635fc`](https://github.com/Byron/gitoxide/commit/4f635fc4429350bae2582d25de86429969d28f30))
- - Merge branch 'help-874-redundant-closures' ([`fe59956`](https://github.com/Byron/gitoxide/commit/fe59956ad667303a923d7cfd9ffd72283df41d78))
- - Add `clippy::redundant-closure-for-method-calls` lint ([`bcad5c2`](https://github.com/Byron/gitoxide/commit/bcad5c22049d56a25ef69d6c7a3344e78f9a1d4d))
- - Merge branch 'future-dates' ([`8d2e6a9`](https://github.com/Byron/gitoxide/commit/8d2e6a91ac92a033e9e3daad5cffa90263075536))
- - Represent time as 64 bit integer. ([`4bc0ae1`](https://github.com/Byron/gitoxide/commit/4bc0ae1eb313ad83c793f397af9ca791b9b171e5))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/ea9f9424e777f10da0e33bb9ffbbefd01c4c5a74))
+ - Prepare changelogs prior to release ([`18b0a37`](https://github.com/BurntSushi/gitoxide/commit/18b0a371941aa2d4d62512437d5daa351ba99ffd))
+ - `just fmt` ([`871dd0b`](https://github.com/BurntSushi/gitoxide/commit/871dd0b977caf17159092a4739ba5408403cdb2c))
+ - Merge branch 'corpus' ([`aa16c8c`](https://github.com/BurntSushi/gitoxide/commit/aa16c8ce91452a3e3063cf1cf0240b6014c4743f))
+ - Change MSRV to 1.65 ([`4f635fc`](https://github.com/BurntSushi/gitoxide/commit/4f635fc4429350bae2582d25de86429969d28f30))
+ - Merge branch 'help-874-redundant-closures' ([`fe59956`](https://github.com/BurntSushi/gitoxide/commit/fe59956ad667303a923d7cfd9ffd72283df41d78))
+ - Add `clippy::redundant-closure-for-method-calls` lint ([`bcad5c2`](https://github.com/BurntSushi/gitoxide/commit/bcad5c22049d56a25ef69d6c7a3344e78f9a1d4d))
+ - Merge branch 'future-dates' ([`8d2e6a9`](https://github.com/BurntSushi/gitoxide/commit/8d2e6a91ac92a033e9e3daad5cffa90263075536))
+ - Represent time as 64 bit integer. ([`4bc0ae1`](https://github.com/BurntSushi/gitoxide/commit/4bc0ae1eb313ad83c793f397af9ca791b9b171e5))
## 0.5.1 (2023-06-06)
@@ -461,11 +514,11 @@ A maintenance release without user-facing changes.
view 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`](https://github.com/Byron/gitoxide/commit/9a9fa96fa8a722bddc5c3b2270b0edf8f6615141))
- - Prepare changelogs prior to release ([`8f15cec`](https://github.com/Byron/gitoxide/commit/8f15cec1ec7d5a9d56bb158f155011ef2bb3539b))
- - Merge branch 'main' into auto-clippy ([`3ef5c90`](https://github.com/Byron/gitoxide/commit/3ef5c90aebce23385815f1df674c1d28d58b4b0d))
- - Merge branch 'blinxen/main' ([`9375cd7`](https://github.com/Byron/gitoxide/commit/9375cd75b01aa22a0e2eed6305fe45fabfd6c1ac))
- - Include license files in all crates ([`facaaf6`](https://github.com/Byron/gitoxide/commit/facaaf633f01c857dcf2572c6dbe0a92b7105c1c))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/9a9fa96fa8a722bddc5c3b2270b0edf8f6615141))
+ - Prepare changelogs prior to release ([`8f15cec`](https://github.com/BurntSushi/gitoxide/commit/8f15cec1ec7d5a9d56bb158f155011ef2bb3539b))
+ - Merge branch 'main' into auto-clippy ([`3ef5c90`](https://github.com/BurntSushi/gitoxide/commit/3ef5c90aebce23385815f1df674c1d28d58b4b0d))
+ - Merge branch 'blinxen/main' ([`9375cd7`](https://github.com/BurntSushi/gitoxide/commit/9375cd75b01aa22a0e2eed6305fe45fabfd6c1ac))
+ - Include license files in all crates ([`facaaf6`](https://github.com/BurntSushi/gitoxide/commit/facaaf633f01c857dcf2572c6dbe0a92b7105c1c))
## 0.5.0 (2023-04-19)
@@ -487,7 +540,7 @@ A maintenance release without user-facing changes.
- 5 commits contributed to the release over the course of 2 calendar days.
- 57 days passed between releases.
- 1 commit was understood as [conventional](https://www.conventionalcommits.org).
- - 1 unique issue was worked on: [#814](https://github.com/Byron/gitoxide/issues/814)
+ - 1 unique issue was worked on: [#814](https://github.com/BurntSushi/gitoxide/issues/814)
### Commit Details
@@ -495,13 +548,13 @@ A maintenance release without user-facing changes.
view details
- * **[#814](https://github.com/Byron/gitoxide/issues/814)**
- - Rename `serde1` cargo feature to `serde` and use the weak-deps cargo capability. ([`b83ee36`](https://github.com/Byron/gitoxide/commit/b83ee366a3c65c717beb587ad809268f1c54b8ad))
+ * **[#814](https://github.com/BurntSushi/gitoxide/issues/814)**
+ - Rename `serde1` cargo feature to `serde` and use the weak-deps cargo capability. ([`b83ee36`](https://github.com/BurntSushi/gitoxide/commit/b83ee366a3c65c717beb587ad809268f1c54b8ad))
* **Uncategorized**
- - 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`](https://github.com/Byron/gitoxide/commit/8dbd0a60557a85acfa231800a058cbac0271a8cf))
- - Prepare changelog prior to release ([`7f06458`](https://github.com/Byron/gitoxide/commit/7f064583bd0e1b078df89a7750f5a25deb70f516))
- - Merge branch 'main' into dev ([`cdef398`](https://github.com/Byron/gitoxide/commit/cdef398c4a3bd01baf0be2c27a3f77a400172b0d))
- - Rename the serde1 feature to serde ([`19338d9`](https://github.com/Byron/gitoxide/commit/19338d934b6712b7d6bd3fa3b2e4189bf7e6c8a1))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/8dbd0a60557a85acfa231800a058cbac0271a8cf))
+ - Prepare changelog prior to release ([`7f06458`](https://github.com/BurntSushi/gitoxide/commit/7f064583bd0e1b078df89a7750f5a25deb70f516))
+ - Merge branch 'main' into dev ([`cdef398`](https://github.com/BurntSushi/gitoxide/commit/cdef398c4a3bd01baf0be2c27a3f77a400172b0d))
+ - Rename the serde1 feature to serde ([`19338d9`](https://github.com/BurntSushi/gitoxide/commit/19338d934b6712b7d6bd3fa3b2e4189bf7e6c8a1))
## 0.4.3 (2023-02-20)
@@ -535,8 +588,8 @@ A maintenance release without user-facing changes.
view 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`](https://github.com/Byron/gitoxide/commit/96047839a20a657a559376b0b14c65aeab96acbd))
- - Compatibility with `bstr` v1.3, use `*.as_bytes()` instead of `.as_ref()`. ([`135d317`](https://github.com/Byron/gitoxide/commit/135d317065aae87af302beb6c26bb6ca8e30b6aa))
+ - 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`](https://github.com/BurntSushi/gitoxide/commit/96047839a20a657a559376b0b14c65aeab96acbd))
+ - Compatibility with `bstr` v1.3, use `*.as_bytes()` instead of `.as_ref()`. ([`135d317`](https://github.com/BurntSushi/gitoxide/commit/135d317065aae87af302beb6c26bb6ca8e30b6aa))
## 0.4.2 (2023-02-17)
@@ -634,7 +687,7 @@ A maintenance release without user-facing changes.
- 186 commits contributed to the release over the course of 309 calendar days.
- 26 commits were understood as [conventional](https://www.conventionalcommits.org).
- - 7 unique issues were worked on: [#331](https://github.com/Byron/gitoxide/issues/331), [#427](https://github.com/Byron/gitoxide/issues/427), [#450](https://github.com/Byron/gitoxide/issues/450), [#470](https://github.com/Byron/gitoxide/issues/470), [#691](https://github.com/Byron/gitoxide/issues/691), [#711](https://github.com/Byron/gitoxide/issues/711), [#720](https://github.com/Byron/gitoxide/issues/720)
+ - 7 unique issues were worked on: [#331](https://github.com/BurntSushi/gitoxide/issues/331), [#427](https://github.com/BurntSushi/gitoxide/issues/427), [#450](https://github.com/BurntSushi/gitoxide/issues/450), [#470](https://github.com/BurntSushi/gitoxide/issues/470), [#691](https://github.com/BurntSushi/gitoxide/issues/691), [#711](https://github.com/BurntSushi/gitoxide/issues/711), [#720](https://github.com/BurntSushi/gitoxide/issues/720)
### Thanks Clippy
@@ -648,200 +701,200 @@ A maintenance release without user-facing changes.
view details
- * **[#331](https://github.com/Byron/gitoxide/issues/331)**
- - Initialize `Time` from `now_utc` and `now_local` ([`c76fde7`](https://github.com/Byron/gitoxide/commit/c76fde7de278b49ded13b655d5345e4eb8c1b134))
- - `Time::is_set()` to see if the time is more than just the default. ([`aeda76e`](https://github.com/Byron/gitoxide/commit/aeda76ed500d2edba62747d667227f2664edd267))
- - Frame for git-date ([`37e8ef8`](https://github.com/Byron/gitoxide/commit/37e8ef890305db0798059919290a0d27a9a39194))
- * **[#427](https://github.com/Byron/gitoxide/issues/427)**
- - Make fmt ([`4b320e7`](https://github.com/Byron/gitoxide/commit/4b320e773368ac5e8c38dd8a779ef3d6d2d024ec))
- - Git-style disambiguation errors ([`5717194`](https://github.com/Byron/gitoxide/commit/57171946081c03da98f3d33f5b963c3bc4b2d6d9))
- - Reflog lookup by date is complete ([`b3d009e`](https://github.com/Byron/gitoxide/commit/b3d009e80e3e81afd3d095fa2d7b5fc737d585c7))
- - Add `Time` type. ([`cfb6a72`](https://github.com/Byron/gitoxide/commit/cfb6a726ddb763f7c22688f8ef309e719c2dfce4))
- * **[#450](https://github.com/Byron/gitoxide/issues/450)**
- - Upgrade `bstr` to `1.0.1` ([`99905ba`](https://github.com/Byron/gitoxide/commit/99905bacace8aed42b16d43f0f04cae996cb971c))
- * **[#470](https://github.com/Byron/gitoxide/issues/470)**
- - Update changelogs prior to release ([`caa7a1b`](https://github.com/Byron/gitoxide/commit/caa7a1bdef74d7d3166a7e38127a59f5ab3cfbdd))
- * **[#691](https://github.com/Byron/gitoxide/issues/691)**
- - Set `rust-version` to 1.64 ([`55066ce`](https://github.com/Byron/gitoxide/commit/55066ce5fd71209abb5d84da2998b903504584bb))
- * **[#711](https://github.com/Byron/gitoxide/issues/711)**
- - Assure we get the latest version of the `time` crate ([`cb31cd1`](https://github.com/Byron/gitoxide/commit/cb31cd16bc4a6e749c298cfbc7e0dad05b11b96c))
- * **[#720](https://github.com/Byron/gitoxide/issues/720)**
- - Prevent panics from dates which cannot be represented by the `time` crate ([`786f6dc`](https://github.com/Byron/gitoxide/commit/786f6dc5c1f765b9598cd55ca8fb1714ad177e46))
+ * **[#331](https://github.com/BurntSushi/gitoxide/issues/331)**
+ - Initialize `Time` from `now_utc` and `now_local` ([`c76fde7`](https://github.com/BurntSushi/gitoxide/commit/c76fde7de278b49ded13b655d5345e4eb8c1b134))
+ - `Time::is_set()` to see if the time is more than just the default. ([`aeda76e`](https://github.com/BurntSushi/gitoxide/commit/aeda76ed500d2edba62747d667227f2664edd267))
+ - Frame for git-date ([`37e8ef8`](https://github.com/BurntSushi/gitoxide/commit/37e8ef890305db0798059919290a0d27a9a39194))
+ * **[#427](https://github.com/BurntSushi/gitoxide/issues/427)**
+ - Make fmt ([`4b320e7`](https://github.com/BurntSushi/gitoxide/commit/4b320e773368ac5e8c38dd8a779ef3d6d2d024ec))
+ - Git-style disambiguation errors ([`5717194`](https://github.com/BurntSushi/gitoxide/commit/57171946081c03da98f3d33f5b963c3bc4b2d6d9))
+ - Reflog lookup by date is complete ([`b3d009e`](https://github.com/BurntSushi/gitoxide/commit/b3d009e80e3e81afd3d095fa2d7b5fc737d585c7))
+ - Add `Time` type. ([`cfb6a72`](https://github.com/BurntSushi/gitoxide/commit/cfb6a726ddb763f7c22688f8ef309e719c2dfce4))
+ * **[#450](https://github.com/BurntSushi/gitoxide/issues/450)**
+ - Upgrade `bstr` to `1.0.1` ([`99905ba`](https://github.com/BurntSushi/gitoxide/commit/99905bacace8aed42b16d43f0f04cae996cb971c))
+ * **[#470](https://github.com/BurntSushi/gitoxide/issues/470)**
+ - Update changelogs prior to release ([`caa7a1b`](https://github.com/BurntSushi/gitoxide/commit/caa7a1bdef74d7d3166a7e38127a59f5ab3cfbdd))
+ * **[#691](https://github.com/BurntSushi/gitoxide/issues/691)**
+ - Set `rust-version` to 1.64 ([`55066ce`](https://github.com/BurntSushi/gitoxide/commit/55066ce5fd71209abb5d84da2998b903504584bb))
+ * **[#711](https://github.com/BurntSushi/gitoxide/issues/711)**
+ - Assure we get the latest version of the `time` crate ([`cb31cd1`](https://github.com/BurntSushi/gitoxide/commit/cb31cd16bc4a6e749c298cfbc7e0dad05b11b96c))
+ * **[#720](https://github.com/BurntSushi/gitoxide/issues/720)**
+ - Prevent panics from dates which cannot be represented by the `time` crate ([`786f6dc`](https://github.com/BurntSushi/gitoxide/commit/786f6dc5c1f765b9598cd55ca8fb1714ad177e46))
* **Uncategorized**
- - 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`](https://github.com/Byron/gitoxide/commit/6ccc88a8e4a56973b1a358cf72dc012ee3c75d56))
- - Merge branch 'rename-crates' into inform-about-gix-rename ([`c9275b9`](https://github.com/Byron/gitoxide/commit/c9275b99ea43949306d93775d9d78c98fb86cfb1))
- - Rename `git-testtools` to `gix-testtools` ([`b65c33d`](https://github.com/Byron/gitoxide/commit/b65c33d256cfed65d11adeff41132e3e58754089))
- - Adjust to renaming of `git-pack` to `gix-pack` ([`1ee81ad`](https://github.com/Byron/gitoxide/commit/1ee81ad310285ee4aa118118a2be3810dbace574))
- - Adjust to renaming of `git-odb` to `gix-odb` ([`476e2ad`](https://github.com/Byron/gitoxide/commit/476e2ad1a64e9e3f0d7c8651d5bcbee36cd78241))
- - Adjust to renaming of `git-index` to `gix-index` ([`86db5e0`](https://github.com/Byron/gitoxide/commit/86db5e09fc58ce66b252dc13b8d7e2c48e4d5062))
- - Adjust to renaming of `git-diff` to `gix-diff` ([`49a163e`](https://github.com/Byron/gitoxide/commit/49a163ec8b18f0e5fcd05a315de16d5d8be7650e))
- - Adjust to renaming of `git-commitgraph` to `gix-commitgraph` ([`f1dd0a3`](https://github.com/Byron/gitoxide/commit/f1dd0a3366e31259af029da73228e8af2f414244))
- - Adjust to renaming of `git-mailmap` to `gix-mailmap` ([`2e28c56`](https://github.com/Byron/gitoxide/commit/2e28c56bb9f70de6f97439818118d3a25859698f))
- - Adjust to renaming of `git-discover` to `gix-discover` ([`53adfe1`](https://github.com/Byron/gitoxide/commit/53adfe1c34e9ea3b27067a97b5e7ac80b351c441))
- - Adjust to renaming of `git-chunk` to `gix-chunk` ([`59194e3`](https://github.com/Byron/gitoxide/commit/59194e3a07853eae0624ebc4907478d1de4f7599))
- - Adjust to renaming of `git-bitmap` to `gix-bitmap` ([`75f2a07`](https://github.com/Byron/gitoxide/commit/75f2a079b17489f62bc43e1f1d932307375c4f9d))
- - Adjust to renaming for `git-protocol` to `gix-protocol` ([`823795a`](https://github.com/Byron/gitoxide/commit/823795addea3810243cab7936cd8ec0137cbc224))
- - Adjust to renaming of `git-refspec` to `gix-refspec` ([`c958802`](https://github.com/Byron/gitoxide/commit/c9588020561577736faa065e7e5b5bb486ca8fe1))
- - Adjust to renaming of `git-revision` to `gix-revision` ([`ee0ee84`](https://github.com/Byron/gitoxide/commit/ee0ee84607c2ffe11ee75f27a31903db68afed02))
- - Adjust to renaming of `git-transport` to `gix-transport` ([`b2ccf71`](https://github.com/Byron/gitoxide/commit/b2ccf716dc4425bb96651d4d58806a3cc2da219e))
- - Adjust to renaming of `git-credentials` to `gix-credentials` ([`6b18abc`](https://github.com/Byron/gitoxide/commit/6b18abcf2856f02ab938d535a65e51ac282bf94a))
- - Adjust to renaming of `git-prompt` to `gix-prompt` ([`6a4654e`](https://github.com/Byron/gitoxide/commit/6a4654e0d10ab773dd219cb4b731c0fc1471c36d))
- - Adjust to renaming of `git-command` to `gix-command` ([`d26b8e0`](https://github.com/Byron/gitoxide/commit/d26b8e046496894ae06b0bbfdba77196976cd975))
- - Adjust to renaming of `git-packetline` to `gix-packetline` ([`5cbd22c`](https://github.com/Byron/gitoxide/commit/5cbd22cf42efb760058561c6c3bbcd4dab8c8be1))
- - Adjust to renaming of `git-worktree` to `gix-worktree` ([`73a1282`](https://github.com/Byron/gitoxide/commit/73a12821b3d9b66ec1714d07dd27eb7a73e3a544))
- - Adjust to renamining of `git-worktree` to `gix-worktree` ([`108bb1a`](https://github.com/Byron/gitoxide/commit/108bb1a634f4828853fb590e9fc125f79441dd38))
- - Adjust to renaming of `git-url` to `gix-url` ([`b50817a`](https://github.com/Byron/gitoxide/commit/b50817aadb143e19f61f64e19b19ec1107d980c6))
- - Adjust to renaming of `git-date` to `gix-date` ([`9a79ff2`](https://github.com/Byron/gitoxide/commit/9a79ff2d5cc74c1efad9f41e21095ae498cce00b))
- - Rename `git-date` to `gix-date` ([`2b0a966`](https://github.com/Byron/gitoxide/commit/2b0a9662acf7c74f594138963e2efd8f576799f3))
- - Adjust to renamining of `git-attributes` to `gix-attributes` ([`4a8b3b8`](https://github.com/Byron/gitoxide/commit/4a8b3b812ac26f2a2aee8ce8ca81591273383c84))
- - Adjust to renaminig of `git-quote` to `gix-quote` ([`648025b`](https://github.com/Byron/gitoxide/commit/648025b7ca94411fdd0d90c53e5faede5fde6c8d))
- - Adjust to renaming of `git-config` to `gix-config` ([`3a861c8`](https://github.com/Byron/gitoxide/commit/3a861c8f049f6502d3bcbdac752659aa1aeda46a))
- - Adjust to renaming of `git-ref` to `gix-ref` ([`1f5f695`](https://github.com/Byron/gitoxide/commit/1f5f695407b034377d94b172465ff573562b3fc3))
- - Adjust to renaming of `git-lock` to `gix-lock` ([`2028e78`](https://github.com/Byron/gitoxide/commit/2028e7884ae1821edeec81612f501e88e4722b17))
- - Adjust to renaming of `git-tempfile` to `gix-tempfile` ([`b6cc3eb`](https://github.com/Byron/gitoxide/commit/b6cc3ebb5137084a6327af16a7d9364d8f092cc9))
- - Adjust to renaming of `git-object` to `gix-object` ([`fc86a1e`](https://github.com/Byron/gitoxide/commit/fc86a1e710ad7bf076c25cc6f028ddcf1a5a4311))
- - Adjust to renaming of `git-actor` to `gix-actor` ([`4dc9b44`](https://github.com/Byron/gitoxide/commit/4dc9b44dc52f2486ffa2040585c6897c1bf55df4))
- - Adjust to renaming of `git-validate` to `gix-validate` ([`5e40ad0`](https://github.com/Byron/gitoxide/commit/5e40ad078af3d08cbc2ca81ce755c0ed8a065b4f))
- - Adjust to renaming of `git-hash` to `gix-hash` ([`4a9d025`](https://github.com/Byron/gitoxide/commit/4a9d0257110c3efa61d08c8457c4545b200226d1))
- - Adjust to renaming of `git-features` to `gix-features` ([`e2dd68a`](https://github.com/Byron/gitoxide/commit/e2dd68a417aad229e194ff20dbbfd77668096ec6))
- - Adjust to renaming of `git-glob` to `gix-glob` ([`35b2a3a`](https://github.com/Byron/gitoxide/commit/35b2a3acbc8f2a03f151bc0a3863163844e0ca86))
- - Adjust to renaming of `git-sec` to `gix-sec` ([`eabbb92`](https://github.com/Byron/gitoxide/commit/eabbb923bd5a32fc80fa80f96cfdc2ab7bb2ed17))
- - Adapt to renaming of `git-path` to `gix-path` ([`d3bbcfc`](https://github.com/Byron/gitoxide/commit/d3bbcfccad80fc44ea8e7bf819f23adaca06ba2d))
- - Adjust to rename of `git-config-value` to `gix-config-value` ([`622b3e1`](https://github.com/Byron/gitoxide/commit/622b3e1d0bffa0f8db73697960f9712024fac430))
- - 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`](https://github.com/Byron/gitoxide/commit/c196d206d57a310b1ce974a1cf0e7e6d6db5c4d6))
- - Prepare changelogs prior to release ([`7c846d2`](https://github.com/Byron/gitoxide/commit/7c846d2102dc767366771925212712ef8cc9bf07))
- - Merge branch 'Lioness100/main' ([`1e544e8`](https://github.com/Byron/gitoxide/commit/1e544e82455bf9ecb5e3c2146280eaf7ecd81f16))
- - Fix typos ([`39ed9ed`](https://github.com/Byron/gitoxide/commit/39ed9eda62b7718d5109135e5ad406fb1fe2978c))
- - Thanks clippy ([`bac57dd`](https://github.com/Byron/gitoxide/commit/bac57dd05ea2d5a4ee45ef9350fa3f2e19474bc0))
- - Merge branch 'adjustments-for-cargo' ([`7bba270`](https://github.com/Byron/gitoxide/commit/7bba2709488b7eb999b8136dbab03af977241678))
- - Merge branch 'fix-git-date-panics' ([`56f5593`](https://github.com/Byron/gitoxide/commit/56f5593b25e300d21c380c5fb5a184445ff26183))
- - Panic in `parse_raw()` (as found by fuzzer) ([`3d6c810`](https://github.com/Byron/gitoxide/commit/3d6c81000559df91b17834ec5e9830b085277af8))
- - Fix warnings, don't track Cargo.lock to use compatible latest dependencies ([`96a56a9`](https://github.com/Byron/gitoxide/commit/96a56a9d1d76e5832a4bf505152985a74c6c7357))
- - Merge pull request #714 from silvergasp/fuzz-git-date ([`a52c54e`](https://github.com/Byron/gitoxide/commit/a52c54e97698c1b61ff70884378338f63b4d1a27))
- - Adds fuzzer for date parser ([`fe04934`](https://github.com/Byron/gitoxide/commit/fe04934d783e4c53a79fae2e0d3b0c5802ea1809))
- - Optimize usage of `hex_to_id()` ([`6fa950d`](https://github.com/Byron/gitoxide/commit/6fa950d0ab1991a5577c06385169be1b390dd88a))
- - Break cyclical dev dependencies ([`1fea18f`](https://github.com/Byron/gitoxide/commit/1fea18f5f8b4189a23dc4fa3f041a672f6fbcfb3))
- - Return the time that failed to parse in the error ([`f5c9aa8`](https://github.com/Byron/gitoxide/commit/f5c9aa827e3b9ffb82a52ad7f840c58aa0d654ed))
- - 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`](https://github.com/Byron/gitoxide/commit/5b5b3809faa71c658db38b40dfc410224d08a367))
- - Prepare changelogs prior to release ([`93bef97`](https://github.com/Byron/gitoxide/commit/93bef97b3c0c75d4bf7119fdd787516e1efc77bf))
- - Merge branch 'patch-1' ([`b93f0c4`](https://github.com/Byron/gitoxide/commit/b93f0c49fc677b6c19aea332cbfc1445ce475375))
- - Thanks clippy ([`b34c9fe`](https://github.com/Byron/gitoxide/commit/b34c9fe58223862712eacc1cb7353e497a4b9778))
- - 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`](https://github.com/Byron/gitoxide/commit/0e3d0a56d7e6a60c6578138f2690b4fa54a2072d))
- - Prepare changelogs prior to release ([`d679f5b`](https://github.com/Byron/gitoxide/commit/d679f5b6f018633e858d3ebbdaf1cd5098bbc5e7))
- - `time::format::GIT_DEFAULT` -> `*::DEFAULT` and `*::DEFAULT` -> `*::GITOXIDE`. ([`41fc2bb`](https://github.com/Byron/gitoxide/commit/41fc2bb20e6a926ffc3638c0fac21d733fdc2e3c))
- - Merge branch 'strict-raw-dates' ([`c65ce7e`](https://github.com/Byron/gitoxide/commit/c65ce7e3031b036d3a76b6e8a6c9ead39390261c))
- - Stricter raw date parsing ([`046af94`](https://github.com/Byron/gitoxide/commit/046af94f005a6e095f0d3616c0b57ef1f556f734))
- - Merge branch 'issue-679' ([`a910d9e`](https://github.com/Byron/gitoxide/commit/a910d9e7dcb2ba1979660165fa5b8cb0a2dce594))
- - Refactor ([`26597b9`](https://github.com/Byron/gitoxide/commit/26597b983d401a1efcd13b3e69aad6a39581ec0b))
- - Support git default date format ([`4066ac7`](https://github.com/Byron/gitoxide/commit/4066ac7367d8e870522746429513fb7a357a2cc6))
- - Format git-style RFC 2822 date strings ([`8094351`](https://github.com/Byron/gitoxide/commit/8094351fe547a0f6756b0ed29dc87a0e6b9ceec1))
- - Parse git-styled RFC 2822 date strings ([`dff0aa0`](https://github.com/Byron/gitoxide/commit/dff0aa0be600b9cd9518184fefa9b3c8fdb510f2))
- - 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`](https://github.com/Byron/gitoxide/commit/e6b9906c486b11057936da16ed6e0ec450a0fb83))
- - Prepare chnagelogs prior to git-repository release ([`7114bbb`](https://github.com/Byron/gitoxide/commit/7114bbb6732aa8571d4ab74f28ed3e26e9fbe4d0))
- - Merge branch 'main' into read-split-index ([`c57bdde`](https://github.com/Byron/gitoxide/commit/c57bdde6de37eca9672ea715962bbd02aa3eb055))
- - Merge branch 'adjustments-for-cargo' ([`083909b`](https://github.com/Byron/gitoxide/commit/083909bc7eb902eeee2002034fdb6ed88280dc5c))
- - Merge branch 'bugfix/system-time-correct-offset-sign' ([`6e40433`](https://github.com/Byron/gitoxide/commit/6e40433f6f607888e8f8a6c36e53a68b91fcf671))
- - Add non-isolated test that, depending on region, would catch the invalid-sign bug. ([`b649965`](https://github.com/Byron/gitoxide/commit/b6499653b71e79f17a7304c6e83d2e1776ff5d5e))
- - Negative system timezone offsets should be serialized as such ([`39655f5`](https://github.com/Byron/gitoxide/commit/39655f5f6fa39a55c4420f672e866c483f9b85ed))
- - Adjust to changes in `git-testtools` ([`4eb842c`](https://github.com/Byron/gitoxide/commit/4eb842c7150b980e1c2637217e1f9657a671cea7))
- - Merge branch 'bugfix/signed-raw-time' ([`f50b9f5`](https://github.com/Byron/gitoxide/commit/f50b9f54425e64461a31d00e082470aa5042be74))
- - Thanks clippy ([`75d6e88`](https://github.com/Byron/gitoxide/commit/75d6e882cea823100f2ad5bf26a4f1082287d80b))
- - Refactor ([`f4e8051`](https://github.com/Byron/gitoxide/commit/f4e8051fbc8cde9ba25fb1185c9e32f6aed4c0fb))
- - Correctly parse raw dates with negative timezone offsets ([`f4ea59d`](https://github.com/Byron/gitoxide/commit/f4ea59db0a429801ab40b1294da4bffd9e0f80b3))
- - Extend git-date's baseline tests to also re-format the parsed dates ([`9f95f7f`](https://github.com/Byron/gitoxide/commit/9f95f7fbbe5b56e65c00c26f580bf67a4001e146))
- - Merge branch 'bugfix/timestamp-to-datetime-conversion' ([`be0bbf5`](https://github.com/Byron/gitoxide/commit/be0bbf519c4a6687c305717ec0c12215a5836f58))
- - Always consider timestamps as UTC when loading from commits ([`be603f5`](https://github.com/Byron/gitoxide/commit/be603f593055309b74685bc2aebb8e35e6de2d59))
- - Merge branch 'main' into http-config ([`bcd9654`](https://github.com/Byron/gitoxide/commit/bcd9654e56169799eb706646da6ee1f4ef2021a9))
- - 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`](https://github.com/Byron/gitoxide/commit/b2c301ef131ffe1871314e19f387cf10a8d2ac16))
- - Prepare changelogs prior to release ([`e4648f8`](https://github.com/Byron/gitoxide/commit/e4648f827c97e9d13636d1bbdc83dd63436e6e5c))
- - Merge branch 'version2021' ([`0e4462d`](https://github.com/Byron/gitoxide/commit/0e4462df7a5166fe85c23a779462cdca8ee013e8))
- - Upgrade edition to 2021 in most crates. ([`3d8fa8f`](https://github.com/Byron/gitoxide/commit/3d8fa8fef9800b1576beab8a5bc39b821157a5ed))
- - Merge branch 'diff' ([`25a7726`](https://github.com/Byron/gitoxide/commit/25a7726377fbe400ea3c4927d04e9dec99802b7b))
- - 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`](https://github.com/Byron/gitoxide/commit/29a043be6808a3e9199a9b26bd076fe843afe4f4))
- - Merge branch 'filter-refs' ([`fd14489`](https://github.com/Byron/gitoxide/commit/fd14489f729172d615d0fa1e8dbd605e9eacf69d))
- - Merge branch 'git_date_relative' ([`83a3832`](https://github.com/Byron/gitoxide/commit/83a38329c59e9ebc057221da832fd8320bbeddb1))
- - Refactor ([`c5c6bf6`](https://github.com/Byron/gitoxide/commit/c5c6bf6ef3f0c9c12389bb638ab4d32b61839dec))
- - Refactor ([`956613f`](https://github.com/Byron/gitoxide/commit/956613fcdb33a845526fa9743aa0e7f80b3badfa))
- - Refactor ([`1026b7c`](https://github.com/Byron/gitoxide/commit/1026b7c613a3a8b46a27dd7cd5e3520043b21ab7))
- - WIP. ([`79d82d4`](https://github.com/Byron/gitoxide/commit/79d82d46613c83280d2401ef4d72a35010a70b87))
- - Parse the output while parsing the baseline file. ([`70fe59f`](https://github.com/Byron/gitoxide/commit/70fe59f4a1cad25f687397206ee2cbe50e643181))
- - Make fmt ([`535e967`](https://github.com/Byron/gitoxide/commit/535e967666c6da657ff1b7eff7c64ab27cafb182))
- - Merge branch 'main' into filter-refs-by-spec ([`1f6e5ab`](https://github.com/Byron/gitoxide/commit/1f6e5ab15f5fd8d23719b13e6aea59cd231ac0fe))
- - Parse now takes the current time `parse(…, Option
## 0.4.1 (2023-01-10)
diff --git a/gix-date/Cargo.toml b/gix-date/Cargo.toml
index 5444423c923..12f78326d89 100644
--- a/gix-date/Cargo.toml
+++ b/gix-date/Cargo.toml
@@ -1,32 +1,32 @@
[package]
name = "gix-date"
-version = "0.8.7"
+version = "0.9.0"
repository = "https://github.com/Byron/gitoxide"
license = "MIT OR Apache-2.0"
description = "A crate of the gitoxide project parsing dates the way git does"
authors = ["Sebastian Thiel "]
edition = "2021"
include = ["src/**/*", "LICENSE-*"]
-rust-version = "1.65"
+rust-version = "1.70"
[lib]
doctest = false
[features]
## Data structures implement `serde::Serialize` and `serde::Deserialize`.
-serde= ["dep:serde", "bstr/serde"]
+serde = ["dep:serde", "bstr/serde"]
[dependencies]
-bstr = { version = "1.3.0", default-features = false, features = ["std"]}
-serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"]}
+bstr = { version = "1.3.0", default-features = false, features = ["std"] }
+serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"] }
itoa = "1.0.1"
-time = { version = "0.3.23", default-features = false, features = ["local-offset", "formatting", "macros", "parsing"] }
+jiff = "0.1.1"
thiserror = "1.0.32"
document-features = { version = "0.2.0", optional = true }
[dev-dependencies]
-gix-testtools = { path = "../tests/tools"}
+gix-testtools = { path = "../tests/tools" }
once_cell = "1.12.0"
gix-hash = { path = "../gix-hash" }
diff --git a/gix-date/src/parse.rs b/gix-date/src/parse.rs
index da0691271b2..449eea0ac87 100644
--- a/gix-date/src/parse.rs
+++ b/gix-date/src/parse.rs
@@ -14,7 +14,7 @@ pub enum Error {
pub(crate) mod function {
use std::{str::FromStr, time::SystemTime};
- use time::{format_description::well_known, Date, OffsetDateTime};
+ use jiff::{civil::Date, fmt::rfc2822, tz::TimeZone, Zoned};
use crate::{
parse::{relative, Error},
@@ -32,27 +32,27 @@ pub(crate) mod function {
return Ok(Time::new(42, 1800));
}
- Ok(if let Ok(val) = Date::parse(input, SHORT) {
- let val = val.with_hms(0, 0, 0).expect("date is in range").assume_utc();
- Time::new(val.unix_timestamp(), val.offset().whole_seconds())
- } else if let Ok(val) = OffsetDateTime::parse(input, &well_known::Rfc2822) {
- Time::new(val.unix_timestamp(), val.offset().whole_seconds())
- } else if let Ok(val) = OffsetDateTime::parse(input, ISO8601) {
- Time::new(val.unix_timestamp(), val.offset().whole_seconds())
- } else if let Ok(val) = OffsetDateTime::parse(input, ISO8601_STRICT) {
- Time::new(val.unix_timestamp(), val.offset().whole_seconds())
- } else if let Ok(val) = OffsetDateTime::parse(input, GITOXIDE) {
- Time::new(val.unix_timestamp(), val.offset().whole_seconds())
- } else if let Ok(val) = OffsetDateTime::parse(input, DEFAULT) {
- Time::new(val.unix_timestamp(), val.offset().whole_seconds())
+ Ok(if let Ok(val) = Date::strptime(SHORT.0, input) {
+ let val = val.to_zoned(TimeZone::UTC).expect("date is in range");
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
+ } else if let Ok(val) = rfc2822_relaxed(input) {
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
+ } else if let Ok(val) = strptime_relaxed(ISO8601.0, input) {
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
+ } else if let Ok(val) = strptime_relaxed(ISO8601_STRICT.0, input) {
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
+ } else if let Ok(val) = strptime_relaxed(GITOXIDE.0, input) {
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
+ } else if let Ok(val) = strptime_relaxed(DEFAULT.0, input) {
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
} else if let Ok(val) = SecondsSinceUnixEpoch::from_str(input) {
// Format::Unix
Time::new(val, 0)
} else if let Some(val) = parse_raw(input) {
// Format::Raw
val
- } else if let Some(time) = relative::parse(input, now).transpose()? {
- Time::new(time.unix_timestamp(), time.offset().whole_seconds())
+ } else if let Some(val) = relative::parse(input, now).transpose()? {
+ Time::new(val.timestamp().as_second(), val.offset().seconds())
} else {
return Err(Error::InvalidDateString { input: input.into() });
})
@@ -83,52 +83,79 @@ pub(crate) mod function {
};
Some(time)
}
+
+ /// This is just like `Zoned::strptime`, but it allows parsing datetimes
+ /// whose weekdays are inconsistent with the date. While the day-of-week
+ /// still must be parsed, it is otherwise ignored. This seems to be
+ /// consistent with how `git` behaves.
+ fn strptime_relaxed(fmt: &str, input: &str) -> Result {
+ let mut tm = jiff::fmt::strtime::parse(fmt, input)?;
+ tm.set_weekday(None);
+ tm.to_zoned()
+ }
+
+ /// This is just like strptime_relaxed, except for RFC 2822 parsing.
+ /// Namely, it permits the weekday to be inconsistent with the date.
+ fn rfc2822_relaxed(input: &str) -> Result {
+ static P: rfc2822::DateTimeParser = rfc2822::DateTimeParser::new().relaxed_weekday(true);
+ P.parse_zoned(input)
+ }
}
mod relative {
use std::{str::FromStr, time::SystemTime};
- use time::{Duration, OffsetDateTime};
+ use jiff::{tz::TimeZone, Span, Timestamp, Zoned};
use crate::parse::Error;
- fn parse_inner(input: &str) -> Option {
+ fn parse_inner(input: &str) -> Option> {
let mut split = input.split_whitespace();
- let multiplier = i64::from_str(split.next()?).ok()?;
+ let units = i64::from_str(split.next()?).ok()?;
let period = split.next()?;
if split.next()? != "ago" {
return None;
}
- duration(period, multiplier)
+ span(period, units)
}
- pub(crate) fn parse(input: &str, now: Option) -> Option> {
- parse_inner(input).map(|offset| {
- let offset = std::time::Duration::from_secs(offset.whole_seconds().try_into()?);
+ pub(crate) fn parse(input: &str, now: Option) -> Option> {
+ parse_inner(input).map(|result| {
+ let span = result?;
+ // This was an error case in a previous version of this code, where
+ // it would fail when converting from a negative signed integer
+ // to an unsigned integer. This preserves that failure case even
+ // though the code below handles it okay.
+ if span.is_negative() {
+ return Err(Error::RelativeTimeConversion);
+ }
now.ok_or(Error::MissingCurrentTime).and_then(|now| {
- std::panic::catch_unwind(|| {
- now.checked_sub(offset)
- .expect("BUG: values can't be large enough to cause underflow")
- .into()
- })
- .map_err(|_| Error::RelativeTimeConversion)
+ let ts = Timestamp::try_from(now).map_err(|_| Error::RelativeTimeConversion)?;
+ // N.B. This matches the behavior of this code when it was
+ // written with `time`, but we might consider using the system
+ // time zone here. If we did, then it would implement "1 day
+ // ago" correctly, even when it crosses DST transitions. Since
+ // we're in the UTC time zone here, which has no DST, 1 day is
+ // in practice always 24 hours. ---AG
+ let zdt = ts.to_zoned(TimeZone::UTC);
+ zdt.checked_sub(span).map_err(|_| Error::RelativeTimeConversion)
})
})
}
- fn duration(period: &str, multiplier: i64) -> Option {
+ fn span(period: &str, units: i64) -> Option> {
let period = period.strip_suffix('s').unwrap_or(period);
- let seconds: i64 = match period {
- "second" => 1,
- "minute" => 60,
- "hour" => 60 * 60,
- "day" => 24 * 60 * 60,
- "week" => 7 * 24 * 60 * 60,
+ let result = match period {
+ "second" => Span::new().try_seconds(units),
+ "minute" => Span::new().try_minutes(units),
+ "hour" => Span::new().try_hours(units),
+ "day" => Span::new().try_days(units),
+ "week" => Span::new().try_weeks(units),
// TODO months & years? YES
// Ignore values you don't know, assume seconds then (so does git)
_ => return None,
};
- seconds.checked_mul(multiplier).map(Duration::seconds)
+ Some(result.map_err(|_| Error::RelativeTimeConversion))
}
#[cfg(test)]
@@ -137,7 +164,7 @@ mod relative {
#[test]
fn two_weeks_ago() {
- assert_eq!(parse_inner("2 weeks ago"), Some(Duration::weeks(2)));
+ assert_eq!(parse_inner("2 weeks ago").unwrap().unwrap(), Span::new().weeks(2));
}
}
}
diff --git a/gix-date/src/time/format.rs b/gix-date/src/time/format.rs
index 639ed58faad..bfe5583ec93 100644
--- a/gix-date/src/time/format.rs
+++ b/gix-date/src/time/format.rs
@@ -1,82 +1,48 @@
-use time::{format_description::FormatItem, macros::format_description};
-
-use crate::{time::Format, Time};
+use crate::{
+ time::{CustomFormat, Format},
+ Time,
+};
/// E.g. `2018-12-24`
-pub const SHORT: &[FormatItem<'_>] = format_description!("[year]-[month]-[day]");
+pub const SHORT: CustomFormat = CustomFormat("%Y-%m-%d");
/// E.g. `Thu, 18 Aug 2022 12:45:06 +0800`
-pub const RFC2822: &[FormatItem<'_>] = format_description!(
- "[weekday repr:short], [day] [month repr:short] [year] [hour]:[minute]:[second] [offset_hour sign:mandatory][offset_minute]"
-);
+pub const RFC2822: CustomFormat = CustomFormat("%a, %d %b %Y %H:%M:%S %z");
/// E.g. `Thu, 8 Aug 2022 12:45:06 +0800`. This is output by `git log --pretty=%aD`.
-pub const GIT_RFC2822: &[FormatItem<'_>] = format_description!(
- "[weekday repr:short], \
- [day padding:none] \
- [month repr:short] \
- [year] \
- [hour]:[minute]:[second] \
- [offset_hour sign:mandatory][offset_minute]"
-);
+pub const GIT_RFC2822: CustomFormat = CustomFormat("%a, %-d %b %Y %H:%M:%S %z");
/// E.g. `2022-08-17 22:04:58 +0200`
-pub const ISO8601: &[FormatItem<'_>] =
- format_description!("[year]-[month]-[day] [hour]:[minute]:[second] [offset_hour sign:mandatory][offset_minute]");
+pub const ISO8601: CustomFormat = CustomFormat("%Y-%m-%d %H:%M:%S %z");
/// E.g. `2022-08-17T21:43:13+08:00`
-pub const ISO8601_STRICT: &[FormatItem<'_>] =
- format_description!("[year]-[month]-[day]T[hour]:[minute]:[second][offset_hour sign:mandatory]:[offset_minute]");
+pub const ISO8601_STRICT: CustomFormat = CustomFormat("%Y-%m-%dT%H:%M:%S%:z");
/// E.g. `123456789`
-pub const UNIX: Format<'static> = Format::Unix;
+pub const UNIX: Format = Format::Unix;
/// E.g. `1660874655 +0800`
-pub const RAW: Format<'static> = Format::Raw;
+pub const RAW: Format = Format::Raw;
/// E.g. `Thu Sep 04 2022 10:45:06 -0400`, like the git `DEFAULT`, but with the year and time fields swapped.
-pub const GITOXIDE: &[FormatItem<'_>] = format_description!(
- "[weekday repr:short] [month repr:short] [day] [year] [hour]:[minute]:[second] [offset_hour sign:mandatory][offset_minute]"
-);
+pub const GITOXIDE: CustomFormat = CustomFormat("%a %b %d %Y %H:%M:%S %z");
/// E.g. `Thu Sep 4 10:45:06 2022 -0400`. This is output by `git log --pretty=%ad`.
-pub const DEFAULT: &[FormatItem<'_>] = format_description!(
- "[weekday repr:short] \
- [month repr:short] \
- [day padding:none] \
- [hour]:[minute]:[second] \
- [year] \
- [offset_hour sign:mandatory][offset_minute]"
-);
-
-mod format_impls {
- use time::format_description::FormatItem;
-
- use crate::time::Format;
-
- impl<'a> From<&'a [FormatItem<'a>]> for Format<'a> {
- fn from(f: &'a [FormatItem<'a>]) -> Self {
- Format::Custom(f)
- }
- }
-}
+pub const DEFAULT: CustomFormat = CustomFormat("%a %b %-d %H:%M:%S %Y %z");
/// Formatting
impl Time {
/// Format this instance according to the given `format`.
///
- /// Use the [`format_description`](https://time-rs.github.io/book/api/format-description.html) macro to create and
- /// validate formats at compile time, courtesy of the [`time`] crate.
- pub fn format<'a>(&self, format: impl Into>) -> String {
+ /// Use [`Format::Unix`], [`Format::Raw`] or one of the custom formats
+ /// defined in the [`format`](mod@crate::time::format) submodule.
+ pub fn format(&self, format: impl Into) -> String {
self.format_inner(format.into())
}
- fn format_inner(&self, format: Format<'_>) -> String {
+ fn format_inner(&self, format: Format) -> String {
match format {
- Format::Custom(format) => self
- .to_time()
- .format(&format)
- .expect("well-known format into memory never fails"),
+ Format::Custom(CustomFormat(format)) => self.to_time().strftime(format).to_string(),
Format::Unix => self.seconds.to_string(),
Format::Raw => self.to_bstring().to_string(),
}
@@ -84,9 +50,10 @@ impl Time {
}
impl Time {
- fn to_time(self) -> time::OffsetDateTime {
- time::OffsetDateTime::from_unix_timestamp(self.seconds)
+ fn to_time(self) -> jiff::Zoned {
+ let offset = jiff::tz::Offset::from_seconds(self.offset).expect("valid offset");
+ jiff::Timestamp::from_second(self.seconds)
.expect("always valid unix time")
- .to_offset(time::UtcOffset::from_whole_seconds(self.offset).expect("valid offset"))
+ .to_zoned(offset.to_time_zone())
}
}
diff --git a/gix-date/src/time/init.rs b/gix-date/src/time/init.rs
index 7df1e7aee45..e7d9adaf62d 100644
--- a/gix-date/src/time/init.rs
+++ b/gix-date/src/time/init.rs
@@ -1,5 +1,3 @@
-use std::ops::Sub;
-
use crate::{time::Sign, OffsetInSeconds, SecondsSinceUnixEpoch, Time};
/// Instantiation
@@ -15,9 +13,7 @@ impl Time {
/// Return the current time without figuring out a timezone offset
pub fn now_utc() -> Self {
- let seconds = time::OffsetDateTime::now_utc()
- .sub(std::time::SystemTime::UNIX_EPOCH)
- .whole_seconds();
+ let seconds = jiff::Timestamp::now().as_second();
Self {
seconds,
offset: 0,
@@ -27,28 +23,14 @@ impl Time {
/// Return the current local time, or `None` if the local time wasn't available.
pub fn now_local() -> Option {
- let now = time::OffsetDateTime::now_utc();
- let seconds = now.sub(std::time::SystemTime::UNIX_EPOCH).whole_seconds();
- // TODO: make this work without cfg(unsound_local_offset), see
- // https://github.com/time-rs/time/issues/293#issuecomment-909158529
- let offset = time::UtcOffset::local_offset_at(now).ok()?.whole_seconds();
- Self {
- seconds,
- offset,
- sign: offset.into(),
- }
- .into()
+ Some(Self::now_local_or_utc())
}
/// Return the current local time, or the one at UTC if the local time wasn't available.
pub fn now_local_or_utc() -> Self {
- let now = time::OffsetDateTime::now_utc();
- let seconds = now.sub(std::time::SystemTime::UNIX_EPOCH).whole_seconds();
- // TODO: make this work without cfg(unsound_local_offset), see
- // https://github.com/time-rs/time/issues/293#issuecomment-909158529
- let offset = time::UtcOffset::local_offset_at(now)
- .map(time::UtcOffset::whole_seconds)
- .unwrap_or(0);
+ let zdt = jiff::Zoned::now();
+ let seconds = zdt.timestamp().as_second();
+ let offset = zdt.offset().seconds();
Self {
seconds,
offset,
diff --git a/gix-date/src/time/mod.rs b/gix-date/src/time/mod.rs
index e2e1ff77afd..b4d20089a0b 100644
--- a/gix-date/src/time/mod.rs
+++ b/gix-date/src/time/mod.rs
@@ -19,15 +19,26 @@ pub enum Sign {
/// Various ways to describe a time format.
#[derive(Debug, Clone, Copy)]
-pub enum Format<'a> {
- /// A custom format typically defined with the [`format_description`][time::format_description] macro.
- Custom(&'a [time::format_description::FormatItem<'a>]),
+pub enum Format {
+ /// A custom format limited to what's in the
+ /// [`format`](mod@crate::time::format) submodule.
+ Custom(CustomFormat),
/// The seconds since 1970, also known as unix epoch, like `1660874655`.
Unix,
/// The seconds since 1970, followed by the offset, like `1660874655 +0800`
Raw,
}
+/// A custom format for printing and parsing time.
+#[derive(Clone, Copy, Debug)]
+pub struct CustomFormat(pub(crate) &'static str);
+
+impl From for Format {
+ fn from(custom_format: CustomFormat) -> Format {
+ Format::Custom(custom_format)
+ }
+}
+
///
#[allow(clippy::empty_docs)]
pub mod format;
diff --git a/gix-date/tests/time/format.rs b/gix-date/tests/time/format.rs
index ddbf070b7b6..03488d954fb 100644
--- a/gix-date/tests/time/format.rs
+++ b/gix-date/tests/time/format.rs
@@ -2,7 +2,6 @@ use gix_date::{
time::{format, Format, Sign},
Time,
};
-use time::macros::format_description;
#[test]
fn short() {
@@ -72,14 +71,6 @@ fn git_default() {
)
}
-#[test]
-fn custom_compile_time() {
- assert_eq!(
- time().format(format_description!("[year]-[month]-[day] [hour]:[minute]:[second]")),
- "1973-11-30 00:03:09",
- );
-}
-
fn time() -> Time {
Time {
seconds: 123456789,
diff --git a/gix-date/tests/time/parse.rs b/gix-date/tests/time/parse.rs
index 8b96cb16ed2..f29457336a8 100644
--- a/gix-date/tests/time/parse.rs
+++ b/gix-date/tests/time/parse.rs
@@ -146,7 +146,7 @@ mod relative {
use std::time::SystemTime;
use gix_date::time::Sign;
- use time::{Duration, OffsetDateTime};
+ use jiff::{ToSpan, Zoned};
#[test]
fn large_offsets() {
@@ -173,12 +173,19 @@ mod relative {
let two_weeks_ago = gix_date::parse("2 weeks ago", Some(now)).unwrap();
assert_eq!(Sign::Plus, two_weeks_ago.sign);
assert_eq!(0, two_weeks_ago.offset);
- let expected = OffsetDateTime::from(now).saturating_sub(Duration::weeks(2));
- // account for the loss of precision when creating `Time` with seconds
- let expected = expected.replace_nanosecond(0).unwrap();
+ let expected = Zoned::try_from(now)
+ .unwrap()
+ // account for the loss of precision when creating `Time` with seconds
+ .round(
+ jiff::ZonedRound::new()
+ .smallest(jiff::Unit::Second)
+ .mode(jiff::RoundMode::Trunc),
+ )
+ .unwrap()
+ .saturating_sub(2.weeks());
assert_eq!(
- OffsetDateTime::from_unix_timestamp(two_weeks_ago.seconds).unwrap(),
- expected,
+ jiff::Timestamp::from_second(two_weeks_ago.seconds).unwrap(),
+ expected.timestamp(),
"relative times differ"
);
}
diff --git a/gix-mailmap/Cargo.toml b/gix-mailmap/Cargo.toml
index 06942fe7dee..89be66303e6 100644
--- a/gix-mailmap/Cargo.toml
+++ b/gix-mailmap/Cargo.toml
@@ -14,19 +14,19 @@ doctest = false
[features]
## Data structures implement `serde::Serialize` and `serde::Deserialize`.
-serde= ["dep:serde", "bstr/serde", "gix-actor/serde"]
+serde = ["dep:serde", "bstr/serde", "gix-actor/serde"]
[dependencies]
gix-actor = { version = "^0.31.5", path = "../gix-actor" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
-bstr = { version = "1.3.0", default-features = false, features = ["std", "unicode"]}
+gix-date = { version = "^0.9.0", path = "../gix-date" }
+bstr = { version = "1.3.0", default-features = false, features = ["std", "unicode"] }
thiserror = "1.0.38"
-serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"]}
+serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"] }
document-features = { version = "0.2.0", optional = true }
[dev-dependencies]
-gix-testtools = { path = "../tests/tools"}
+gix-testtools = { path = "../tests/tools" }
[package.metadata.docs.rs]
all-features = true
diff --git a/gix-negotiate/Cargo.toml b/gix-negotiate/Cargo.toml
index a5970cfb071..ccbb38e0ded 100644
--- a/gix-negotiate/Cargo.toml
+++ b/gix-negotiate/Cargo.toml
@@ -16,7 +16,7 @@ test = false
[dependencies]
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
gix-object = { version = "^0.42.3", path = "../gix-object" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-commitgraph = { version = "^0.24.3", path = "../gix-commitgraph" }
gix-revwalk = { version = "^0.13.2", path = "../gix-revwalk" }
thiserror = "1.0.40"
diff --git a/gix-object/Cargo.toml b/gix-object/Cargo.toml
index 838e418b35f..c4d86357175 100644
--- a/gix-object/Cargo.toml
+++ b/gix-object/Cargo.toml
@@ -41,7 +41,7 @@ gix-features = { version = "^0.38.2", path = "../gix-features", features = [
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
gix-validate = { version = "^0.8.5", path = "../gix-validate" }
gix-actor = { version = "^0.31.4", path = "../gix-actor" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-utils = { version = "^0.1.11", path = "../gix-utils" }
itoa = "1.0.1"
diff --git a/gix-odb/Cargo.toml b/gix-odb/Cargo.toml
index 3a8deee8057..bc7c761636b 100644
--- a/gix-odb/Cargo.toml
+++ b/gix-odb/Cargo.toml
@@ -20,7 +20,7 @@ serde = ["dep:serde", "gix-hash/serde", "gix-object/serde", "gix-pack/serde"]
[dependencies]
gix-features = { version = "^0.38.2", path = "../gix-features", features = ["rustsha1", "walkdir", "zlib", "crc32"] }
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-path = { version = "^0.10.9", path = "../gix-path" }
gix-quote = { version = "^0.4.12", path = "../gix-quote" }
gix-object = { version = "^0.42.3", path = "../gix-object" }
diff --git a/gix-protocol/Cargo.toml b/gix-protocol/Cargo.toml
index c0cbffe3c22..0db90afb7fe 100644
--- a/gix-protocol/Cargo.toml
+++ b/gix-protocol/Cargo.toml
@@ -50,7 +50,7 @@ gix-features = { version = "^0.38.2", path = "../gix-features", features = [
] }
gix-transport = { version = "^0.42.2", path = "../gix-transport" }
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-credentials = { version = "^0.24.4", path = "../gix-credentials" }
gix-utils = { version = "^0.1.12", path = "../gix-utils" }
diff --git a/gix-ref/Cargo.toml b/gix-ref/Cargo.toml
index e66171827d6..494fd5efc9f 100644
--- a/gix-ref/Cargo.toml
+++ b/gix-ref/Cargo.toml
@@ -19,7 +19,7 @@ test = true
serde = ["dep:serde", "gix-hash/serde", "gix-actor/serde", "gix-object/serde"]
[dependencies]
-gix-features = { version = "^0.38.2", path = "../gix-features", features = ["walkdir"]}
+gix-features = { version = "^0.38.2", path = "../gix-features", features = ["walkdir"] }
gix-fs = { version = "^0.11.2", path = "../gix-fs" }
gix-path = { version = "^0.10.9", path = "../gix-path" }
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
@@ -32,7 +32,7 @@ gix-tempfile = { version = "^14.0.0", default-features = false, path = "../gix-t
thiserror = "1.0.34"
winnow = { version = "0.6.0", features = ["simd"] }
-serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"]}
+serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"] }
# packed refs
memmap2 = "0.9.0"
@@ -41,7 +41,7 @@ document-features = { version = "0.2.1", optional = true }
[dev-dependencies]
gix-testtools = { path = "../tests/tools" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
[package.metadata.docs.rs]
features = ["document-features", "serde"]
diff --git a/gix-revision/Cargo.toml b/gix-revision/Cargo.toml
index b6a163894d3..f9dd70cf660 100644
--- a/gix-revision/Cargo.toml
+++ b/gix-revision/Cargo.toml
@@ -19,17 +19,17 @@ default = ["describe"]
describe = ["dep:gix-trace", "dep:gix-hashtable"]
## Data structures implement `serde::Serialize` and `serde::Deserialize`.
-serde = [ "dep:serde", "gix-hash/serde", "gix-object/serde" ]
+serde = ["dep:serde", "gix-hash/serde", "gix-object/serde"]
[dependencies]
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
gix-object = { version = "^0.42.3", path = "../gix-object" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-hashtable = { version = "^0.5.2", path = "../gix-hashtable", optional = true }
gix-revwalk = { version = "^0.13.2", path = "../gix-revwalk" }
gix-trace = { version = "^0.1.8", path = "../gix-trace", optional = true }
-bstr = { version = "1.3.0", default-features = false, features = ["std"]}
+bstr = { version = "1.3.0", default-features = false, features = ["std"] }
thiserror = "1.0.26"
serde = { version = "1.0.114", optional = true, default-features = false, features = ["derive"] }
document-features = { version = "0.2.1", optional = true }
diff --git a/gix-revwalk/Cargo.toml b/gix-revwalk/Cargo.toml
index a7274283247..8bcf02250c9 100644
--- a/gix-revwalk/Cargo.toml
+++ b/gix-revwalk/Cargo.toml
@@ -15,7 +15,7 @@ doctest = false
[dependencies]
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
gix-object = { version = "^0.42.3", path = "../gix-object" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-hashtable = { version = "^0.5.2", path = "../gix-hashtable" }
gix-commitgraph = { version = "^0.24.3", path = "../gix-commitgraph" }
diff --git a/gix-traverse/Cargo.toml b/gix-traverse/Cargo.toml
index 4c8778be3f4..717fd885a7f 100644
--- a/gix-traverse/Cargo.toml
+++ b/gix-traverse/Cargo.toml
@@ -16,7 +16,7 @@ doctest = false
[dependencies]
gix-hash = { version = "^0.14.2", path = "../gix-hash" }
gix-object = { version = "^0.42.3", path = "../gix-object" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-hashtable = { version = "^0.5.2", path = "../gix-hashtable" }
gix-revwalk = { version = "^0.13.2", path = "../gix-revwalk" }
gix-commitgraph = { version = "^0.24.3", path = "../gix-commitgraph" }
diff --git a/gix/Cargo.toml b/gix/Cargo.toml
index eb3ce133437..2ee93d7951d 100644
--- a/gix/Cargo.toml
+++ b/gix/Cargo.toml
@@ -306,7 +306,7 @@ gix-tempfile = { version = "^14.0.0", path = "../gix-tempfile", default-features
gix-lock = { version = "^14.0.0", path = "../gix-lock" }
gix-validate = { version = "^0.8.5", path = "../gix-validate" }
gix-sec = { version = "^0.10.7", path = "../gix-sec" }
-gix-date = { version = "^0.8.7", path = "../gix-date" }
+gix-date = { version = "^0.9.0", path = "../gix-date" }
gix-refspec = { version = "^0.23.1", path = "../gix-refspec" }
gix-filter = { version = "^0.11.3", path = "../gix-filter", optional = true }
gix-dir = { version = "^0.6.0", path = "../gix-dir", optional = true }
diff --git a/src/plumbing/main.rs b/src/plumbing/main.rs
index c1a41d160c6..02e3b974a15 100644
--- a/src/plumbing/main.rs
+++ b/src/plumbing/main.rs
@@ -54,11 +54,6 @@ pub mod async_util {
pub fn main() -> Result<()> {
let args: Args = Args::parse_from(gix::env::args_os());
- #[allow(unsafe_code)]
- unsafe {
- // SAFETY: we don't manipulate the environment from any thread
- time::util::local_offset::set_soundness(time::util::local_offset::Soundness::Unsound);
- }
let thread_limit = args.threads;
let verbose = args.verbose;
let format = args.format;
diff --git a/src/porcelain/main.rs b/src/porcelain/main.rs
index 95645d843d5..3bd15362b07 100644
--- a/src/porcelain/main.rs
+++ b/src/porcelain/main.rs
@@ -12,11 +12,6 @@ use crate::porcelain::options::{Args, Subcommands};
pub fn main() -> Result<()> {
let args: Args = Args::parse_from(gix::env::args_os());
- #[allow(unsafe_code)]
- unsafe {
- // SAFETY: we don't manipulate the environment from any thread
- time::util::local_offset::set_soundness(time::util::local_offset::Soundness::Unsound);
- }
let should_interrupt = Arc::new(AtomicBool::new(false));
#[allow(unsafe_code)]
unsafe {
diff --git a/tests/snapshots/panic-behaviour/expected-failure b/tests/snapshots/panic-behaviour/expected-failure
index 4091d0774d2..9c6bf892c21 100644
--- a/tests/snapshots/panic-behaviour/expected-failure
+++ b/tests/snapshots/panic-behaviour/expected-failure
@@ -1,3 +1,3 @@
-thread 'main' panicked at src/porcelain/main.rs:45:42:
+thread 'main' panicked at src/porcelain/main.rs:40:42:
something went very wrong
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
\ No newline at end of file
diff --git a/tests/snapshots/panic-behaviour/expected-failure-in-thread b/tests/snapshots/panic-behaviour/expected-failure-in-thread
index 3a8b479c1b4..8ef1ef6a67b 100644
--- a/tests/snapshots/panic-behaviour/expected-failure-in-thread
+++ b/tests/snapshots/panic-behaviour/expected-failure-in-thread
@@ -1,4 +1,4 @@
-thread 'main' panicked at src/porcelain/main.rs:45:42:
+thread 'main' panicked at src/porcelain/main.rs:40:42:
something went very wrong
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[2K
\ No newline at end of file
diff --git a/tests/snapshots/panic-behaviour/expected-failure-in-thread-with-progress b/tests/snapshots/panic-behaviour/expected-failure-in-thread-with-progress
index 5e21591cab8..d1035857ddf 100644
--- a/tests/snapshots/panic-behaviour/expected-failure-in-thread-with-progress
+++ b/tests/snapshots/panic-behaviour/expected-failure-in-thread-with-progress
@@ -1,4 +1,4 @@
-[?1049h[?25lthread '' panicked at src/porcelain/main.rs:45:42:
+[?1049h[?25lthread '' panicked at src/porcelain/main.rs:40:42:
something went very wrong
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[?25h[?1049l
\ No newline at end of file