| 1 Aug 2023 |
Lily Foster | In reply to @robert:funklause.de Not really, I don't actually know Node.js :D Hey, neither did I when I joined 🙃 | 16:06:28 |
Lily Foster | (I'm only partly joking in that too...) | 16:06:47 |
Lily Foster | (I'd used it but I was not familiar with a lot of npm behavior or cache or lock formats or anything) | 16:07:28 |
Lily Foster | (Apologies if offering was a bit too forward, I just want more people to collab with 😅) | 16:08:06 |
dotlambda | In reply to @lily:lily.flowers (Apologies if offering was a bit too forward, I just want more people to collab with 😅) No worries at all. Very understandable | 16:20:02 |
raitobezarius | In reply to @lily:lily.flowers (Apologies if offering was a bit too forward, I just want more people to collab with 😅) (I definitely think this is the right approach ; apologies I'm not sending PRs yet… It's very much on my todolist) | 16:22:37 |
Lily Foster | In reply to @raitobezarius:matrix.org (I definitely think this is the right approach ; apologies I'm not sending PRs yet… It's very much on my todolist) (It's okay, I always appreciate however much or little you're able to do ❤️) | 16:28:08 |
| 2 Aug 2023 |
dotlambda | In reply to @lily:lily.flowers Yeah I figured if they were using lerna you'd run into issues with intra-repo dependencies. Which lerna does custom handling for :/ I was thinking about trying to merge all lockfiles into one. Does someone know a tool for merging multiple JSON files into one with recursive merging and a specified file taking precedence in case of conflicts? | 06:00:15 |
Lily Foster | In reply to @robert:funklause.de I was thinking about trying to merge all lockfiles into one. Does someone know a tool for merging multiple JSON files into one with recursive merging and a specified file taking precedence in case of conflicts? jq | 10:26:46 |
dotlambda | In reply to @lily:lily.flowers
jq Nice, didn't know jq could do this | 14:49:15 |
Lily Foster | Jq can do anything, if you can manage to wrap your head around it's sometimes-painful expression language... | 15:17:21 |
Lily Foster | * Jq can do anything, if you can manage to wrap your head around its sometimes-painful expression language... | 15:17:28 |
hexa | as good a time as any to mention https://github.com/wader/jqjq | 15:22:06 |
Lily Foster | In reply to @hexa:lossy.network as good a time as any to mention https://github.com/wader/jqjq Thanks, I hate it | 15:24:26 |
hexa | me too | 15:24:32 |
dotlambda | Lily Foster: Care to ake a look at why I get ENOTCACHED building pyright from https://github.com/dotlambda/nixpkgs/tree/pyright-buildNpmPackage ? | 15:30:52 |
Lily Foster | In reply to @robert:funklause.de Lily Foster: Care to ake a look at why I get ENOTCACHED building pyright from https://github.com/dotlambda/nixpkgs/tree/pyright-buildNpmPackage ? I'm at $dayjob at the moment, but if you add npmFlags = [ "--verbose" ] and share the log I'll take a look from my phone | 15:32:40 |
dotlambda | Installing dependencies
npm verb cli /nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/bin/node /nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/bin/npm
npm info using npm@9.5.1
npm info using node@v18.16.1
npm verb logfile could not create logs-dir: Error: EACCES: permission denied, mkdir '/nix/store/kmy4mn43nbf0l1drr80yjhrqvadp1n3f-pyright-1.1.320-npm-deps/_logs'
npm verb title npm ci
npm verb argv "ci" "--ignore-scripts" "--loglevel" "verbose"
npm verb logfile logs-max:10 dir:/nix/store/kmy4mn43nbf0l1drr80yjhrqvadp1n3f-pyright-1.1.320-npm-deps/_logs/2023-08-02T15_33_17_652Z-
npm verb logfile could not be created: Error: ENOENT: no such file or directory, open '/nix/store/kmy4mn43nbf0l1drr80yjhrqvadp1n3f-pyright-1.1.320-npm-deps/_logs/2023-08-02T15_33_17_652Z-debug-0.log'
npm verb logfile no logfile created
npm verb stack Error: request to https://registry.npmjs.org/@types%2fyargs failed: cache mode is 'only-if-cached' but no cached response is available.
npm verb stack at cacheFetch (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/make-fetch-happen/lib/cache/index.js:12:13)
npm verb stack at async fetch (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/make-fetch-happen/lib/fetch.js:98:7)
npm verb stack at async RegistryFetcher.packument (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/pacote/lib/registry.js:87:19)
npm verb stack at async RegistryFetcher.manifest (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/pacote/lib/registry.js:118:23)
npm verb stack at async [nodeFromEdge] (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:1059:19)
npm verb stack at async [buildDepStep] (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:929:11)
npm verb stack at async Arborist.buildIdealTree (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:207:7)
npm verb stack at async CI.exec (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/lib/commands/ci.js:48:5)
npm verb stack at async module.exports (/nix/store/y85811fai07h16xqwh99wnql0cwgb17c-nodejs-18.16.1/lib/node_modules/npm/lib/cli.js:134:5)
npm verb cwd /build/source
npm verb Linux 6.3.13
npm verb node v18.16.1
npm verb npm v9.5.1
npm ERR! code ENOTCACHED
npm ERR! request to https://registry.npmjs.org/@types%2fyargs failed: cache mode is 'only-if-cached' but no cached response is available.
npm verb exit 1
npm verb code 1
npm ERR! Log files were not written due to an error writing to the directory: /nix/store/kmy4mn43nbf0l1drr80yjhrqvadp1n3f-pyright-1.1.320-npm-deps/_logs
npm ERR! You can rerun the command with `--loglevel=verbose` to see the logs in your terminal
ERROR: npm failed to install dependencies
| 15:34:33 |
dotlambda | But there is a file mentioning @types/yargs:
$ cat /nix/store/kmy4mn43nbf0l1drr80yjhrqvadp1n3f-pyright-1.1.320-npm-deps/_cacache/index-v5/00/c3/753c99c26c1872db70a80f1970989d3ed4a77816369c2975135cb643ce90
1:d3538f2b021a174a7de18bb1294c6ac1496fcb97 {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz","integrity":"sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==","time":0,"size":14450,"metadata":{"url":"https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz","options":{"compress":true}}}
| 15:35:49 |
dotlambda | * But there is a file mentioning @types/yargs:
$ cat /nix/store/kmy4mn43nbf0l1drr80yjhrqvadp1n3f-pyright-1.1.320-npm-deps/_cacache/index-v5/00/c3/753c99c26c1872db70a80f1970989d3ed4a77816369c2975135cb643ce90
d3538f2b021a174a7de18bb1294c6ac1496fcb97 {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz","integrity":"sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==","time":0,"size":14450,"metadata":{"url":"https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz","options":{"compress":true}}}
| 15:36:46 |
Lily Foster | Can you share the lockfile and package.json too? | 15:37:34 |
Lily Foster | (Preferably links) | 15:37:40 |
dotlambda | The root package.json is https://github.com/microsoft/pyright/blob/1.1.320/package.json The merged lockfile is https://gist.github.com/dotlambda/cd8256d51625b2bae030f0a9624307f9 | 15:45:34 |
Lily Foster | In reply to @robert:funklause.de The root package.json is https://github.com/microsoft/pyright/blob/1.1.320/package.json The merged lockfile is https://gist.github.com/dotlambda/cd8256d51625b2bae030f0a9624307f9 Pyright needs ^16.0.5 but it's not locked in the lockfile. Only the 17.0 version is | 15:49:18 |
Lily Foster | For @types/yargs | 15:49:37 |
Lily Foster | So npm is trying to find and fetch a 16.x version probably | 15:49:49 |
dotlambda | Makes sense. Thanks! | 15:51:16 |
dotlambda | Indeed, packages/pyright/package-lock.json specifies version 17.0.24 while the root lockfile specifies 16.0.5. | 15:53:36 |
| adamcstephens left the room. | 23:40:05 |
| 3 Aug 2023 |
| @gdesforges:matrix.org joined the room. | 13:47:37 |