Goal
Rename the seven crate names that currently carry the bare torrust- prefix but contain tracker-specific logic, so that the torrust-tracker- prefix accurately marks their scope. Where the old name already contains the word "tracker" in the middle (redundant once it is in the prefix), remove it to produce cleaner names.
Background
The workspace currently has three crate-name prefixes:
| Prefix |
Intended scope |
bittorrent- |
Generic BitTorrent protocol / community reusable |
torrust- |
Reusable across Torrust projects (tracker, index, …) |
torrust-tracker- |
Torrust Tracker only |
Seven crates carry the torrust- prefix but belong in the torrust-tracker- group:
| Current crate name |
Why it is tracker-specific |
torrust-axum-health-check-api-server |
Depends on torrust-tracker-configuration and torrust-tracker-primitives |
torrust-axum-http-tracker-server |
Implements the BitTorrent HTTP tracker; depends on all tracker-core packages |
torrust-axum-rest-tracker-api-server |
Implements the tracker management REST API; deep tracker dependencies |
torrust-axum-server |
Axum wrapper configured via torrust-tracker-configuration; not generic |
torrust-rest-tracker-api-client |
HTTP client for this tracker's REST API; implements tracker-specific API contract |
torrust-rest-tracker-api-core |
Core logic for tracker REST API; depends on all three tracker-core packages |
torrust-udp-tracker-server |
Implements the BitTorrent UDP tracker; deep tracker dependencies |
None of these crates are published on crates.io (verified May 2026). The rename has no external consumers to migrate.
This issue is a subissue of EPIC #1669 (Overhaul: Packages). Implementation sequence: SI-07.
Proposed name mapping
| Current name |
Proposed new name |
torrust-axum-health-check-api-server |
torrust-tracker-axum-health-check-api-server |
torrust-axum-http-tracker-server |
torrust-tracker-axum-http-server |
torrust-axum-rest-tracker-api-server |
torrust-tracker-axum-rest-api-server |
torrust-axum-server |
torrust-tracker-axum-server |
torrust-rest-tracker-api-client |
torrust-tracker-rest-api-client |
torrust-rest-tracker-api-core |
torrust-tracker-rest-api-core |
torrust-udp-tracker-server |
torrust-tracker-udp-server |
Note: torrust-server-lib is intentionally excluded — it is intended as cross-project reusable and now has zero tracker-specific dependencies.
Scope
In Scope
- Rename the
name field in each of the 7 package Cargo.toml files.
- Update the root
Cargo.toml workspace dependency keys (7 entries).
- Update all
Cargo.toml files in the workspace that reference the old names as dependencies.
- Update all Rust source files that use the old crate identifiers.
- Update prose references in
packages/AGENTS.md, AGENTS.md, docs/packages.md, and each package's README.md.
- Verify the workspace builds and all tests pass.
Out of Scope
- Moving any crate to a separate repository.
- Changes to any crate's API or behaviour.
- Publishing any crate on crates.io.
Acceptance Criteria
Goal
Rename the seven crate names that currently carry the bare
torrust-prefix but contain tracker-specific logic, so that thetorrust-tracker-prefix accurately marks their scope. Where the old name already contains the word "tracker" in the middle (redundant once it is in the prefix), remove it to produce cleaner names.Background
The workspace currently has three crate-name prefixes:
bittorrent-torrust-torrust-tracker-Seven crates carry the
torrust-prefix but belong in thetorrust-tracker-group:torrust-axum-health-check-api-servertorrust-tracker-configurationandtorrust-tracker-primitivestorrust-axum-http-tracker-servertorrust-axum-rest-tracker-api-servertorrust-axum-servertorrust-tracker-configuration; not generictorrust-rest-tracker-api-clienttorrust-rest-tracker-api-coretorrust-udp-tracker-serverNone of these crates are published on crates.io (verified May 2026). The rename has no external consumers to migrate.
This issue is a subissue of EPIC #1669 (Overhaul: Packages). Implementation sequence: SI-07.
Proposed name mapping
torrust-axum-health-check-api-servertorrust-tracker-axum-health-check-api-servertorrust-axum-http-tracker-servertorrust-tracker-axum-http-servertorrust-axum-rest-tracker-api-servertorrust-tracker-axum-rest-api-servertorrust-axum-servertorrust-tracker-axum-servertorrust-rest-tracker-api-clienttorrust-tracker-rest-api-clienttorrust-rest-tracker-api-coretorrust-tracker-rest-api-coretorrust-udp-tracker-servertorrust-tracker-udp-serverNote:
torrust-server-libis intentionally excluded — it is intended as cross-project reusable and now has zero tracker-specific dependencies.Scope
In Scope
namefield in each of the 7 packageCargo.tomlfiles.Cargo.tomlworkspace dependency keys (7 entries).Cargo.tomlfiles in the workspace that reference the old names as dependencies.packages/AGENTS.md,AGENTS.md,docs/packages.md, and each package'sREADME.md.Out of Scope
Acceptance Criteria
Cargo.tomlin the workspace declares any of the 7 old crate names.cargo build --workspacesucceeds with zero errors.cargo test --workspacepasses with zero failures.linter allexits with code0.packages/AGENTS.md,AGENTS.md,docs/packages.md, and each renamed package'sREADME.mdreflect the new crate names.Package InventoryandDesired Package Statetables are updated.