From 0a8e5935e6305819bb02d8c69e2f046ff397913a Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 22 Feb 2026 00:37:54 +0900 Subject: refactor(workspace): split monolithic crate into 6 workspace crates Extract modules from the single `mozart` crate into 5 focused library crates to improve compilation parallelism and architectural clarity: - mozart-constraint: version constraint parser (independent) - mozart-core: base types, console, validation, platform utilities - mozart-archiver: archive creation (tar, zip, bzip2) - mozart-registry: Packagist API, cache, resolver, downloader, lockfile - mozart-autoload: autoloader generation and PHP scanner Refactor Console::from_cli and build_cache_config to accept primitive args instead of &Cli to break circular dependencies. Introduce [workspace.dependencies] for centralized version management. Remove 9 unused direct dependencies from the CLI crate. Co-Authored-By: Claude Opus 4.6 --- Cargo.lock | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 67 insertions(+), 4 deletions(-) (limited to 'Cargo.lock') diff --git a/Cargo.lock b/Cargo.lock index 0a3e1b8..5e7b497 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1028,19 +1028,82 @@ version = "0.1.0" dependencies = [ "anyhow", "assert_cmd", - "bzip2", "clap", "clap_complete", "colored", + "mozart-archiver", + "mozart-autoload", + "mozart-constraint", + "mozart-core", + "mozart-registry", + "predicates", + "regex", + "reqwest", + "self-replace", + "serde", + "serde_json", + "sha1", + "tempfile", +] + +[[package]] +name = "mozart-archiver" +version = "0.1.0" +dependencies = [ + "anyhow", + "bzip2", + "flate2", + "regex", + "sha1", + "tar", + "tempfile", + "zip", +] + +[[package]] +name = "mozart-autoload" +version = "0.1.0" +dependencies = [ + "anyhow", + "md5", + "mozart-core", + "mozart-registry", + "regex", + "serde", + "serde_json", + "tempfile", +] + +[[package]] +name = "mozart-constraint" +version = "0.1.0" + +[[package]] +name = "mozart-core" +version = "0.1.0" +dependencies = [ + "anyhow", + "colored", "dialoguer", + "regex", + "serde", + "serde_json", + "tempfile", +] + +[[package]] +name = "mozart-registry" +version = "0.1.0" +dependencies = [ + "anyhow", + "bzip2", "filetime", "flate2", "md5", - "predicates", + "mozart-constraint", + "mozart-core", "pubgrub", - "regex", "reqwest", - "self-replace", "serde", "serde_json", "sha1", -- cgit v1.3.1