gix-credentials v0.39.0
Changed (BREAKING)
-
adapt to lifetime-free configuration files in
gix-config
Update repository configuration storage, snapshots, overrides, and caches
to use the self-containedgix_config::Filerepresentation. Configuration
can now move through repository initialization, cloning, and remote setup
without artificial input lifetimes or conversions to'static.- Return owned
BString,PathBuf,OsString, andFullNamevalues
from configuration-derived lookups. - Simplify fallible optional access from
Option<Result<T, E>>to
Result<Option<T>, E>, allowing errors to propagate naturally with
?. - Accept common string and byte-string inputs through
AsBStrin
configuration setters, converters, remote lookup, and remote saving. - Remove widespread
Cowconstruction,into_owned(), and redundant
cloning from configuration consumers. - Preserve configuration-key context when converting owned values and
enriching validation errors.
Adapt config-tree conversions for the new owned values and optional-result
shape, including booleans, integers, paths, URLs, refspecs, timeouts,
compression levels, and reference names.Return owned remote names, default remote names, branch tracking
references, and submodule paths so these results are independent of the
repository configuration borrow. Protocol feature values likewise use
owned strings.Update repository opening, initialization, cloning, remotes, filters,
status, submodules, and related tests to use the lifetime-free APIs. - Return owned
New Features (BREAKING)
-
store configuration paths and parse values from strings
Remove the lifetime from gix_config_value::Path and store its bytes in a
BString. Path interpolation now returns an owned PathBuf, including for paths
that do not require expansion.Allow Boolean, Color, and Integer to parse UTF-8 string slices as well as
byte strings. Keep BStr as the canonical parser input and disambiguate BString
callers explicitly. -
allow protocol protection to be configured
Bug Fixes (BREAKING)
- make
protect_protocolpart ofContextso it's self-contained.
This returns many methods back to their original version, but it's still
a breaking change, but now once again less so.
Commit Statistics
- 11 commits contributed to the release over the course of 8 calendar days.
- 8 days passed between releases.
- 4 commits were understood as conventional.
- 0 issues like '(#ID)' were seen in commit messages
Commit Details
view details
- Uncategorized
- Merge pull request #2734 from GitoxideLabs/url-parse-convenience (e7af50e)
- Adapt to changes in gix-url (271454b)
- Merge pull request #2722 from GitoxideLabs/reasons (c16b5a1)
- Replace lint allowances with expectations (43ff87a)
- Merge pull request #2667 from GitoxideLabs/lifetime-free-config-parser (55b5158)
- Adapt to lifetime-free configuration files in
gix-config(582d7b5) - Store configuration paths and parse values from strings (020bbb6)
- Merge pull request #2715 from GitoxideLabs/fixup-credentials (299d16b)
- Make
protect_protocolpart ofContextso it's self-contained. (7d66c9f) - Merge pull request #2714 from GitoxideLabs/fix-credentials-parsing (cf3053a)
- Allow protocol protection to be configured (ffa862d)