refactor: split server and clients/desktop into standalone workspaces
Add [workspace] / [workspace.package] / [workspace.dependencies] blocks to server/Cargo.toml and clients/desktop/Cargo.toml so each becomes a self-contained workspace with its own Cargo.lock. Remove the root Cargo.toml and Cargo.lock; the repo now hosts three independent build worlds: server, clients/desktop, experiments. Convert common/Cargo.toml to concrete versions (was workspace- inherited from the root). common/ is consumed via path-dep from all three worlds, but is not itself a workspace -- consumers unify versions via their own lockfiles. Add common/Cargo.lock to .gitignore per Cargo lib-only-crate convention. Verification: - server/Cargo.lock has 0 eframe/egui/winit entries - cargo build --release --locked passes in server/ - test split: server 385 + desktop 89 + common 34 = 508 total - bin output: clients/desktop/target/debug/doctate (named "doctate")
This commit is contained in:
@@ -6,3 +6,9 @@ settings.toml
|
||||
repomix-output.xml
|
||||
tmpdata/
|
||||
.idea/
|
||||
|
||||
# common/ is a library-only crate (no [[bin]]), consumed via path-dep
|
||||
# from server/, clients/desktop/, and experiments/. Cargo convention
|
||||
# is to NOT version Cargo.lock for lib-only crates -- consumers
|
||||
# unify versions via their own workspace lockfiles.
|
||||
common/Cargo.lock
|
||||
|
||||
Reference in New Issue
Block a user