1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 15:24:46 -05:00
denoland-deno/cli/tools
David Sherret cbb3f85433
feat(unstable/npm): support peer dependencies (#16561)
This adds support for peer dependencies in npm packages.

1. If not found higher in the tree (ancestor and ancestor siblings),
peer dependencies are resolved like a dependency similar to npm 7.
2. Optional peer dependencies are only resolved if found higher in the
tree.
3. This creates "copy packages" or duplicates of a package when a
package has different resolution due to peer dependency resolution—see
https://pnpm.io/how-peers-are-resolved. Unlike pnpm though, duplicates
of packages will have `_1`, `_2`, etc. added to the end of the package
version in the directory in order to minimize the chance of hitting the
max file path limit on Windows. This is done for both the local
"node_modules" directory and also the global npm cache. The files are
hard linked in this case to reduce hard drive space.

This is a first pass and the code is definitely more inefficient than it
could be.

Closes #15823
2022-11-08 14:17:24 -05:00
..
coverage fix(coverage): do not verify emit source hash for coverage (#15260) 2022-07-20 16:30:57 -04:00
init fix(init): suppress info logs when using quiet mode (#15741) 2022-09-02 17:59:36 +02:00
repl feat: allow exiting on two consecutive ctrl+c presses (#15981) 2022-09-22 04:42:09 -04:00
vendor refactor: Combine ImportMapResolver and JsxResolver (#16508) 2022-11-02 15:47:02 +01:00
bench.rs chore: fix clippy warnings (#15944) 2022-09-19 10:25:03 +02:00
check.rs feat(unstable/npm): initial type checking of npm specifiers (#16332) 2022-10-21 15:20:18 +00:00
doc.rs refactor: move deno info functionality from deno_graph to CLI (#16434) 2022-10-28 11:03:33 -04:00
fmt.rs chore: use Rust 1.64.0 (#16035) 2022-09-26 21:52:16 +02:00
info.rs feat(unstable/npm): support peer dependencies (#16561) 2022-11-08 14:17:24 -05:00
installer.rs fix(cli): skip removing the latter part if @ appears at the beginning (#16244) 2022-10-12 11:32:52 +09:00
lint.rs feat(lint): add a report lint config setting (#16045) 2022-10-25 14:21:20 +02:00
mod.rs refactor: move deno info functionality from deno_graph to CLI (#16434) 2022-10-28 11:03:33 -04:00
standalone.rs fix(lock): add --no-lock flag to disable auto discovery of lock file (#16526) 2022-11-03 16:42:56 +01:00
task.rs feat(task): remove warning about being unstable (#16281) 2022-10-18 14:39:04 +02:00
test.rs chore: fix clippy warnings (#15944) 2022-09-19 10:25:03 +02:00
upgrade.rs fix(upgrade): don't prompt if current version has changed (#16542) 2022-11-05 19:06:58 -04:00