Skip to content

gix-revwalk-v0.16.0

@Byron Byron tagged this 22 Oct 18:56
 - add `Graph::get_or_insert_full_commit()`
   A way to insert a full commit with a single update functions that
   has access to the full commit, not just the data.
 - add `Graph::clear_commit_data()` for when commits are stored and data is attached.
   These graphs have the advantage of being able to be re-usable, as generally all information
   about commits is kept.
 - add `Graph::len()` and `Graph::is_empty()`
   Get an idea about he size of the graph.
 - add `graph::LazyCommit::generation_and_timestamp()`
   That way, the cost for creating intermediate commit objects are
   cut in half.
 - add `Graph::insert_parents_with_lookup()` and `Graph::insert_data()`.
   It's another way to insert parents, and tuned for the needs of merge-base.
   `insert_data()` makes it easy to insert data for a single commit.

### Other

 - Update gitoxide repository URLs
   This updates `Byron/gitoxide` URLs to `GitoxideLabs/gitoxide` in:
   
   - Markdown documentation, except changelogs and other such files
     where such changes should not be made.
   
   - Documentation comments (in .rs files).
   
   - Manifest (.toml) files, for the value of the `repository` key.
   
   - The comments appearing at the top of a sample hook that contains
     a repository URL as an example.
   
   When making these changes, I also allowed my editor to remove
   trailing whitespace in any lines in files already being edited
   (since, in this case, there was no disadvantage to allowing this).
   
   The gitoxide repository URL changed when the repository was moved
   into the recently created GitHub organization `GitoxideLabs`, as
   detailed in #1406. Please note that, although I believe updating
   the URLs to their new canonical values is useful, this is not
   needed to fix any broken links, since `Byron/gitoxide` URLs
   redirect (and hopefully will always redirect) to the coresponding
   `GitoxideLabs/gitoxide` URLs.
   
   While this change should not break any URLs, some affected URLs
   were already broken. This updates them, but they are still broken.
   They will be fixed in a subsequent commit.
   
   This also does not update `Byron/gitoxide` URLs in test fixtures
   or test cases, nor in the `Makefile`. (It may make sense to change
   some of those too, but it is not really a documentation change.)

### New Features (BREAKING)

 - `Graph` now borrows the commitgraph cache.
   That way, operations that need a commit-graph (graph data structure)
   can be run more efficiently as they won't consume the graph, but
   can reuse it.

### Bug Fixes (BREAKING)

 - change `Graph::try_lookup_or_insert_default()` to `*::get_or_insert_default()` and `Graph::try_lookup_or_insert_commit()` to `*::get_or_insert_commit()`

### Commit Statistics

 - 19 commits contributed to the release.
 - 60 days passed between releases.
 - 8 commits were understood as [conventional](https://www.conventionalcommits.org).
 - 0 issues like '(#ID)' were seen in commit messages

### Thanks Clippy

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

### Commit Details

 * **Uncategorized**
    - Merge pull request #1624 from EliahKagan/update-repo-url (795962b)
    - Update gitoxide repository URLs (64ff0a7)
    - Merge pull request #1612 from Byron/merge (37c1e4c)
    - Thanks clippy (af03832)
    - Merge pull request #1564 from Byron/improvements (1cfe577)
    - Change `Graph::try_lookup_or_insert_default()` to `*::get_or_insert_default()` and `Graph::try_lookup_or_insert_commit()` to `*::get_or_insert_commit()` (87217cc)
    - Add `Graph::get_or_insert_full_commit()` (e44c372)
    - Add `Graph::clear_commit_data()` for when commits are stored and data is attached. (1c44e41)
    - Merge pull request #1557 from Byron/merge-base (649f588)
    - Add `Graph::len()` and `Graph::is_empty()` (6d8612c)
    - Add `graph::LazyCommit::generation_and_timestamp()` (60f0e00)
    - Adapt to changes in `gix-revision` (ce5a320)
    - `Graph` now borrows the commitgraph cache. (dfedf6a)
    - Add `Graph::insert_parents_with_lookup()` and `Graph::insert_data()`. (638ff28)
    - Allow empty-docs (beba720)
    - Merge branch 'global-lints' (37ba461)
    - Workspace Clippy lint management (2e0ce50)
    - Merge pull request #1546 from nyurik/semilocons (f992fb7)
    - Add missing semicolons (ec69c88)
Assets 2
Loading