github GitoxideLabs/gitoxide gix-testtools-v0.20.0
gix-testtools v0.20.0

2 hours ago

New Features

  • allow requiring archived scripted fixtures

    Add version-aware fixture loaders:

    • scripted_fixture_read_only_with_git_version()
    • scripted_fixture_read_only_with_args_with_git_version()

    Both use normal fixture generation when the installed Git version satisfies
    the caller-provided predicate. For incompatible versions, they require an
    identity-matching archive, ignore GIX_TEST_IGNORE_ARCHIVES, and return None
    instead of running the fixture script when no usable archive exists.

Bug Fixes

  • avoid calling git --version each time a metadata directory is created.

New Features (BREAKING)

  • expand gix-testtools fixture support
    Note that I did only skim through git.rs,
    considering the details of the implementation secondary to the outcome.

    gix.rs was refactored quite a bit, helping to provide more utilities
    in other plumbing crates to help with this 'gix' avoidance.

    Add deterministic repository snapshots covering HEAD, references, reachable
    commits, every index stage, conflict-free index trees, and exact worktree
    contents. Provide a portable form which omits platform-specific filesystem modes
    for stable cross-platform assertions.

    Add writable Git-version-aware fixture APIs for copy and execute creation modes.
    Require archived fixtures when the selected Git is incompatible, without running
    unsupported scripts or post-processing.

    Use the Git executable selected by gix-path consistently for version checks,
    helper commands, and fixture scripts, including PATH selection for scripts.
    Harden signing fixtures with command-compatible paths, isolated homes, and
    complete SSH key pairs.

Commit Statistics

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

Commit Details

view details
  • Uncategorized
    • Merge pull request #2933 from GitoxideLabs/report-august (b8914ff)
    • Update manifests prior to release (ebe9095)
    • Merge pull request #2905 from GitoxideLabs/various-improvements (f3bbfad)
    • Expand gix-testtools fixture support (677eb83)
    • Add reusable signature test fixtures (24dabe2)
    • Merge pull request #2812 from GitoxideLabs/report-july (ae8845a)
    • Release gix-actor v0.41.2, gix-features v0.49.0, gix-hash v0.26.0, gix-hashtable v0.16.0, gix-object v0.63.0, gix-glob v0.27.0, gix-attributes v0.34.0, gix-packetline v0.22.0, gix-filter v0.33.0, gix-fs v0.22.0, gix-chunk v0.7.3, gix-commitgraph v0.38.0, gix-revwalk v0.34.0, gix-traverse v0.60.0, gix-worktree-stream v0.35.0, gix-archive v0.35.0, gix-bitmap v0.3.3, gix-tempfile v24.0.0, gix-lock v24.0.0, gix-index v0.54.0, gix-pathspec v0.19.0, gix-ignore v0.22.0, gix-worktree v0.55.0, gix-imara-diff v0.2.4, gix-diff v0.66.0, gix-blame v0.16.0, gix-ref v0.66.0, gix-config v0.59.0, gix-discover v0.54.0, gix-dir v0.28.0, gix-mailmap v0.33.2, gix-revision v0.48.0, gix-merge v0.19.0, gix-negotiate v0.34.0, gix-zlib v0.1.0, gix-pack v0.73.0, gix-odb v0.83.0, gix-refspec v0.44.0, gix-shallow v0.13.0, gix-transport v0.58.0, gix-protocol v0.64.0, gix-status v0.33.0, gix-submodule v0.33.0, gix-worktree-state v0.33.0, gix v0.86.0, gix-fsck v0.24.0, gitoxide-core v0.60.0, gix-tix v0.1.0, gitoxide v0.56.0, safety bump 40 crates (842bc44)
    • Merge pull request #2732 from GitoxideLabs/testools-use-archive (a3e9a77)
    • Avoid calling git --version each time a metadata directory is created. (4314d09)
    • Allow requiring archived scripted fixtures (6a30419)
    • Merge pull request #2721 from GitoxideLabs/remove-kstring (e70732a)
    • Adapt to changes in gix-attributes (e11d7a2)
    • Merge pull request #2646 from GitoxideLabs/report (1b1541e)
    • Release gix-date v0.15.5, gix-hashtable v0.15.2, gix-object v0.62.0, gix-attributes v0.33.2, gix-filter v0.32.0, gix-revwalk v0.33.0, gix-traverse v0.59.0, gix-worktree-stream v0.34.0, gix-archive v0.34.0, gix-tempfile v23.0.2, gix-index v0.53.0, gix-worktree v0.54.0, gix-imara-diff v0.2.3, gix-diff v0.65.0, gix-blame v0.15.0, gix-ref v0.65.0, gix-config v0.58.0, gix-discover v0.53.0, gix-dir v0.27.0, gix-revision v0.47.0, gix-merge v0.18.0, gix-negotiate v0.33.0, gix-pack v0.72.0, gix-odb v0.82.0, gix-refspec v0.43.0, gix-transport v0.57.2, gix-protocol v0.63.0, gix-status v0.32.0, gix-submodule v0.32.0, gix-worktree-state v0.32.0, gix v0.85.0, gix-fsck v0.23.0, gitoxide-core v0.59.0, gitoxide v0.55.0, safety bump 28 crates (6428edc)
    • Merge pull request #2628 from GitoxideLabs/dependabot/cargo/tar-0.4.46 (5aadd6e)
    • Bump tar from 0.4.45 to 0.4.46 (07d16ea)
    • Merge pull request #2618 from GitoxideLabs/report (f7d4f33)

Don't miss a new gitoxide release

NewReleases is sending notifications on new releases.