File gitoxide.changes of Package gitoxide

-------------------------------------------------------------------
Wed Sep 25 05:36:02 UTC 2024 - Luna D Dragon <luna.dragon@suse.com>

- Update to version 0.66.0: (bsc#1230695)
    New Features
        * add objects::tree::diff::Platform::stats() to quickly obtain diff-stats.
        * This function is inspired by git2 which also makes it very simple to obtain.
        * allow threaded-handling of tree-diff changes.
        * This works by providing Change::detach() and ChangeDetached::attach().
        * add Reference::follow_to_object()
        * It's an equivalent to git2::Reference::resolve().`
        * add Repository::diff_resource_cache_for_tree_diff()
        * add Reference::peel_to_kind()
        * Make it easy to follow a ref and peel it to a given object type.
        * Additional peel_to_<kind>() shortcuts are also provided, with the same name as in git2.
        * add Repository::find_*() methods for every object type.
        * add Repository::compute_object_cache_size_for_tree_diffs().
        * With it it's easier to obtain reasonable object cache sizes as optimized for tree-diffs.
        * remote::Name::to_owned() to get a static version of it.
        * Also, add optional serde support.
        * Reference::remote_name() now also provides valid remote names for local tracking branches.
        * add Reference::peel_to_id_in_place_packed() to allow passing a packed-buffer snapshot.
        * This is useful for speeding up reference lookups as otherwise, it will have to validate the packed-buffer
        * snapshot didn't change internally each time a ref is peeled.
        * add remote::Names as shortcut to the value returned for all remote names.
   
   Bug Fixes
        * similarity detection
        * Previously it would incorrectly count only the last batch of removed bytes, and now it will count all of them. This leads to realistic results with complex diffs, even though it's probably still not en-par with Git which uses more complex heuristics.
        * prevent panic in Repository::rev_parse_single() when HEAD was invalid.
        * When using a refspec like HEAD:file.
        * do not automatically use a parallel directory walk. This reduces dependencies and can speed-up typical ref-walks as these don't benefit from this many threads - the overhead here usually outweighs the benefit. This can be turned back on based on the expected workload.

    Other
        * make tree-diff more easily discoverable when coming from git2
    Bug Fixes (BREAKING)
        * better peeling performance for reference traversal.
        * This is done by keeping a packed-buffer around and reusing it, instead of re-checking it every time.
        * For this to work, the peeled() function on the reference::Iter can now fail as it has to open a packed-refs snapshot.

-------------------------------------------------------------------
Thu Jul 25 03:36:33 UTC 2024 - Joshua Smith <smolsheep@opensuse.org>

- Update to version 0.37.0:
  New Features
  * add mailmap check similar to git check-mailmap. That way it
    becomes a little easier to maybe try out other special cases in
    the wild.
  * gix clone with --ref support. --ref is similar to --branch, but
    was renamed as it also supports tags for example.
  Other
  * Make it easier to compile gitoxide as dynlib. Also optimize
    compilation time: By making plumbing and porcelain as modules
    the lib.rs, they can be compiled after the rmeta for the
    dependencies are generated.
  * For the uni.rs which uses both plumbing and porcelain, this
    would avoid compiling these two modules twice.

-------------------------------------------------------------------
Wed May 22 12:23:37 UTC 2024 - Joshua Smith <smolsheep@opensuse.org>

- Update to version 0.36.0:
  * Fixes for CVE-2024-35186 and CVE-2024-35197
  * checkout respects options for core.protectHFS and
    core.protectNTFS
  * more robustness in the face of a trampling-herd of threads
    loading a single index

-------------------------------------------------------------------
Tue Apr 16 07:45:12 UTC 2024 - Joshua Smith <smolsheep@opensuse.org>

- Update to version 0.35.0:
  * add gix status --ignored support
  * add gix status --index-worktree-renames
  * gix status with submodule and rewrite support.
  * add gix is-clean|is-changed
  * gix submodules list --dirty-suffix for dirty-information
  * add gix commit describe --dirty-suffix

-------------------------------------------------------------------
Thu Mar 07 21:52:40 UTC 2024 - Joshua Smith <smolsheep@opensuse.org>

- Specfile to modern rust, add copyright and cleanup
- Update to version 0.34.0:
  * add gix clean --patterns-for-entries|-m to help with wildcards.
  * basic gix clean
  * Allow the -n argument as no-op to make them more compatible.
  * Fix clippy lints
  * Add back line wrapping simplify Usage Variants
  * Tell clap that ein is named ein
  * Copy over code from gix to generate completions for ein as well
  * Fix indenting by removing formatting on the config str
  * Reserve 50 characters for the config name
  * Bring back old implementation from 65e6496 - this also removes
    terminal_size, although its not large
  * Use chunks_exact where possible
- Updates from version 0.33.0:
  * Add rev parse --reference. It's similar to git rev-parse
    --symbolic-full-name.
  * mark gix::interrupt::init_handler() as unsafe
- Updates from version 0.32.0:
  * gix rev parse --format to provide different versions of the
    same content.
  * in --trace mode, greatly increase message-buffer size.
  * set binary name for completions
  * rename GITOXIDE_* environment variables to GIX_#
  * Add thediff::resource_cache() low-level utility for rapid
    in-memory diffing of combinations of resources.
  * In gix read http.sslVerify config value and pass it to
    gix-transport.
  * Remove dead code from non-existent "lean-cli" feature
  * Replace all docsrs config by the document-features feature
  * Add basic connectivity check
  * Allow to print a tree without prettification, using
    tree-style --raw.
  * Automatically enforce strict mode if -c options are given on
    the command-line.
- Updates from version 0.31.0:
  * add shell completions for bash
  * User decides completion output
  * gix status auto-writes changed indices.
  * This prevents expensive operations to re-occour.
  * gix status -s/--statistics to obtain additional information on
    what happened.
- Updates from version 0.30.0:
  * gix status with basic index-worktree comparison
  * gix free index from-list and gix index from-tree gain
    --skip-hash.
  * both ein and gix now share some code via the gitoxide library.
    This can slightly improve compile times as well, even though it
    wasn't measured.
- Updates from version 0.29.0:
  * gix submodule subcommand for simple submodule listing and
    information retrieval
  * gix index entries --recurse-subomdules to also list submodules.
  * gix index entries with styles and pathspecs.
  * use real pathspecs where it was supported before.
  * add gix commit verify-signature to do something akin to git ...
    --show-signature.
- Updates from version 0.28.0:
  * add simple CLI for gix archive
- Updates from version 0.27.0:
  * list commit-graph entries by graph traversal, move commit-graph
    up to gix level.
  * gix --trace to also print tree-like instrumentation
  * gix fetch --open-negotiation-graph[=limit]
  * gix fetch --negotiation-info to provide additional information
    about the negotiation phase.
  * bit revision list --svg to create a visual graph of commits.
- Updates from version 0.26.0:
  * gix attributes validate to validate attributes and ignore
    against git as baseline.
  * --statistics for gix excludes query
  * gix attribute query as something similar to git check-attrs.
  * no-repo index from-list to create an index with empty files
    from the given list.
  * add pro-forma library to allow feature documentation of
    gitoxide on docs.rs
- Updates from version 0.25.0:
  * A maintenance release without user-facing changes, just to
    fix installation
- Updates from version 0.24.0:
  * gix index entries also prints attributes.
  * gix clone and gix fetch with controls for shallow repositories.
  * ein t trace-path know accepts the trace-file alias.
  * printing to stdout for commands that don't show progress is
    greatly improved. Previously it would have to lock stdout on
    each write, now this is done only once.
  * opening repositories without 'strict' mode also ignores
    IO errors. These will instead be logged, but won't make it
    impossible to open an otherwise fine repository.
  * turn gix free index entries into gix index entries.
- Updates from version 0.23.0:
  * ein tool query - a git analytics engine. A tool to build and
    efficiently maintain a database of information contained in
    a git repository, preferably the kind of information that is
    expensive to obtain, in order to facilitate queries that would
    be prohibitive without an accelerating data structure.
  * gix tree entries with rev-spec support.
- Updates from version 0.22.0:
  * A maintenance release without user-facing changes.

-------------------------------------------------------------------
Fri Feb 10 14:33:38 UTC 2023 - Luna D Dragon <luna.dragon@suse.com>

- Chore
    + upgrade to clap 4.1
- New Features
    + gix clone <url> is now permitted without specifying a destination directory.
    + Note that the implementation doesn't take into account potential redirects and renames
    + as it's implemented only with the first URL it sees (not the redirected ones).
    + make more HTTP options available
    + http.schannelCheckRevoke

openSUSE Build Service is sponsored by