Repository navigation
Preserve notebook workspace dependency context - #6
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Workspace notebooks lose inherited dependencies when Venus generates isolated Cargo projects. Resolve notebook dependency context before generation so internal workspace crates remain available.
Closes #5.
What changed
crates/venus-core/src/compile/notebook_manifest/: Resolve package and workspace dependencies with correct path origins. Preserve aliases, sources, targets, optional features, and root patches.crates/venus-core/src/compile/universe/andproduction.rs: Share resolved dependency context across generated runtime and standalone projects. Refresh universe caches and loaded cell libraries after local dependency changes.crates/venus/cli/src/executor/andcrates/venus-server/src/session/: Share manifest discovery and refresh context during reloads. Split oversized files by responsibility.crates/venus-core/tests/workspace_dependencies.rs,crates/venus/cli/tests/workspace.rs, andcrates/venus-server/src/session/tests.rs: Cover execution, standalone builds, source refresh, and manifest changes.crates/venus-core/src/compile/cell/: Include source and dependency hashes in library filenames. Check refreshed values while retaining loaded libraries.docs/cells.md: Document workspace notebook dependencies and override behavior.Checks
cargo fmt --all cargo clippy --workspace --all-targets -- -D warnings cargo +stable test --workspace --quiet cargo doc -p venus-core --no-depsCargo.toml: 323 tests pass. Eighteen existing tests and doctests remain ignored.crates/venus-core: Documentation builds with ten pre-existing rustdoc link warnings.