refactor: rename git-reachability to gix-reachability
commit
8af6a1erefactor: rename git-reachability to gix-reachability
Gitoxide extensions take the gix-* prefix; this crate fills gix’s read-only gaps (commit-graph and reachable-set writing) with no git-ents semantics, unlike the other git-* crates.
Assisted-by: Claude:claude-fable-5
Reviews
No reviews of this commit yet — record a verdict below.
Start a review
Cargo.lock
@@ -572,10 +572,10 @@
dependencies = [
"git-backend",
"git-protocol",
- "git-reachability",
"git-store",
"gix-hash",
"gix-object",
+ "gix-reachability",
"odb-files",
"refstore-files",
"tempfile",
@@ -1628,10 +1628,10 @@
"git-ents-core",
"git-member",
"git-protocol",
- "git-reachability",
"git-store",
"gix-hash",
"gix-object",
+ "gix-reachability",
"odb-files",
"refstore-files",
"tempfile",
@@ -1725,7 +1725,6 @@
"git-maintenance",
"git-member",
"git-protocol",
- "git-reachability",
"git-signed-push",
"git-store",
"git-toolchain",
@@ -1733,6 +1732,7 @@
"gix-date",
"gix-hash",
"gix-object",
+ "gix-reachability",
"maud",
"odb-files",
"odb-tigris",
@@ -1755,9 +1755,9 @@
"git-ents-core",
"git-member",
"git-protocol",
- "git-reachability",
"gix-hash",
"gix-object",
+ "gix-reachability",
"odb-files",
"odb-tigris",
"refstore-files",
@@ -1774,11 +1774,11 @@
"effect-dispatcher",
"git-backend",
"git-protocol",
- "git-reachability",
"git-store",
"gix-hash",
"gix-object",
"gix-pack",
+ "gix-reachability",
"odb-files",
"odb-tigris",
"refstore-files",
@@ -1808,7 +1808,6 @@
"git-backend",
"git-ents-core",
"git-member",
- "git-reachability",
"git-signed-push",
"gix",
"gix-actor",
@@ -1817,6 +1816,7 @@
"gix-hash",
"gix-object",
"gix-pack",
+ "gix-reachability",
"odb-files",
"refstore-files",
"rstest",
@@ -1824,22 +1824,6 @@
"thiserror 2.0.18",
]
-[[package]]
-name = "git-reachability"
-version = "0.0.0"
-dependencies = [
- "git-backend",
- "gix-actor",
- "gix-date",
- "gix-hash",
- "gix-object",
- "odb-files",
- "odb-tigris",
- "refstore-files",
- "tempfile",
- "thiserror 2.0.18",
-]
-
[[package]]
name = "git-signed-push"
version = "0.0.0"
@@ -2506,6 +2490,22 @@
"gix-utils",
]
+[[package]]
+name = "gix-reachability"
+version = "0.0.0"
+dependencies = [
+ "git-backend",
+ "gix-actor",
+ "gix-date",
+ "gix-hash",
+ "gix-object",
+ "odb-files",
+ "odb-tigris",
+ "refstore-files",
+ "tempfile",
+ "thiserror 2.0.18",
+]
+
[[package]]
name = "gix-ref"
version = "0.64.0"
Cargo.toml
@@ -16,10 +16,10 @@
"crates/git-maintenance",
"crates/git-member",
"crates/git-protocol",
- "crates/git-reachability",
"crates/git-signed-push",
"crates/git-store",
"crates/git-toolchain",
+ "crates/gix-reachability",
"crates/odb-baked",
"crates/odb-files",
"crates/odb-tiered",
@@ -83,10 +83,10 @@
git-maintenance = { path = "crates/git-maintenance" }
git-member = { path = "crates/git-member" }
git-protocol = { path = "crates/git-protocol" }
-git-reachability = { path = "crates/git-reachability" }
git-signed-push = { path = "crates/git-signed-push" }
git-store = { path = "crates/git-store" }
git-toolchain = { path = "crates/git-toolchain" }
+gix-reachability = { path = "crates/gix-reachability" }
odb-baked = { path = "crates/odb-baked" }
odb-files = { path = "crates/odb-files" }
odb-tiered = { path = "crates/odb-tiered" }
crates/backend-conformance/Cargo.toml
@@ -8,7 +8,7 @@
[dependencies]
git-backend = { workspace = true }
git-protocol = { workspace = true }
-git-reachability = { workspace = true }
+gix-reachability = { workspace = true }
git-store = { workspace = true, features = ["test-support"] }
gix-hash = { workspace = true }
gix-object = { workspace = true }
crates/git-cache-proxy/Cargo.toml
@@ -11,7 +11,7 @@
git-ents-core = { workspace = true }
git-member = { workspace = true }
git-protocol = { workspace = true }
-git-reachability = { workspace = true }
+gix-reachability = { workspace = true }
git-store = { workspace = true }
gix-hash = { workspace = true }
gix-object = { workspace = true }
crates/git-ents-server/Cargo.toml
@@ -26,7 +26,7 @@
git-maintenance = { workspace = true }
git-member = { workspace = true }
git-protocol = { workspace = true }
-git-reachability = { workspace = true }
+gix-reachability = { workspace = true }
git-signed-push = { workspace = true }
git-store = { workspace = true }
git-toolchain = { workspace = true }
crates/git-hydrate/Cargo.toml
@@ -10,7 +10,7 @@
git-ents-core = { workspace = true }
git-member = { workspace = true }
git-protocol = { workspace = true }
-git-reachability = { workspace = true }
+gix-reachability = { workspace = true }
gix-hash = { workspace = true }
gix-object = { workspace = true }
odb-tigris = { workspace = true }
crates/git-maintenance/Cargo.toml
@@ -10,7 +10,7 @@
effect-dispatcher = { workspace = true }
git-backend = { workspace = true }
git-protocol = { workspace = true }
-git-reachability = { workspace = true }
+gix-reachability = { workspace = true }
gix-hash = { workspace = true }
gix-object = { workspace = true }
gix-pack = { workspace = true }
crates/git-protocol/Cargo.toml
@@ -9,7 +9,7 @@
git-backend = { workspace = true }
git-ents-core = { workspace = true }
git-member = { workspace = true }
-git-reachability = { workspace = true }
+gix-reachability = { workspace = true }
git-signed-push = { workspace = true }
gix = { workspace = true }
gix-actor = { workspace = true }
crates/backend-conformance/src/corpus.rs
@@ -62,7 +62,7 @@
}
/// The set of every object reachable from `refs`' current tips over
-/// `objects` — a thin wrapper over [`git_reachability::gc_mark`] (no
+/// `objects` — a thin wrapper over [`gix_reachability::gc_mark`] (no
/// reachability artifacts, so a plain walk) for a replay test to compare
/// between the original backend and the one it replayed a corpus into.
///
@@ -73,8 +73,8 @@
pub fn reachable_object_set(
refs: &dyn RefStore,
objects: &dyn ObjectStore,
-) -> git_reachability::Result<BTreeSet<ObjectId>> {
- git_reachability::gc_mark(refs, objects, &git_reachability::ArtifactBundle::empty())
+) -> gix_reachability::Result<BTreeSet<ObjectId>> {
+ gix_reachability::gc_mark(refs, objects, &gix_reachability::ArtifactBundle::empty())
}
#[cfg(test)]
crates/git-cache-proxy/src/lib.rs
@@ -251,7 +251,7 @@
// reachability artifacts is future work, same caveat
// `DiskResolver` in `git-ents-server` carries (absence
// degrades speed, never answers).
- reachability: git_reachability::ArtifactBundle::empty(),
+ reachability: gix_reachability::ArtifactBundle::empty(),
})
}
}
crates/git-ents-server/src/native_git.rs
@@ -75,13 +75,13 @@
authorized_members: git_member::members::without_revoked(members, &revoked),
config,
// No reachability artifacts for the disk-hydrated backend yet:
- // `git-reachability`'s maintenance effect and artifact storage
+ // `gix-reachability`'s maintenance effect and artifact storage
// target the cloud stack (`odb-tigris` + its pack registry);
// wiring generation/loading for this resolver is future work,
// and negotiation/ingest degrade to the plain walk in the
// meantime (`docs/scale-out.adoc`: "absence ... degrades
// speed, never answers").
- reachability: git_reachability::ArtifactBundle::empty(),
+ reachability: gix_reachability::ArtifactBundle::empty(),
})
}
}
crates/git-ents-server/tests/hydrate.rs
@@ -281,8 +281,8 @@
.unwrap()
.map(|entry| entry.unwrap().1)
.collect();
- let source = git_reachability::walk::StoreSource::new(objects);
- git_reachability::walk::reachable(roots, &source, |_id| false, false).unwrap()
+ let source = gix_reachability::walk::StoreSource::new(objects);
+ gix_reachability::walk::reachable(roots, &source, |_id| false, false).unwrap()
}
fn keygen(base: &Path, name: &str) -> PathBuf {
crates/git-hydrate/src/resolver.rs
@@ -83,7 +83,7 @@
// No reachability artifacts wired for this resolver yet (same
// gap `DiskResolver` documents): negotiation/ingest degrade to
// the plain walk, never a wrong answer.
- reachability: git_reachability::ArtifactBundle::empty(),
+ reachability: gix_reachability::ArtifactBundle::empty(),
})
}
}
crates/git-maintenance/src/gc.rs
@@ -3,7 +3,7 @@
//!
//! # Mark
//!
-//! [`collect`] marks with [`git_reachability::gc_mark`] — every object
+//! [`collect`] marks with [`gix_reachability::gc_mark`] — every object
//! reachable from every current ref tip, accelerated by whatever
//! reachability artifacts the repo has (absence degrades speed, never
//! answers). A second, durable-tips-only walk splits the marked set into
@@ -48,8 +48,8 @@
use git_backend::cache_ns;
use git_backend::{ObjectStore, RefName, RefStore};
-use git_reachability::walk::StoreSource;
use gix_hash::ObjectId;
+use gix_reachability::walk::StoreSource;
use odb_tigris::pack_writer::{ClassifiedObject, LifetimeClass, index_pack, partition_and_pack};
use odb_tigris::registry::{PackId, PackRecord, PackRegistry};
use odb_tigris::transport::BlobTransport;
@@ -82,9 +82,9 @@
transport: &dyn BlobTransport,
registry: &dyn PackRegistry,
) -> Result<GcOutcome> {
- let artifacts = git_reachability::store::load_bundle(transport, registry, repo_id)
+ let artifacts = gix_reachability::store::load_bundle(transport, registry, repo_id)
.map_err(|error| Error::ObjectStore(error.to_string()))?;
- let marked = git_reachability::gc_mark(refs, objects, &artifacts)
+ let marked = gix_reachability::gc_mark(refs, objects, &artifacts)
.map_err(|error| Error::ObjectStore(error.to_string()))?;
let durable = durable_reachable(refs, objects, &artifacts)?;
@@ -137,7 +137,7 @@
fn durable_reachable(
refs: &dyn RefStore,
objects: &dyn ObjectStore,
- artifacts: &git_reachability::ArtifactBundle,
+ artifacts: &gix_reachability::ArtifactBundle,
) -> Result<BTreeSet<ObjectId>> {
let tips = refs
.iter_prefix(&RefName::new("refs/"))?
@@ -148,7 +148,7 @@
.map(|entry| entry.map(|(_name, oid)| oid))
.collect::<git_backend::Result<Vec<ObjectId>>>()?;
let source = StoreSource::new(objects);
- git_reachability::accelerated_reachable(tips, &source, |_id| false, false, artifacts)
+ gix_reachability::accelerated_reachable(tips, &source, |_id| false, false, artifacts)
.map_err(|error| Error::ObjectStore(error.to_string()))
}
@@ -273,7 +273,7 @@
let refs = refstore_files::FilesRefStore::open(repo)?;
let objects = odb_files::OdbFiles::open(repo)?;
let marked =
- git_reachability::gc_mark(&refs, &objects, &git_reachability::ArtifactBundle::empty())
+ gix_reachability::gc_mark(&refs, &objects, &gix_reachability::ArtifactBundle::empty())
.map_err(|error| Error::ObjectStore(error.to_string()))?;
let pack_dir = repo.join("objects").join("pack");
crates/git-maintenance/src/lib.rs
@@ -9,7 +9,7 @@
//!
//! The pieces, one module each:
//!
-//! - [`gc`] — mark ([`git_reachability::gc_mark`], artifacts as
+//! - [`gc`] — mark ([`gix_reachability::gc_mark`], artifacts as
//! accelerator) and sweep (over the pack registry, never a bucket
//! listing and *structurally* never quarantine — see the module doc).
//! - [`cache`] — TTL eviction of cache refs and the consolidation effect,
@@ -21,7 +21,7 @@
//! - [`schedule`] — the maintenance [`git_backend::EffectDef`]s and the
//! [`schedule::Scheduler`] a server calls post-ingest to enqueue them on
//! ref-update volume thresholds (including reachability regeneration via
-//! [`git_reachability::maintenance::should_regenerate`], the trigger WS6
+//! [`gix_reachability::maintenance::should_regenerate`], the trigger WS6
//! left for this crate to schedule).
//! - [`collector`] — real [`backend_conformance::Collector`]s over the
//! files and Tigris backends, closing the seam WS2 left open: the
crates/git-maintenance/src/schedule.rs
@@ -3,7 +3,7 @@
//! ref-update volume thresholds").
//!
//! The maintenance effects — GC, cache TTL, consolidation, and
-//! reachability regeneration ([`git_reachability::maintenance`], whose
+//! reachability regeneration ([`gix_reachability::maintenance`], whose
//! scheduling WS6 explicitly deferred here) — are defined as
//! [`EffectDef`]s and enqueued by [`schedule_maintenance`] whenever a
//! repo's accumulated ref-update volume crosses its threshold. The
@@ -17,7 +17,7 @@
//! rows are the schedule, and the runner executes the bodies
//! ([`crate::gc::collect`], [`crate::cache::evict_expired`],
//! [`crate::cache::consolidate`],
-//! [`git_reachability::maintenance::regenerate`]) under the per-repo
+//! [`gix_reachability::maintenance::regenerate`]) under the per-repo
//! advisory lock ([`crate::lock`]).
use std::collections::{BTreeMap, HashMap};
@@ -38,7 +38,7 @@
/// The static [`EffectDef`] for one in-process maintenance effect —
/// `command`/`image` `None`, mirroring
-/// [`git_reachability::maintenance::definition`].
+/// [`gix_reachability::maintenance::definition`].
fn definition(name: &str) -> EffectDef {
EffectDef {
name: name.to_owned(),
@@ -49,7 +49,7 @@
/// The ref-update volume thresholds that trigger maintenance. Two knobs
/// because reachability regeneration has its own trigger predicate
-/// ([`git_reachability::maintenance::should_regenerate`]) and may
+/// ([`gix_reachability::maintenance::should_regenerate`]) and may
/// reasonably fire less often than repack.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct Thresholds {
@@ -57,7 +57,7 @@
/// enqueued.
pub maintenance: u64,
/// Ref updates before reachability regeneration rides along
- /// ([`git_reachability::maintenance::should_regenerate`]).
+ /// ([`gix_reachability::maintenance::should_regenerate`]).
pub reachability: u64,
}
@@ -92,7 +92,7 @@
/// Enqueue `repo_id`'s maintenance effects into `sink` if `stats` crosses
/// `thresholds.maintenance` — GC, cache TTL, consolidation, plus
/// reachability regeneration when
-/// [`git_reachability::maintenance::should_regenerate`] says the volume
+/// [`gix_reachability::maintenance::should_regenerate`] says the volume
/// also warrants that. Returns what was enqueued (empty below threshold).
///
/// # Errors
@@ -114,11 +114,11 @@
definition(CACHE_TTL_EFFECT),
definition(CONSOLIDATION_EFFECT),
];
- if git_reachability::maintenance::should_regenerate(
+ if gix_reachability::maintenance::should_regenerate(
stats.ref_updates_since_last,
thresholds.reachability,
) {
- effects.push(git_reachability::maintenance::definition());
+ effects.push(gix_reachability::maintenance::definition());
}
sink.enqueue(repo_id, &effects)?;
Ok(effects)
crates/git-maintenance/tests/lock_and_schedule.rs
@@ -116,7 +116,7 @@
git_maintenance::schedule::GC_EFFECT,
git_maintenance::schedule::CACHE_TTL_EFFECT,
git_maintenance::schedule::CONSOLIDATION_EFFECT,
- git_reachability::maintenance::EFFECT_NAME,
+ gix_reachability::maintenance::EFFECT_NAME,
]
);
let enqueued = sink.enqueued.lock().unwrap();
crates/git-protocol/src/lib.rs
@@ -43,12 +43,12 @@
/// the promoted object store could resolve.
#[error("missing object {0}: push rejected, connectivity check failed")]
MissingObject(gix_hash::ObjectId),
- /// The reachability walk (`git-reachability`, WS6) itself failed —
+ /// The reachability walk (`gix-reachability`, WS6) itself failed —
/// distinct from [`Self::MissingObject`], which is this crate's own
/// mapping of that same failure at the negotiation/ingest call sites
/// that need a typed reason to report back to a client.
#[error(transparent)]
- Reachability(#[from] git_reachability::Error),
+ Reachability(#[from] gix_reachability::Error),
/// Decoding a commit, tree, or tag object failed.
#[error("could not decode object: {0}")]
Decode(String),
crates/git-protocol/src/walk.rs
@@ -1,4 +1,4 @@
-//! Re-exports `git-reachability`'s shared reachability walk (WS6 moved the
+//! Re-exports `gix-reachability`'s shared reachability walk (WS6 moved the
//! implementation there — see that crate's `walk` module docs for why:
//! it's where the commit-graph accelerator this walk degrades from now
//! lives). Kept as a `walk` module here too so `negotiate`/`ingest`'s
@@ -6,9 +6,9 @@
//! didn't need to change along with the move.
//!
//! [`crate::native::negotiate`] and [`crate::native::ingest`] call
-//! [`git_reachability::engine::accelerated_reachable`] directly rather than
+//! [`gix_reachability::engine::accelerated_reachable`] directly rather than
//! [`reachable`] — the accelerated entry point wraps this walk, it isn't
//! re-exported under this name too, so the call sites make plain which one
//! they're using.
-pub use git_reachability::walk::{ObjectSource, StoreSource, reachable};
+pub use gix_reachability::walk::{ObjectSource, StoreSource, reachable};
crates/odb-tigris/src/registry.rs
@@ -62,8 +62,8 @@
}
/// Which reachability accelerator an [`ArtifactRecord`] holds — see
-/// `git-reachability` (`docs/scale-out.adoc`, "Reachability" / WS6) for the
-/// binary formats themselves. Named here, rather than in `git-reachability`,
+/// `gix-reachability` (`docs/scale-out.adoc`, "Reachability" / WS6) for the
+/// binary formats themselves. Named here, rather than in `gix-reachability`,
/// because the registry (this trait) is the thing both that crate and its
/// Postgres implementation (`refstore-postgres`) need to agree on.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
@@ -99,7 +99,7 @@
/// One reachability artifact registered for a repo: enough to fetch its
/// bytes from the bucket. A repo has at most one live artifact per
-/// [`ArtifactKind`] — regenerating (`git-reachability`'s maintenance effect)
+/// [`ArtifactKind`] — regenerating (`gix-reachability`'s maintenance effect)
/// overwrites it, rather than accumulating snapshots, so lookup is by
/// `(repo_id, kind)` alone.
#[derive(Debug, Clone, PartialEq, Eq)]
crates/refstore-postgres/migrations/0001_init.sql
@@ -133,7 +133,7 @@
-- Reachability artifacts (WS6, `docs/scale-out.adoc`'s "Reachability"
-- section): the commit-graph and reachable-set accelerators
--- `git-reachability`'s maintenance effect generates, tracked here rather
+-- `gix-reachability`'s maintenance effect generates, tracked here rather
-- than by bucket listing, same as packs above. One row per `(repo_id,
-- kind)` — regenerating overwrites the existing row instead of
-- accumulating snapshots, so `kind` alone (not a generated id) is enough to
crates/git-protocol/src/native/ingest.rs
@@ -26,7 +26,7 @@
use gix_hash::ObjectId;
use gix_object::Kind;
-use git_reachability::engine::accelerated_reachable;
+use gix_reachability::engine::accelerated_reachable;
use super::{BackendResolver, NativeBackend};
use crate::attestation::{self, OP_LOG_REF};
@@ -46,14 +46,14 @@
}
impl ObjectSource for IncomingPackSource<'_> {
- fn find(&self, id: &ObjectId) -> git_reachability::Result<Option<(Kind, Vec<u8>)>> {
+ fn find(&self, id: &ObjectId) -> gix_reachability::Result<Option<(Kind, Vec<u8>)>> {
if let Some(bundle) = self.bundle {
let mut buf = Vec::new();
let mut inflate = gix_features::zlib::Inflate::default();
let mut cache = gix_pack::cache::Never;
if let Some((data, _location)) = bundle
.find(id, &mut buf, &mut inflate, &mut cache)
- .map_err(|error| git_reachability::Error::Decode(error.to_string()))?
+ .map_err(|error| gix_reachability::Error::Decode(error.to_string()))?
{
return Ok(Some((data.kind, data.data.to_vec())));
}
@@ -137,7 +137,7 @@
);
match connectivity {
Ok(_reachable) => {}
- Err(git_reachability::Error::MissingObject(id)) => {
+ Err(gix_reachability::Error::MissingObject(id)) => {
return Ok(PushOutcome::Rejected {
reason: format!("connectivity check failed: missing object {id}"),
});
crates/git-protocol/src/native/mod.rs
@@ -46,11 +46,11 @@
/// The config `authorized_members`' roles are checked against.
pub config: git_ents_core::config::Config,
/// This repository's reachability artifacts (WS6), if any have been
- /// generated — [`git_reachability::ArtifactBundle::empty`] for a
+ /// generated — [`gix_reachability::ArtifactBundle::empty`] for a
/// resolver that hasn't wired artifact loading yet, which is exactly
/// the "absent artifact" case negotiation/ingest must (and do) degrade
/// gracefully from.
- pub reachability: git_reachability::ArtifactBundle,
+ pub reachability: gix_reachability::ArtifactBundle,
}
/// Resolves a [`RepoId`] to the backends that serve it.
crates/git-protocol/src/native/negotiate.rs
@@ -2,13 +2,13 @@
//! same reachability walk ([`crate::walk`]) negotiation, push connectivity
//! checking, and GC mark all share (`docs/scale-out.adoc`, "Reachability").
//!
-//! Routed through [`git_reachability::engine::accelerated_reachable`]
+//! Routed through [`gix_reachability::engine::accelerated_reachable`]
//! (WS6): a commit-graph and, whenever a client's `haves` happen to equal a
//! server-known tip-frontier, a cached reachable-set snapshot both
//! accelerate this — absent either artifact, it is exactly the
//! correctness-first, one-object-at-a-time walk it always was.
-use git_reachability::engine::accelerated_reachable;
+use gix_reachability::engine::accelerated_reachable;
use super::{BackendResolver, NativeBackend};
use crate::types::{NegotiationState, PackPlan};
crates/git-protocol/src/native/test_support.rs
@@ -81,7 +81,7 @@
pub config: git_ents_core::config::Config,
/// Reachability artifacts every test sees — empty by default, so tests
/// exercise the plain-walk fallback unless a test explicitly sets this.
- pub reachability: git_reachability::ArtifactBundle,
+ pub reachability: gix_reachability::ArtifactBundle,
}
impl FixedResolver {
@@ -93,7 +93,7 @@
objects: Arc::new(odb_files::OdbFiles::open(path).unwrap()),
authorized_members: Vec::new(),
config: git_ents_core::config::Config::default(),
- reachability: git_reachability::ArtifactBundle::empty(),
+ reachability: gix_reachability::ArtifactBundle::empty(),
}
}
}
crates/git-reachability/src/lib.rs → crates/gix-reachability/src/lib.rs
crates/git-reachability/src/engine.rs → crates/gix-reachability/src/engine.rs
crates/git-reachability/src/store.rs → crates/gix-reachability/src/store.rs
crates/git-reachability/src/reachable_set.rs → crates/gix-reachability/src/reachable_set.rs
crates/git-reachability/src/codec.rs → crates/gix-reachability/src/codec.rs
crates/git-reachability/src/commitgraph.rs → crates/gix-reachability/src/commitgraph.rs
crates/git-reachability/src/walk.rs → crates/gix-reachability/src/walk.rs
crates/git-reachability/src/maintenance.rs → crates/gix-reachability/src/maintenance.rs
crates/git-reachability/tests/equivalence.rs → crates/gix-reachability/tests/equivalence.rs
@@ -2,7 +2,7 @@
//! (`docs/scale-out.adoc`, "Reachability": "absence or staleness degrades
//! speed, never answers"): over several generated DAG shapes, the
//! commit-graph-accelerated walk must return exactly the same reachable set
-//! as the plain one, and a stale cached [`git_reachability::reachable_set::
+//! as the plain one, and a stale cached [`gix_reachability::reachable_set::
//! ReachableSetArtifact`] must still yield a correct answer once new commits
//! have landed past the frontier it was built from.
//!
@@ -16,11 +16,11 @@
use std::path::Path;
use std::process::Command;
-use git_reachability::commitgraph::CommitGraph;
-use git_reachability::engine::{self, ArtifactBundle};
-use git_reachability::reachable_set::ReachableSetArtifact;
-use git_reachability::walk::{self, StoreSource};
use gix_hash::ObjectId;
+use gix_reachability::commitgraph::CommitGraph;
+use gix_reachability::engine::{self, ArtifactBundle};
+use gix_reachability::reachable_set::ReachableSetArtifact;
+use gix_reachability::walk::{self, StoreSource};
fn bare_repo() -> tempfile::TempDir {
let dir = tempfile::tempdir().unwrap();
crates/git-reachability/Cargo.toml → crates/gix-reachability/Cargo.toml
@@ -1,5 +1,5 @@
[package]
-name = "git-reachability"
+name = "gix-reachability"
version = "0.0.0"
edition.workspace = true
publish.workspace = true