ok/jj
1
0
Fork 0
forked from mirrors/jj
jj/lib/tests
Martin von Zweigbergk 27a7fccefa revset: add a method returning a change id index
One of the remaining places we depend on index positions is when
creating a `ChangeIdIndex`. This moves that into the revset engine
(which is coupled to the commit index implementation) by adding a
`Revset::change_id_index()` method. We will also use this function
later when add support for resolving change id prefixes within a small
revset.

The current implementation simply creates an in-memory index using the
existing `IdIndex` we have in `repo.rs`.

The custom implementation at Google might do the same for small
revsets that are available on the client, but for revsets involving
many commits on the server, it might use a suboptimmal implementation
that uses longer-than-necessary prefixes for performance reasons. That
can be done by querying a server-side index including changes not in
the revset, and then verifying that the resulting commits are actually
in the revset.
2023-03-23 20:49:15 -07:00
..
test_bad_locking.rs
test_commit_builder.rs
test_commit_concurrent.rs
test_conflicts.rs
test_default_revset_graph_iterator.rs
test_diff_summary.rs
test_git.rs
test_index.rs
test_init.rs
test_load_repo.rs
test_merge_trees.rs
test_mut_repo.rs
test_operations.rs
test_refs.rs
test_revset.rs revset: add a method returning a change id index 2023-03-23 20:49:15 -07:00
test_rewrite.rs
test_view.rs
test_working_copy.rs
test_working_copy_concurrent.rs
test_working_copy_sparse.rs
test_workspace.rs