### New Features
- Add `git_config::values::Path` for a typesafe git path
Add a `Path` type to the `git_config::values` which
can be interpolated according to gits own path interpolation
rules.
- add new 'path' module for all path-related conversions
It's meant to unify all path and byte related handling to help assuring
encoding is handled correctly or at least similarly everywhere.
- in-manifest and in-lib documentation of feature toggles
### Bug Fixes
- Assure std::io::copy() doesn't hang when we cause an interrupt
The user can ask for interruptions which previously used the
error kind Interrupted. This however has special meaning and
usually means to retry.
### New Features (BREAKING)
- `interrupt::Iter`, rename `interrupt::Iter` -> `interrupt::IterWithError`
### Commit Statistics
- 38 commits contributed to the release over the course of 54 calendar days.
- 72 days passed between releases.
- 5 commits where understood as [conventional](https://www.conventionalcommits.org).
- 6 unique issues were worked on: #298, #301, #329, #331, #333, #366
### Thanks Clippy
[Clippy](https://github.com/rust-lang/rust-clippy) helped 2 times to make code idiomatic.
### Commit Details
* **#298**
- Use hash_hasher based hash state for better keys/less collisions (814de07)
- upgrade parking_lot and cargo_toml (f95c1a0)
* **#301**
- more stable testing of perviously racy test for new parallelization mechanism (0b4b90f)
- Salvage an alternative parallelization approach which might be good for index-creation (7e76796)
- refactor (f86eacc)
- Use hopefully faster crossbeam channel to receive parallelized results (3b324b8)
- switch index checkout to chunk-based operation (e5f6943)
- add thread-count and chunk-size computation; interrupt capability (8cbe85d)
- `interrupt::Iter`, rename `interrupt::Iter` -> `interrupt::IterWithError` (8945d95)
- fix `interrupt::Iter` (0f0d390)
* **#329**
- in-manifest and in-lib documentation of feature toggles (15ff212)
* **#331**
- Update changelog prior to release (1d07934)
- Remove Option return values in favor of Result (493dbae)
- Add `git_config::values::Path` for a typesafe git path (e4d6685)
* **#333**
- Use git_features::path everywhere where there is a path conversion (2e1437c)
- Make real clear panics are only possible on windows (6b283dc)
- one usage of os_str_bytes down, along with some custom conversion code (1cc95ce)
- gitoxide-core without os-str-bytes (909aa14)
- Remove os_str_bytes from git-pack (86f6e50)
- Don't use os_str_ext in git-features; adapt git-ref (9258b7b)
- add new 'path' module for all path-related conversions (3c8581f)
* **#366**
- the first possibly working version of loading a mailmap with multiple sources (98d745e)
- cleanup bstr usage to not accidentally pull in unicode (8ff53af)
* **Uncategorized**
- Release git-hash v0.9.3, git-features v0.20.0, git-config v0.2.0, safety bump 12 crates (f0cbb24)
- Merge branch 'svetli-n-refactor_git_config_tests' (babaa9f)
- remove 'unused_mut' warning on windows (4733e6c)
- make fmt (7cf3545)
- Merge branch 'main' into mailmap (b2df941)
- Commit to using 'unicode' feature of bstr as git-object wants it too (471fa62)
- Assure std::io::copy() doesn't hang when we cause an interrupt (234cd10)
- Upgrade to prodash 19 (90c6c5a)
- thanks clippy (07a4094)
- Merge branch 'short-id' (5849d5b)
- properly document optional features (572e57d)
- Small refactoring and documentation. (fefb01b)
- upgrade document-features (c35e62e)
- thanks clippy (a8e9497)
- Merge branch 'AP2008-implement-worktree' (f32c669)