Commit Graph

39 Commits

Author SHA1 Message Date
Zoltan Kochan
cb17c44e55 fix(dlx): fix race conditions in parallel dlx calls sharing
Global Virtual Store (#10939)

Content-verified skip in GVS mode, tolerate EPERM during
bin creation on Windows, handle EPERM in DLX cache symlink.

(cherry picked from commit 62f760ec3d)
2026-03-12 21:19:29 +01:00
Ishan Gupta
9c7b3cabab fix(dlx): print help message when no arguments are provided (#10690)
* fix(dlx): print help message on calling pnpm dlx without arguments

Running `pnpm dlx` with no arguments would crash Node.js with a
TypeError as it attempted to call `.indexOf()` on an undefined variable.
This commit adds a guard clause and displays the help message instead
and exits gracefully.

Fixes #10633

* refactor: dlx

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2026-03-07 23:02:51 +01:00
Ryo Matsukawa
0d3798c216 fix(dlx): respect minimumReleaseAgeExclude (#10572)
close #10338
2026-02-11 02:35:44 +01:00
Maikel van Dort
6065d2e196 feat: dlx timeout & retry (#10512) 2026-02-06 20:02:11 +01:00
Maikel van Dort
69dc1bf336 feat: add support for catalogs with dlx (#10434)
* feat: add support for catalogs with dlx

* fix: feedback

* Update .changeset/curly-dryers-jam.md

Co-authored-by: Brandon Cheng <gluxon@users.noreply.github.com>

* Update .changeset/curly-dryers-jam.md

Close #10249

Co-authored-by: Brandon Cheng <gluxon@users.noreply.github.com>

---------

Co-authored-by: Brandon Cheng <gluxon@users.noreply.github.com>
2026-02-06 20:01:26 +01:00
Ryo Matsukawa
68ad0868b4 feat: add support for npm package trust evidence check via a new trustPolicy setting (#10103)
close #8889

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-11-09 23:32:56 +01:00
Zoltan Kochan
2b6100de12 fix: dlx command with minimumReleaseAge set (#10047)
close #9963
2025-10-08 10:56:07 +02:00
Zoltan Kochan
fddd85bf56 fix: dlx should work with minimumeReleaseAge set (#10038)
close #10037
2025-10-02 16:22:14 +02:00
Zoltan Kochan
facd7656e8 refactor: always use extensions in relative imports (#9878) 2025-08-19 15:25:11 +02:00
btea
9df09dd38e feat: check the engine when excute the create command (#9775)
* feat: check the engine when excute the create command

* chore: test case

* test: update

* fix: update

* fix: update

* refactor: use readProjectManifestOnly to do engine checks on dependencies executed by dlx

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-08-04 13:38:32 +02:00
Khải
6f7ac0f48b feat: customize supportedArchitectures using CLI (#9745)
close #7510
2025-07-16 00:56:00 +02:00
Zoltan Kochan
8a9f3a4835 refactor: rename pref to bare specifier (#9445) 2025-04-20 22:58:08 +02:00
Khải
72cff38486 refactor: pass whole registries to the resolver (#9375) 2025-04-04 01:20:16 +02:00
Zoltan Kochan
c1f09d48fa fix: dlx with --allow-build flag (#9281)
close #9263
2025-03-14 02:27:58 +01:00
Zoltan Kochan
6a59366248 fix: self-update should not read pnpm settings from current package.json (#9196)
close #9188
close #9183
2025-03-01 13:49:56 +01:00
Zoltan Kochan
0b31bf00d8 fix: dlx should ignore settings from package.json (#9179)
close #9178
close #9174
2025-02-26 12:55:17 +01:00
Zoltan Kochan
b5ba5350bf feat(dlx): add an option to dlx for providing a list of deps that are allowed to run install scripts (#9026) 2025-02-03 14:46:28 +01:00
Zoltan Kochan
7d7c51ecd6 feat!: dlx should use exact versions of packages in the cache key (#8811)
close #8722
2024-11-27 09:04:42 +01:00
Zoltan Kochan
39c53852ea fix: some commands should not fail if a different package manager is set in package.json (#8802)
close #7959
2024-11-25 10:13:23 +01:00
Jonathan Hefner
8c3de19fc1 fix(dlx): ENOENT when symlink=false (#8732) (#8733)
Prior to this commit, if `symlink` was set to `false` (such as in an RC
file), `dlx` would throw `ENOENT` because it expected the
`node_modules/the-package` symlink to exist:

  ```console
  $ pnpm config get symlink
  false

  $ rm -rf ~/.cache/pnpm/

  $ pnpm dlx the-package
  Packages: +1
  +
  Progress: resolved 1, reused 1, downloaded 0, added 1, done
   ENOENT  ENOENT: no such file or directory, open '/home/${USER}/.cache/pnpm/dlx/.../
                                                    node_modules/the-package/package.json'
  ```

This commit filters the `symlink` option before installing the package,
allowing the symlink to be created, preventing the error.

Fixes #8732.
2024-11-06 10:43:35 +01:00
Khải
f76ff6389b fix(dlx): race condition (#8712) 2024-10-29 12:15:00 +01:00
Zoltan Kochan
aae0808b35 Merge remote-tracking branch 'origin/main' into v10 2024-10-05 02:24:28 +02:00
Khải
fb77d4e2fa fix: prevent EBUSY caused by parallel dlx (#8604) 2024-10-04 04:06:58 +02:00
Zoltan Kochan
f10256d088 feat!: use SHA256 for creating cache keys for dlx (#8531) 2024-09-16 02:36:06 +02:00
Zoltan Kochan
d58b104fad fix(dlx): failures on concurrent runs of dlx (#8421)
close #8420
2024-08-14 15:59:23 +02:00
Khải
5aa98b6d6f fix(dlx/cache): account for customized registries (#8299)
* fix(dlx/cache): account for customized registries

Different registries potentially return different packages for the same
name, so reusing dlx cache for packages from a different registry would
be incorrect.

* style: eslint

* refactor: dlx

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2024-07-13 17:06:14 +02:00
Khải
0ef168b77d feat: per-package node version (#8277)
close #6720
2024-07-13 14:08:57 +02:00
Khải
98f20a70b6 fix(dlx): use-node-version (#8263) 2024-07-02 00:37:19 +02:00
Khải
a8bc9902b6 refactor(exec): type checking perf (#7911) 2024-04-13 00:18:14 +02:00
Khải
98566d95bc feat(dlx): cache (#7835)
close #5277

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2024-04-09 03:30:58 +02:00
Zoltan Kochan
0564745b1d style: use unknown in try/catch (#7709) 2024-03-06 01:47:04 +01:00
await-ovo
d172d73385 fix(dlx): set saveProd to true for getting pkgName from dependencies (#7540)
close #7424

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2024-01-19 16:27:29 +01:00
Zoltan Kochan
d6592964f0 refactor: rootProjectManifestDir is a required option 2023-10-24 15:14:33 +03:00
Zoltan Kochan
ac5abd3ff7 fix(dlx): don't fail when running dlx from project with patched deps (#7201)
close #7198
close #7183
close #7200
2023-10-15 04:44:55 +03:00
LaicZhang
41b5eb7a5b perf: replace startsWith with === (#7138) 2023-09-27 16:32:05 +03:00
Zoltan Kochan
b454bb07bf fix(dlx): should not print an error stack when dlx fails (#6883)
close #6698
2023-07-30 21:50:48 +03:00
Zoltan Kochan
ee61ca4cb7 style: update eslint (#6236) 2023-03-18 14:57:29 +02:00
await-ovo
b3dfa3ba8a feat(plugin-commands-script-runners): add --shell-mode option for pnpm dlx (#5840)
close #5679
2022-12-26 18:58:25 +02:00
Zoltan Kochan
4ca53b0b50 refactor: group projects in different subdirectories (#5659) 2022-11-20 01:35:22 +02:00