Auspice v3 - #291
Conversation
victorlin
left a comment
There was a problem hiding this comment.
👍 nothing else in the image should depend on Node.js.
05703f8 to
c0f980e
Compare
In preparation for Auspice v3 which has a minimum nodejs dep of v24
c0f980e to
a93af8c
Compare
victorlin
left a comment
There was a problem hiding this comment.
I briefly thought about making TypeScript a regular dependency, but realized it's still useful to separate as a dev dependency for the typical npm install auspice which doesn't need to run the prepare script.
Auspice 3.0.0 now has a prepare lifecycle script that runs `tsc` (a devDependency) during `npm install`. Our previous `npm install --omit dev` skipped devDependencies but still triggered `prepare`, so the build failed with `tsc: not found`. This new approach allows auspice to install with dev dependencies and then prune them out after linking. This isn't relevant for normal `npm` installs as the prepare step runs during publishing not installing. From-source installs should also not be affected as `npm ci` / `npm install` will install dev dependencies. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
a93af8c to
a38bed6
Compare
Yeah - the approach our Dockerfile took was somewhat unique: a source install explicitly skipping dev dependencies. I don't know why we didn't install from |
|
The unique approach is to support local # make changes to Auspice and rebuild
nextstrain view --image nextstrain/base:branch-auspice-v3 --auspice ~/repos/nextstrain/auspice ~/repos/nextstrain/zika-tutorial |
This PR prepares for Auspice v3, which requires Node.js v24.
I tested the first commit (bumping Node.js to v24) in a local image. This worked well with the latest Auspice release (2.73.0), so can we merge this first commit now ahead of Auspice v3? cc @victorlin
The second commit (to be dropped - hence the draft PR) shows that Auspice v3 works as expected in the Docker container. There's deprecation warnings due to how
auspice viewshould now be invoked, but fixing them requires changes in nextstrain/cli: nextstrain/cli#541