Commit Graph

36 Commits

Author SHA1 Message Date
ADTC
2d2ad8bb25 fix(deploy): hint "pnpm run deploy" for "pnpm deploy" outside a workspace (#9920)
* docs(deploy): hint "pnpm run deploy" for "pnpm deploy" outside a workspace

This makes the experience better for those who have a script named "deploy",
and may potentially get confused why "pnpm deploy" doesn't work.

Related to #9475 but doesn't actually fix it.

* fix: only print hint when there's a script named deploy

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-09-03 11:30:41 +02:00
Zoltan Kochan
facd7656e8 refactor: always use extensions in relative imports (#9878) 2025-08-19 15:25:11 +02:00
Zoltan Kochan
d1edf732ad feat: support installing Deno runtime (#9791)
* feat: support installing Deno runtime

* refactor: use npm registry to resolve deno version

* feat: wip

* feat: installing deno runtime

* style: fix

* test: fix

* test: deno

* test: fix

* feat: deno

* feat: deno

* feat: create zip fetcher

* style: fix

* refactor: node fetch

* feat: support a new binary fetcher

* test: fix

* feat: rename zip-fetcher to binary-fetcher

* refactor: change naming

* fix: windows

* refactor: rename packages

* refactor: deno resolver

* refactor: runtime resolvers

* refactor: binary fetcher

* refactor: runtime resolvers

* refactor: runtime resolvers

* refactor: create SingleResolution

* refactor: remove not needed change

* refactor: package requester

* docs: add changesets

* refactor: use VariationsResolution and AtomicResolution

* refactor: implement CR suggestions

* docs: add changesets

* fix: address comment in CR

* feat: update formatting of pnpm-lock.yaml
2025-07-30 11:27:07 +02:00
Zoltan Kochan
f91922c938 fix: store every Node.js artifact's integrity separately in the lockfile (#9798)
* fix: store every Node.js artifact's integrity separately in the lockfile

* fix: store every Node.js artifact's integrity separately in the lockfile

* style: fix

* Potential fix for code scanning alert no. 76: Incomplete string escaping or encoding

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* fix: windows

* refactor: node install

* fix: test

* fix: test on Windows

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-07-25 16:31:23 +02:00
Zoltan Kochan
540986f326 refactor: rename peersSuffix to peerDepGraphHash (#9656) 2025-06-17 02:27:58 +02:00
Khải
983efdc7f1 fix(deploy): overrides contain peer dependencies (#9604)
close #9595
2025-06-10 00:45:55 +02:00
Khải
1959f997c1 revert: fix(deploy/legacy): unexpected directory creations (#9597)
Revert 95b088c7a7

close #9596
2025-06-03 14:29:26 +02:00
Khải
95b088c7a7 fix(deploy/legacy): unexpected directory creations (#9574)
close #9550
2025-05-28 09:55:44 +02:00
Alexander Tkachev
aad7eebc2d fix: let deploy inherit overrides (#9546)
* fix: let deploy inherit overrides

Prevents the following error in "pnpm deploy" with "inject-workspace-packages=true":
  ERR_PNPM_LOCKFILE_CONFIG_MISMATCH Cannot proceed with the frozen installation.
  The current "overrides" configuration doesn't match the value found in the lockfile

* chore: add changeset

* docs: update old-symbols-invite.md

close #9283
close #9483
2025-05-19 10:42:04 +02:00
Zoltan Kochan
bae9dfe134 fix: update setting names in error hints (#9508) 2025-05-11 00:09:12 +02:00
Brandon Cheng
9d3008529c refactor: remove deployCatalogHook (#9320) 2025-03-26 10:33:51 +01:00
Brandon Cheng
cda1c43dad refactor: prune lockfile importers when running pnpm deploy to prepare for allProjectsGraph refactor (#9258)
* feat: support `pruneLockfileImporters` as argument to install

* fix: remove unnecessary importers from filtered lockfile during deploy
2025-03-11 02:52:32 +01:00
Zoltan Kochan
f5940ccf91 fix(deploy): don't remove fields from the deployed package's package.json (#9222)
close #9215
2025-03-06 12:08:12 +01:00
Brandon Cheng
e4eeafdb55 fix: catalog snapshots removed on filtered install with dedupe-peer-dependents=false (#9175)
* test: add catalog test for --filter and dedupe-peer-dependents=false

* fix: disable dedupe-injected-deps when deploying

* fix: catalog snapshots removed with dedupe-peer-dependents=false
2025-03-02 12:42:46 +01:00
btea
a5e4965c59 fix(deploy): missing imports and license fields (#9199) 2025-03-01 01:39:30 +01:00
Zoltan Kochan
e9d8f48987 fix: add hints to the error on deploy (#9051) 2025-02-06 11:10:20 +01:00
Zoltan Kochan
96cdfa3958 fix(deploy): legacy deploy should work without injected dependencies (#9050) 2025-02-06 01:17:18 +01:00
Khải
a08a5a9896 fix(deploy): current directory as source (#9030)
close #9001
2025-02-03 14:21:41 +01:00
Richard Peach
b562debaf4 fix: deploy should maintain type on new manifest (#9002) 2025-01-26 19:41:05 +01:00
Khải
9a44e6ce87 fix(deploy): inherit pnpm from the root manifest (#8991)
* fix(deploy): inherit `pnpm` from the root manifest

* fix: eslint

* refactor: share code

* test: add

* fix: eslint

* fix: remove duplicate dep from package.json
2025-01-26 17:26:16 +01:00
Khải
b4b293a7be refactor: replace custom parser with @pnpm/dependency-path (#8926)
* refactor: use `@pnpm/dependency-path`

* fix: make `dependency-path` works

* refactor: reduce computation

* refactor: deduplicate code as function

* refactor: correct the names and terminologies
2025-01-01 23:01:11 +01:00
Khải
f89128883f feat(deploy): create dedicated lockfile (#8828)
* feat(deploy): create dedicated lockfile

Closes https://github.com/pnpm/pnpm/issues/8778

* chore: remove a leftover `console.log`

* fix: hoisted should also use dedicated lockfile

* feat: inherit more keys

* docs(changeset): more details

* refactor: remove a variable

* refactor: use `selectedProject.rootDir`

* fix: manifest files

* fix: update lockfile

* fix: accidentally skipped normal dependencies

* test: update

* fix: meta

* fix: remove links to nowhere

* docs: remove the false todo

* fix: transitive workspace dependencies

* fix: package snapshot names

* fix: dependencies that depend on deployed package

* perf: do not repeat computation

* fix: compile error

* refactor: base on allProjects

* fix: add missing `link:` prefix

* test: add some tests

* fix: revert stupid refactor

This reverts commit 000788127c.

* test: more assertions

* test: more assertions

* test: https://github.com/pnpm/pnpm/issues/8778

* test: exact paths

* refactor: use `toBe`

* refactor: divide section

* fix: eslint

* test: fix assertions

* fix: dependencies that depend on deploy package

* perf: cheap operation first

* test: remove `.only`

* test: add assertions

* test: remove unnecessary assertions

* test: remove unnecessary details

* fix: deployed package depends on itself

* docs: remove the other todo

* fix: self-referential dependencies

* test: fix

* test: more assertions

* feat: convert fallbacks to programmer errors

* fix: `file:` protocol

* refactor: more types

* refactor: remove unused variables

* refactor: fix regex

* feat: force-legacy-deploy

* feat: suggest reporting bug and using workaround

* feat: overrides, patchedDependencies, packageExtensions (wip)

* test: fix

* feat: handle `packageExtensions` in a smarter way

* fix: pnpmfile

* docs: change wording

* fix: `packageExtensions` with internal dependencies

* fix: directory resolution location

* refactor: use `rootProjectManifestDir`

* feat: set `overrides` to `undefined` instead

* refactor: remove `as ProjectRootDirRealPath`

* test: packageExtensions

* test: use regex string matchers

* refactor: move new tests to its own file

* fix: patchedDependencies

* fix: eslint

* test: patchedDependencies

* test: fix windows

* fix: pnpmfile checksum

* docs: change wording

* fix: peer dependencies

* docs: omission of peers

* docs: more detailed explanation

* fix: preserve unique peer dependencies suffix

* refactor: code rearrange

* refactor: shorten lines of code

* feat: add `dedupeInjectedDeps` to `InstallCommandOptions`

* test: peer dependencies suffix

* docs(changeset): config -> force-legacy-deploy

* docs(changeset): merge

* docs(changeset): add missing period
2024-12-27 17:17:12 +01:00
Zoltan Kochan
ac5b9d8e16 feat!: ignore the NODE_ENV env variable (#8839)
close #8827
2024-12-15 20:24:51 +01:00
Zoltan Kochan
31911f103e fix: dependency status check should never throw an exception (#8852) (#8857) 2024-12-10 17:16:08 +01:00
Khải
ad1fd64b64 fix(deploy): node-linker=hoisted produces empty node_modules (#8525)
close https://github.com/pnpm/pnpm/issues/6682

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2024-09-20 03:27:05 +02:00
Zoltan Kochan
7ee59a166a fix(deploy): write node_modules/.modules.yaml to the deploy directory (#8465)
close #7731
2024-08-26 17:07:16 +02:00
Brandon Cheng
1e4dd79163 fix: install failure on pnpm deploy when using catalogs (#8298)
* fix: install failure on pnpm deploy when using catalogs

* test: add test for pnpm deploy when using catalogs

* chore: changeset
2024-07-14 02:45:35 +02:00
Khải
e6b8d01b65 refactor(releasing): return type annotations (#7882) 2024-04-10 11:25:13 +02:00
JasonMan34
693944b669 feat(deploy): don't rimraf out directory if it's not empty (#7360)
close #7351

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2023-12-30 16:59:52 +01:00
Zoltan Kochan
9caa33d535 feat: new option for disabling local directory dependencies relinking (#7083)
Removed `disableRelinkFromStore` and `relinkLocalDirDeps`. Replaced them with `disableRelinkLocalDirDeps`.
2023-09-13 12:23:03 +03:00
Zoltan Kochan
f2009d1756 perf: use a worker pool to link packages (#6950)
ref #6808
2023-08-24 20:05:53 +03:00
await-ovo
78d43a8627 fix(deploy): ensure that the deploy target is generated in the same directory (#6859)
close #6858

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2023-07-29 18:44:55 +03:00
Zoltan Kochan
1ffedcb8d7 fix(deploy): always purge modules directory (#6511)
close #6510
2023-05-07 12:51:56 +03:00
await-ovo
7a0ce1df08 feat!: deploy with local dependencies (#6016)
Co-authored-by: Zoltan Kochan <z@kochan.io>

Close #5911
Close #5961
2023-02-19 04:23:31 +02:00
await-ovo
11886f4c26 docs: display filter options in deploy command help info (#6023) 2023-02-04 01:22:40 +02:00
Zoltan Kochan
4ca53b0b50 refactor: group projects in different subdirectories (#5659) 2022-11-20 01:35:22 +02:00