### Bug Fixes

 - `File::boolean()` now correctly handles implicit bools across sections.
   This means it will return the last implicit value as true, instead of
   ignoring it to fall back onto an explicit boolean value that might be
   false.
 - `file::SectionMut::push()` now properly creates empty values.
   Previously, when calling `.push("key", None)`, the resulting internal
   state would be slighly wrong causing certain invariants and expectations
   to be unfulfilled even though it might have looked OK to most users.
   
   Now it will uphold the invariant for empty values, those without an
   `=` character.

### Commit Statistics

 - 12 commits contributed to the release over the course of 20 calendar days.
 - 27 days passed between releases.
 - 2 commits were understood as [conventional](https://www.conventionalcommits.org).
 - 1 unique issue was worked on: #450

### Thanks Clippy

[Clippy](https://github.com/rust-lang/rust-clippy) helped 2 times to make code idiomatic. 

### Commit Details

 * **#450**
    - `File::boolean()` now correctly handles implicit bools across sections. (839f776)
    - be sure to globally order section ids when traversed by name. (21a5229)
    - `file::SectionMut::push()` now properly creates empty values. (7d92c61)
    - refactor (041ede9)
 * **Uncategorized**
    - prepare changelogs prior to release (423af90)
    - Merge branch 'main' into write-sparse-index (upgrade to Rust 1.65) (5406630)
    - thanks clippy (04cfa63)
    - adjust memory-size expectations to deal with Rust 1.65 and below (a93c470)
    - Merge branch 'main' into write-sparse-index (c4e6849)
    - make fmt (ea2136b)
    - Merge branch 'gix-clone' (def53b3)
    - thanks clippy (d2f56df)