Skip to content

Auspice v3 - #291

Merged
jameshadfield merged 2 commits into
masterfrom
auspice-v3
Sep 3, 2026
Merged

Auspice v3#291
jameshadfield merged 2 commits into
masterfrom
auspice-v3

Conversation

@jameshadfield

@jameshadfield jameshadfield commented Jul 27, 2026

Copy link
Copy Markdown
Member

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 view should now be invoked, but fixing them requires changes in nextstrain/cli: nextstrain/cli#541

@jameshadfield
jameshadfield requested a review from victorlin July 27, 2026 01:15

@victorlin victorlin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 nothing else in the image should depend on Node.js.

@jameshadfield
jameshadfield marked this pull request as ready for review September 2, 2026 23:59
In preparation for Auspice v3 which has a minimum nodejs dep of v24
@jameshadfield jameshadfield changed the title Node.js v24 Auspice v3 Sep 3, 2026

@victorlin victorlin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread Dockerfile
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>
@jameshadfield

Copy link
Copy Markdown
Member Author

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.

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 npm but I figure there are good reasons. I've added a sentence to explain this in the commit msg.

@jameshadfield
jameshadfield merged commit f4607f2 into master Sep 3, 2026
74 checks passed
@jameshadfield
jameshadfield deleted the auspice-v3 branch September 3, 2026 21:22
@victorlin

Copy link
Copy Markdown
Member

The unique approach is to support local --auspice. Confirmed that it still works with v3.

# make changes to Auspice and rebuild

nextstrain view --image nextstrain/base:branch-auspice-v3 --auspice ~/repos/nextstrain/auspice ~/repos/nextstrain/zika-tutorial

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants