-
Notifications
You must be signed in to change notification settings - Fork 789
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: upgrade node to lts/hydrogen #1365
Conversation
34caa90
to
5e3145b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Docker image needs to be updated to use a newer node image:
readonly NODE_IMAGE=$( |
It's a bit of a pain to have to update everything at once. Is it possible to update each component separately? We may actually have situations where we don't have control of the node version (e.g. Electron, Wails), so we may need to have that capability.
src/sentry_webhook/test.action.sh
Outdated
@@ -19,6 +19,8 @@ rm -rf "${TEST_DIR}" | |||
|
|||
# Use commonjs modules, jasmine runs in node. | |||
tsc -p "${ROOT_DIR}/src/sentry_webhook" --outDir "${TEST_DIR}" --module commonjs | |||
|
|||
export NODE_OPTIONS=--openssl-legacy-provider |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this needed? It's a very intrusive change, touching all our entrypoints.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like that forces a very old OpenSSL version, which does not even support TLS1.3
What are the offending dependencies?
Can we make sure we use more recent OpenSSL? (Looks like v3?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe it's webpack and jasmine.
We'd have to upgrade webpack to version 5 and then I guess use jasmine through karma (we don't call jasmine directly in the client)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, it's probably just webpack, cuz karma calls webpack
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
webpack upgrade: #1422
src/shadowbox/package.json
Outdated
@@ -15,18 +15,21 @@ | |||
"outline-shadowsocksconfig": "github:Jigsaw-Code/outline-shadowsocksconfig#v0.2.0", | |||
"prom-client": "^11.1.3", | |||
"randomstring": "^1.1.5", | |||
"restify": "^8.5.1", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This most likely needs a code change. The shadowbox is currently broken.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems to be passing the integration tests in isolation: #1423
What did you anticipate breaking?
Thankfully, Wails doesn't use node in-app. The only way to independently update node versions is to have multiple independent workspaces, each with their own that said, I can probably break this into multiple prs?
|
Note to self that this is where the docker images I need are: https://hub.docker.com/layers/library/node/18.18.0-alpine3.18/images/sha256-a0b787b0d53feacfa6d606fb555e0dbfebab30573277f1fe25148b05b66fa097?context=explore |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to update the README as well:
Line 36 in aa56b08
- [Node](https://nodejs.org/en/download/) LTS (`lts/gallium`, version `16.13.0`) |
this is so we don't have to keep switching versions of node while developing/releasing outline
prereqs: