Changed (BREAKING)
-
migrate errors to gix-error
rubberstamp
-
raise MSRV to Rust 1.88
The newly published
dua-core3.3 release used by linked-worktree removal
requires Rust 1.88, so raise every workspace crate and the advertised badge
together.Keep the MSRV checks buildable by selecting the latest
sysinfoandrusqlite
release lines that support Rust 1.88.
Bug Fixes
-
reap long-running filter processes
A
gix-filtershutdown test deliberately selected the non-waiting mode, socargo nextestreported its child as leaked. UnobservedStatedrops likewise closed the
pipes without reaping the process.Keep
shutdown(WaitForProcesses)as the explicit, status-reporting path and use
it in all workspace callers. Drain the process map during explicit shutdown so
State can also wait for any remaining children on Drop while ignoring errors.This matches Git’s sub-process.c cleanup: subprocess_exit_handler closes both
pipes and calls finish_command() to wait for completion.
Bug Fixes (BREAKING)
-
propagate long-running filter shutdown failures
BREAKING CHANGE:
State::shutdown()now takes&mut selfand returns
shutdown::Outcome;Mode::Ignoreis renamed toMode::Zombify.A long-running
processfilter can finish its protocol work and still exit
unsuccessfully during teardown. Returning rawExitStatusvalues made that
failure easy to overlook, while consumingStatemade explicit cleanup awkward
for owners that reuse a filter pipeline.Keep
Statereusable aftershutdown(), return anOutcomethat preserves
every observed status, and addOutcome::into_result()to turn the
first unsuccessful exit into a structured error. RenameMode::Ignoreto
Mode::Zombifyso opting out ofwait()makes the resulting Unix process
lifecycle explicit.Git considers a completed conversion successful even if a long-running
processfilter exits non-zero afterEOF, soOutcome::into_result()
isn't actually called.
Commit Statistics
- 11 commits contributed to the release over the course of 33 calendar days.
- 34 days passed between releases.
- 4 commits were understood as conventional.
- 1 unique issue was worked on: #2947
Commit Details
view details
- #2947
- Uncategorized
- Merge pull request #2847 from GitoxideLabs/gix-error-completion (6356013)
- Use borrowed error inspection throughout the workspace (daf73b5)
- Migrate errors to gix-error (4662901)
- Merge pull request #2949 from GitoxideLabs/error-conversion-review (a095334)
- Raise MSRV to Rust 1.88 (4b42e0c)
- Merge pull request #2955 from GitoxideLabs/transport-url-encoding (7e35849)
- Release gix-path v0.12.6, gix-error v0.3.2, gix-command v0.10.1, gix-transport v0.59.2 (888677a)
- Merge pull request #2946 from GitoxideLabs/fix-filter-leak (88c810e)
- Merge pull request #2933 from GitoxideLabs/report-august (b8914ff)