github GitoxideLabs/gitoxide gix-attributes-v0.34.0
gix-attributes v0.34.0

3 hours ago

Changed (BREAKING)

  • adapt to lifetime-free configuration files in gix-config
    Update repository configuration storage, snapshots, overrides, and caches
    to use the self-contained gix_config::File representation. Configuration
    can now move through repository initialization, cloning, and remote setup
    without artificial input lifetimes or conversions to 'static.

    • Return owned BString, PathBuf, OsString, and FullName values
      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 AsBStr in
      configuration setters, converters, remote lookup, and remote saving.
    • Remove widespread Cow construction, 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.

Chore (BREAKING)

  • Remove kstring from gix-attributes in favor of Rc/Arc
    As RC is about 4% faster, Arc must be turned on with the parallel feature.

Commit Statistics

  • 13 commits contributed to the release.
  • 31 days passed between releases.
  • 2 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update changelogs prior to release (cb6ec7d)
    • Release gix-trace v0.1.21, gix-validate v0.11.3, gix-path v0.12.3, gix-utils v0.3.5, gix-config-value v0.19.0, gix-prompt v0.16.0, gix-sec v0.14.2, gix-url v0.37.0, gix-credentials v0.39.0, safety bump 18 crates (f0ec710)
    • Merge pull request #2721 from GitoxideLabs/remove-kstring (e70732a)
    • Remove kstring from gix-attributes in favor of Rc/Arc (de1eae5)
    • Add gix-attributes lookup benchmark. (5d497a0)
    • 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 changes in gix-config (376e946)
    • Adapt to lifetime-free configuration files in gix-config (582d7b5)
    • Merge pull request #2714 from GitoxideLabs/fix-credentials-parsing (cf3053a)
    • Release gix-path v0.12.2, gix-error v0.2.5, gix-utils v0.3.4, gix-date v0.15.6, gix-url v0.36.2, gix-credentials v0.38.2 (27aec47)
    • Merge pull request #2646 from GitoxideLabs/report (1b1541e)

Don't miss a new gitoxide release

NewReleases is sending notifications on new releases.