@zkochan What is themy-project/node_modules/.pnpm/node_modules
dir? Some dependencies are sitting there which erroneously get found.
I found it to be the cause behind this issue (facebook/react-native#29301). Metro bundler creates worker child processes…and when these processes resolve their dependencies they do it relative to their file location in node_modules
…which then means that when searching upwards for their dependencies they hit .pnpm/node_modules/metro
which is the wrong version. How does this version get chosen?
There is also a version of React there…which seems odd because its implying a fallback but shouldnt pnpm be strict about deps?
Maybe a bad public-hoist-pattern
? What does "By default, all packages are hoisted” mean in hoist-pattern
docs…is this to .pnpm/node_modules
or to .pnpm/foo|bar|baz
...
:wave: Hi, I'm trying to get started with pnpm (5.13.5) in a monorepo which contains a create-react-app package...
With the default settings, react-scripts precheck fails because it can find an ancestral package with a different version than the one it wants. I could just ignore the preflight check, but I expected to be able to use either the pnp linker or hoist=false
to ensure that my react app package does not see any ancestral node_modules.
When I use node-linker=pnp
and symlink=false
, react-scripts build
fails with Couldn't find the package to use as resolution source
thrown by pnp-webpack-plugin, which I suppose is because pnp-webpack-plugin is searching upward from its location in the virtual store of my repo root.
When I use hoist=false
, all of my packages' direct dependencies have empty node_modules directories (except for the .bin directory). This is most unexpected, as I thought the description of hoist=false
indicated that the node_modules directories of all packages would contain directories of exactly the packages mentioned in the dependencies property of their package.json.
TIA for clarifying anything I've misunderstood or tips on how to overcome these issues. :pray:
I just started with pnpm
When running pnpm i
I get
pnpm i
WARN Moving @angular-devkit/build-angular that was installed by a different package manager to "node_modules/.ignored
WARN Moving @angular/cli that was installed by a different package manager to "node_modules/.ignored
WARN Moving @angular/compiler-cli that was installed by a different package manager to "node_modules/.ignored
WARN Moving @angular/language-service that was installed by a different package manager to "node_modules/.ignored
WARN Moving @nrwl/cli that was installed by a different package manager to "node_modules/.ignored
Can these folders be deleted?
Why are they created?
pnpm init
to find that the init command actually exists (:
ERROR in multi ./src/styles/import.scss ./node_modules/primeng/resources/primeng.min.css ./node_modules/primeicons/primeicons.css ./node_modules/font-awesome/css/font-awesome.min.css ./node_modules/flag-icon-css/css/flag-icon.min.c
ss ./node_modules/ion-rangeslider/css/ion.rangeSlider.css ./src/styles/ion.rangeSlider.skinFlat.css ./node_modules/angular2-multiselect-dropdown/themes/default.theme.css ./node_modules/@angular/material/prebuilt-themes/indigo-pink.
css ./src/styles/index.scss
Module not found: Error: Can't resolve 'E:\Dev\UVIE\uvie-front\src\styles\ion.rangeSlider.skinFlat.css' in 'E:\Dev\UVIE\uvie-front'
WARN GET https://registry.npmjs.org/arr-flatten/download/arr-flatten-1.1.0.tgz error (ERR_PNPM_FETCH_404). Will retry in 1 minute. 1 retries left.
WARN GET https://registry.npmjs.org/anymatch/download/anymatch-1.3.2.tgz error (ERR_PNPM_FETCH_404). Will retry in 1 minute. 1 retries left.
WARN GET https://registry.npmjs.org/micromatch/download/micromatch-2.3.11.tgz error (ERR_PNPM_FETCH_404). Will retry in 1 minute. 1 retries left.
WARN GET https://registry.npmjs.org/arr-diff/download/arr-diff-2.0.0.tgz error (ERR_PNPM_FETCH_404). Will retry in 1 minute. 1 retries left.
WARN GET https://registry.npmjs.org/chokidar/download/chokidar-1.7.0.tgz?cache=0&sync_timestamp=1610773765549&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchokidar%2Fdownload%2Fchokidar-1.7.0.tgz error (ERR_PNPM_FETCH_404). Will retry in 1 minute. 1 retries left.
ERROR GET https://registry.npmjs.org/bowser/download/bowser-1.9.4.tgz: Not Found - 404
No authorization header was set for the request.
I'm using pnpm workspaces via rush. I have an app and a library. For some reason, there are two locations on disk for @emotion/react
. Any ideas why this occurs?
lib
/package.json
{
"peerDependencies": {
"react": "17.0.2",
"react-dom": "17.0.2",
"@emotion/react": "11.1.5",
"@emotion/styled": "11.3.0"
},
"devDependencies": {
"react": "17.0.2",
"react-dom": "17.0.2",
"@emotion/react": "11.1.5",
"@emotion/styled": "11.3.0",
}
}
app
/package.json
{
"dependencies": {
"react": "17.0.2",
"react-dom": "17.0.2",
"@company/ui-web": "workspace:*",
"@emotion/styled": "11.3.0",
"@emotion/react": "11.1.5"
}
}
TL;DR: How to install transitive dependecies with pnpm?
When my project lists an npm package as dependency, npm install will perform installation of both my direct dependencies and "direct dependencies of my direct dependencies" and it goes recursively.
However, when I try to replace npm with pnpm and give command "pnpm install", it only downloads and installs only direct dependencies. pnpm seems not caring about transitive dependencies.
What point am I missing?
pnpm install prettier -g
, but when I try to run the command, it gives me this:node:internal/modules/cjs/loader:944
throw err;
^
Error: Cannot find module '/Users/hugosum/pnpm-global/5/node_modules/prettier/bin-prettier.js'
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:941:15)
at Function.Module._load (node:internal/modules/cjs/loader:774:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
at node:internal/main/run_main_module:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
which prettier
is /usr/local/bin/prettier
tsc
fails on a PILE of webpack related dependencies from Package A.
Hi All, Im having issues with pnpm link not working
pnpm unlink
cd package dir
pnpm link --global
cd project dir
pnpm link --global @the.package/name
pnpm i
> @the.package/name is not in the npm registry, or you have no permission to fetch it.
Is anyone able to see what im doing wrong?
I'm trying to use pnpm
in my Dockerfile
I have one dependency which is installed from GitHub, Problem with pnpm
is it is not able to access the yarn
package, I think some kind of permission problem.
Error:
The command '/bin/sh -c pnpm install' returned a non-zero code: 1
Here is my Dockerfile
FROM node:alpine
RUN npm install -g pnpm
WORKDIR /app
COPY ["package.json", "pnpm-lock.yaml", "./"]
RUN pnpm install
COPY . .
RUN pnpm build
ENV PORT=8080
EXPOSE 80
CMD [ "node", "./build/index.js" ]