-
Notifications
You must be signed in to change notification settings - Fork 5.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: npm workspace and better Deno workspace support #24334
Merged
Merged
Changes from 1 commit
Commits
Show all changes
101 commits
Select commit
Hold shift click to select a range
3660270
Start on workspace refactor.
dsherret 2c591ef
Some work on tasks
dsherret 81dc4a8
Switching more to workspace
dsherret 271df70
More.
dsherret b155d9a
Remove cli/args/package_json.rs
dsherret c1d52f8
some work on deno compile
dsherret c8dbbb1
tasks
dsherret 04fd3c6
update publishing
dsherret 03b30f4
Adding fmting
dsherret 1e8b196
Merge branch 'main' into workspace_start
dsherret cb6b545
some work on linting
dsherret 5e9fd3f
finish lint
dsherret 4fe5441
Some work on lsp and installing from all the packages
dsherret 19ad5c4
separate out test options from workspace test options
dsherret 6eed364
finish up test
dsherret c04afc7
Add bench
dsherret 49b1a23
compiling
dsherret 76dcc18
handle base properly
dsherret 4205667
fix slow types linting
dsherret 2033d89
Use SharedLocal and fix some vendor tests.
dsherret 297d191
Start making import map optional
dsherret 8583651
Start investigating @types issue
dsherret df4e20e
Fix. Wasn't thinking.
dsherret a7b5857
fix info
dsherret c5df354
fix watcher tests
dsherret 77c0977
working npm tests
dsherret d38c216
some import specifier fixes
dsherret ffa9bb1
Fix some lsp issues.
dsherret e887d93
Fix test
dsherret 64c20ac
We understand the npm workspace now
dsherret 171bed6
Make deno compile work with relative specifiers
dsherret 5c330c1
Fix in import_map/deno_emit
dsherret 2b4247c
Compile fixes
dsherret 3c9fec7
Fix some byonm stuff
dsherret e691125
Merge branch 'main' into workspace_start
dsherret 4d3ac9e
Update to actual deps
dsherret e844ee1
refactor: move `PackageJson` to deno_config
dsherret 5770c6b
Update
dsherret 1ca7b82
fix failing tests
dsherret 6b65431
Update deno_config
dsherret 25439b0
fix failing test by clearing package json cache
dsherret c72410e
fix formatting
dsherret f41a348
Merge branch 'main' into workspace_start
dsherret b1e4645
Merge branch 'package_json_deno_config' into workspace_start
dsherret 11eb6ff
Fixes for latest changes
dsherret 1e28b4e
clippy
dsherret f626f10
Resolve todo
dsherret 3fe1853
update from what will be main
dsherret c4b55bf
Resolve some todos
dsherret 698d9aa
Merge branch 'main' into workspace_start
dsherret 1281f76
Merge branch 'main' into workspace_start
dsherret 217a217
fix failing tests
dsherret 163bef4
npm workspace resolution
dsherret 05ce93e
handle going to npm workspace deps for npm specifiers too
dsherret de1b298
Add test for workspace
dsherret 2fd7ffa
add an npm specifier referencing a workspace package
dsherret 0a9e1c3
move this down to deno_config
dsherret 33ab587
updates for latest
dsherret 2c35049
update to new Workspace::discover signature
dsherret 6e9c118
Support `@workspace` tag in an npm specifier
dsherret a063f9a
Support pkg json "workspace:" specifiers
dsherret 91c3c1b
Move test
dsherret 8851529
Initialize node_modules dir with used workspace members
dsherret 8dd40a9
Fix some tests and update var names
dsherret 66c863b
Update workspace basic test
dsherret 5df7730
Merge branch 'main' into workspace_start
dsherret 44c189e
Merge branch 'main' into workspace_start
dsherret 07a57b4
Update for failing compile
dsherret ebfe959
Merge branch 'main' of https://github.com/denoland/deno into workspac…
dsherret 9a1e921
improve resolving root dir for deno compile
dsherret 497c22d
Resolve more todos about errors in sub path resolution
dsherret b0fc65d
Add tests for and fix formatting
dsherret 914be64
Fix some issues and add tests for linting
dsherret bb1988e
Add no slow types workspace lint test
dsherret 36c1ca0
Merge branch 'main' into workspace_start
dsherret 7fee5f6
Format and ignore some files from formatting
dsherret ea41334
Add tests for exports not found in npm workspace
dsherret 59fb3db
Merge branch 'main' into workspace_start
dsherret f8cf42a
diagnostics
dsherret 57fdbde
Add tests for lockfile going to the workspace root
dsherret 8a97d8c
Add test for check
dsherret 9ce4caa
Update deno_config
dsherret 803b097
Add bench tests
dsherret 754b308
add test
dsherret 9d38ecf
Merge branch 'main' into workspace_start
dsherret 6aaac91
fix specs
dsherret 1448564
was using a backslash in a path
dsherret 3f7569f
Bump ci cache
dsherret 7e6644f
Switch back to resolving based on multiple args.
dsherret db95f58
update some tests
dsherret 43f1f5f
Merge branch 'main' into workspace_start
dsherret 372ceed
update tests
dsherret 0c98628
fix copyright
dsherret 51bed91
add tests for vendor
dsherret 8ac81df
update test for pkg with no deps in lockfile in workspace
dsherret 2a957e0
Merge branch 'main' into workspace_start
dsherret 650a43d
- Fix private registries not working with auto-install in deno compile
dsherret ae7ebec
maybe fix windows tests
dsherret 4d0d459
Updates from review
dsherret 21673a3
Merge branch 'main' into workspace_start
dsherret b282f75
Upgrade deno_unsync. Remove fatal diagnostic test because it's in den…
dsherret File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Switch back to resolving based on multiple args.
- Loading branch information
commit 7e6644fbf99263d8f79e11caa0c37b3f86b4dd36
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 1,36 @@ | ||
use std::marker::PhantomData; | ||
|
||
pub struct CheckedSet<T: std::hash::Hash ?Sized> { | ||
_kind: PhantomData<T>, | ||
checked: std::collections::HashSet<u64>, | ||
} | ||
|
||
impl<T: std::hash::Hash ?Sized> Default for CheckedSet<T> { | ||
fn default() -> Self { | ||
Self { | ||
_kind: Default::default(), | ||
checked: Default::default(), | ||
} | ||
} | ||
} | ||
|
||
impl<T: std::hash::Hash ?Sized> CheckedSet<T> { | ||
pub fn with_capacity(capacity: usize) -> Self { | ||
Self { | ||
_kind: PhantomData, | ||
checked: std::collections::HashSet::with_capacity(capacity), | ||
} | ||
} | ||
|
||
pub fn insert(&mut self, value: &T) -> bool { | ||
self.checked.insert(self.get_hash(value)) | ||
} | ||
|
||
fn get_hash(&self, value: &T) -> u64 { | ||
use std::collections::hash_map::DefaultHasher; | ||
use std::hash::Hasher; | ||
let mut hasher = DefaultHasher::new(); | ||
value.hash(&mut hasher); | ||
hasher.finish() | ||
} | ||
} |
This file contains 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
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fyi @nayeemrmn what's done here is probably good enough for now.