NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2580 most downloaded on crates.io
Provides access to local and remote cargo registry indices
Last release 5 months ago
27 Apr 2026
Ships fairly regularly
a new release about every 6 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
3 versions withdrawn
withdrawn after publishing
3 years old
64 releases · first in 2023
One column per quarter.
PR#111 removed the dependency on home .
home.Changed PR#108 updated crates.
PR#106 added the pubtime field, the RFC3339 timestamp when the crate was published to its source registry.
PR#103 removed the gix based support for fetching and accessing git registry indices, resolving #98 . Those who need to access them can use older vers
gix based support for fetching and accessing git registry indices, resolving #98. Those who need to access them can use older versions of this crate, crates-index, or roll their own.Changed PR#97 updated gix -> 0.75.
a6abdbb updated toml-span -> 0.6.
Changed PR#96 updated gix -> 0.74.
PR#95 resolved #94 by actually using an infinite timeout on Windows when timeout is None .
Changed PR#93 updated gix -> 0.73.
PR#90 updated the IndexConfig to match the current cargo schema, thanks nox !
### Changed - PR#88 updated gix -> 0.72.
PR#87 resolved #86 by adding a missing unsafe that caused the Windows target to fail to compile.
PR#85 updated gix -> 0.71 and tokio to 1.44.2, addressing RUSTSEC-2025-0021 and RUSTSEC-2025-0023.
PR#84 updated crates, and moved to edition 2024.
PR#83 adds an additional fix for non-crates.io urls not fixed in PR#82 as cargo now canonicalizes all URLs.
PR#82 resolved #81, updating the hash calculation to match cargo 1.85.0. The decision of the hash calculation is based on the cargo version, which can
IndexLocation::cargo_version, defaulting to retrieving the version from the current environment if not specified allowing the calculation to work regardless of which cargo version is used.semver::Version.### Changed - PR#75 updated gix -> 0.70. - PR#80 updated dependencies.
### Changed - PR#75 updated gix -> 0.68.
gix -> 0.68.PR#74 fixed a bug where the list of reserved crate names was not sorted correctly for binary searching.
### Changed - PR#73 updated gix -> 0.66.
gix -> 0.66.PR#71 resolved #70 by using the correct feature flag for docs.rs.
PR#69 resolved an issue where 32-bit targets would have a different ident hash from what cargo would have due to cargo being target dependent in the h
### Changed - PR#67 updated gix -> 0.64.
gix -> 0.64.PR#66 added the gix-curl feature, which is mutually exclusive with the git and gix-reqwest features.
gix-curl feature, which is mutually exclusive with the git and gix-reqwest features.PR#65 updated toml-span -> 0.3.0.
toml-span -> 0.3.0.### Changed - PR#64 updated gix -> 0.63.
gix -> 0.63.PR#61 addressed #60 by adding IndexUrl::for_registry_name to read a registry's index url from the config/environment.
PR#59 updated gix -> 0.62, reqwest -> 0.12, http -> 1.1.
gix -> 0.62, reqwest -> 0.12, http -> 1.1.### Changed - PR#54 updated gix -> 0.61. - PR#53 updated gix -> 0.60.
### Changed - PR#54 updated gix -> 0.61.
gix -> 0.61.### Changed - PR#53 updated gix -> 0.60.
gix -> 0.60.PR#52 added ComboIndexCache::cache_path to retrieve the path of a particular crate's index entry.
ComboIndexCache::cache_path to retrieve the path of a particular crate's index entry.### Changed - PR#51 updated dependencies.
### Changed - PR#49 updated toml-span -> 0.2
toml-span -> 0.2PR#48 replaced toml with toml-span removing several dependencies.
toml with toml-span removing several dependencies.PR#47 fixed #46 by ensuring one full DNS lookup and request response roundtrip is made before going wide to ensure that excessive DNS lookups and conn
### Changed - PR#45 bumped gix -> 0.58
gix -> 0.58### Changed - PR#44 bumped gix -> 0.57
gix -> 0.57PR#43 fixed the file lock options from LockOptions::cargo_package_lock to be exclusive to more closely match Cargo's behavior. This would not have bee
PR#41 resolved #29 by force disabling gpg signing in test.
PR#39 resolved #38 by ensuring all parent directories are created before attempting a clone with gix.
PR#34 resolved a compile issue when targeting musl libc.
musl libc.PR#32 resolved #31 by reducing the size of Error.
Error.gix -> 0.54.tame_index::utils::flock::FileLock parameter to all methods on indices that perform disk operations.tame_index::utils::flock, which contains a FileLock for holding an OS file lock for a particular path, as well as LockOptions for creating them.PR#27 updated gix to 0.53.1. Thanks @Byron!
PR#27 updated gix to 0.53.1. Thanks @Byron!
PR#26 changed sparse index request creation to not use HTTP/2 for the version to support corporate potato proxies. This results in a slight but notice
PR#24 resolved #23 by fixing a bug where index cache paths were not lower cased as cargo does.
PR#22 fixed an issue where ssh index urls would be mapped to the incorrect local directory. This issue was raised in cargo-deny.
[d9cb55f] fixed and issue with docs.rs documentation building.
d9cb55f] fixed and issue with docs.rs documentation building.PR#20 publicly exposed tame_index::http for easier downstream usage.
tame_index::external::http for easier downstream usage.PR#18 resolved #16 by marking ComboIndexCache and ComboIndex as #[non_exhaustive]. This avoids build breaks if the local feature is enabled in one tra
PR#15 added the native-certs feature to be able to use the OS certificate store instead of webpki-roots. Thanks @Shnatsel!
PR#14 added the ability to specify the repository lock policy when calling RemoteGitIndex::with_options. Thanks @Shnatsel!
PR#13 fixed a bug where git repository url canonicalization was incorrect if the url was not a github.com url that ended with .git.
PR#11 added RemoteSparseIndex::krates, AsyncRemoteSparseIndex::krates, and AsyncRemoteSparseIndex::krates_blocking as helper methods for improving thr
RemoteSparseIndex::krates, AsyncRemoteSparseIndex::krates, and AsyncRemoteSparseIndex::krates_blocking as helper methods for improving throughput when fetching index entries for many crates.PR#10 unfortunately had to relax the constraint that crate versions in an index are always parsable as semver::Version.
semver::Version.PR#9 resolved #8 by ensuring (valid) non-official cargo build version output can also be parsed.
PR#7 fixed an issue where RemoteGitIndex::fetch could fail in environments where the git committer was not configured.
RemoteGitIndex::fetch could fail in environments where the git committer was not configured.RemoteGitIndex looks up blobs. Previously fetching would actually update references, now however we write a FETCH_HEAD similarly to git/libgit2, and uses that (or other) reference to find the commit to use, rather than updating the HEAD to point to the same commit as the remote HEAD.PR#6 fixed two bugs with git registries.
cargo does not set remotes for git registry indices, the previous code assumed there was a remote, thus failed to fetch updatescommitter.name is now set to tame-indexPR#5 relaxed rust-version to 1.67.0.
rust-version to 1.67.0.Your coding agent can read these notes before it upgrades. Set up the MCP server →