engines.node is now ^22.13.0 || >=23.5.0, and the Getting Started sentence says the same: Node 22.13 or later, 23.5 or later on Node 23. That is the narrowest range among the packages in yarn.lock; the @inquirer packages refuse 23.0 to 23.4.
"Using the library" now runs yarn link in the clone and yarn link quak in the program, instead of yarn add file:../quak. A linked quak uses the clone's node_modules, installed from yarn.lock. file: resolved quak's dependency ranges afresh, so an upstream release could raise the Node minimum with no change in quak. yarn add link:../quak does the same, so it is no fix either.
Trip-ups:
yarn link quak writes nothing to the program's package.json; the README says to repeat it in each new checkout. Reversing to a file: install means one README paragraph, plus a minimum that follows upstream releases.
Raising the minimum to 22.22.2 instead was rejected: @inquirer/* can raise it again at any release.
No test added: the change is the README and engines.node.
Model: opus-5-5
Closes https://git.eeqj.de/sneak/quak/issues/239
- `engines.node` is now `^22.13.0 || >=23.5.0`, and the Getting Started sentence says the same: Node 22.13 or later, 23.5 or later on Node 23. That is the narrowest range among the packages in `yarn.lock`; the `@inquirer` packages refuse 23.0 to 23.4.
- "Using the library" now runs `yarn link` in the clone and `yarn link quak` in the program, instead of `yarn add file:../quak`. A linked quak uses the clone's `node_modules`, installed from `yarn.lock`. `file:` resolved quak's dependency ranges afresh, so an upstream release could raise the Node minimum with no change in quak. `yarn add link:../quak` does the same, so it is no fix either.
Trip-ups:
- `yarn link quak` writes nothing to the program's `package.json`; the README says to repeat it in each new checkout. Reversing to a `file:` install means one README paragraph, plus a minimum that follows upstream releases.
- Raising the minimum to 22.22.2 instead was rejected: `@inquirer/*` can raise it again at any release.
- No test added: the change is the README and `engines.node`.
Model: opus-5-5
README.md, "Using the library" (lines 76 to 88): the section does not say everything yarn link does. Run in the clone, yarn link also puts a quak command in yarn's global bin directory, linked to the clone's dist/bin/quak.js. That is /usr/local/bin/quak for root in the official Node image, and ~/.yarn/bin/quak for other users. A reader who wants only the library gets a second quak command beside the one make install copies to ~/bin. Acceptable: one short sentence after the code block saying that yarn link also installs the quak command in yarn's global bin directory, and that yarn unlink in the clone removes both.
Noted, no action in this PR: on Node 24 and later, yarn 1.22.22 itself prints a url.parse() deprecation warning (DEP0169) during yarn install.
Model: opus-5-5
Verdict: FAIL
Head: b95f986a36f30cf979a09c96d346a2b9e0d3c23d
1. `README.md`, "Using the library" (lines 76 to 88): the section does not say everything `yarn link` does. Run in the clone, `yarn link` also puts a `quak` command in yarn's global bin directory, linked to the clone's `dist/bin/quak.js`. That is `/usr/local/bin/quak` for root in the official Node image, and `~/.yarn/bin/quak` for other users. A reader who wants only the library gets a second `quak` command beside the one `make install` copies to `~/bin`. Acceptable: one short sentence after the code block saying that `yarn link` also installs the `quak` command in yarn's global bin directory, and that `yarn unlink` in the clone removes both.
Noted, no action in this PR: on Node 24 and later, `yarn` 1.22.22 itself prints a `url.parse()` deprecation warning (DEP0169) during `yarn install`.
Model: opus-5-5
`engines.node` and the README now state the minimum that quak's
`yarn.lock` needs: Node 22.13, or 23.5 on Node 23. `@inquirer/prompts`
and its packages refuse 23.0 to 23.4.
"Using the library" now links the clone with `yarn link` instead of
`yarn add file:../quak`. A linked quak runs on the dependencies the clone
installed from `yarn.lock`; `file:` resolved them afresh, so a new
upstream release could raise the Node minimum without any change here.
Model: opus-5-5
The change meets the definition of done in #239, and I found no defects.
Model: opus-5-5
Verdict: PASS
Head: 63ba259ced3db61ccc074ecbd06a824412811164
The change meets the definition of done in https://git.eeqj.de/sneak/quak/issues/239, and I found no defects.
Model: opus-5-5
clawbot
merged commit 37cdbc6b9a into next2026-11-11 23:29:01 +01:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #239
engines.nodeis now^22.13.0 || >=23.5.0, and the Getting Started sentence says the same: Node 22.13 or later, 23.5 or later on Node 23. That is the narrowest range among the packages inyarn.lock; the@inquirerpackages refuse 23.0 to 23.4.yarn linkin the clone andyarn link quakin the program, instead ofyarn add file:../quak. A linked quak uses the clone'snode_modules, installed fromyarn.lock.file:resolved quak's dependency ranges afresh, so an upstream release could raise the Node minimum with no change in quak.yarn add link:../quakdoes the same, so it is no fix either.Trip-ups:
yarn link quakwrites nothing to the program'spackage.json; the README says to repeat it in each new checkout. Reversing to afile:install means one README paragraph, plus a minimum that follows upstream releases.@inquirer/*can raise it again at any release.engines.node.Model: opus-5-5
Verdict: FAIL
Head:
b95f986a36README.md, "Using the library" (lines 76 to 88): the section does not say everythingyarn linkdoes. Run in the clone,yarn linkalso puts aquakcommand in yarn's global bin directory, linked to the clone'sdist/bin/quak.js. That is/usr/local/bin/quakfor root in the official Node image, and~/.yarn/bin/quakfor other users. A reader who wants only the library gets a secondquakcommand beside the onemake installcopies to~/bin. Acceptable: one short sentence after the code block saying thatyarn linkalso installs thequakcommand in yarn's global bin directory, and thatyarn unlinkin the clone removes both.Noted, no action in this PR: on Node 24 and later,
yarn1.22.22 itself prints aurl.parse()deprecation warning (DEP0169) duringyarn install.Model: opus-5-5
b95f986a36toe6c0350287e6c0350287to63ba259ced63ba259: one sentence after the code block in "Using the library".Model: opus-5-5
Verdict: PASS
Head:
63ba259cedThe change meets the definition of done in #239, and I found no defects.
Model: opus-5-5