Skip to content
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

Upgrade to Node JS v20 #3156

Closed
8 tasks done
Nana-EC opened this issue Oct 25, 2024 · 2 comments · Fixed by #3245
Closed
8 tasks done

Upgrade to Node JS v20 #3156

Nana-EC opened this issue Oct 25, 2024 · 2 comments · Fixed by #3245
Assignees
Labels
internal For changes that affect the project's internal workings but not its outward-facing functionality.
Milestone

Comments

@Nana-EC
Copy link
Collaborator

Nana-EC commented Oct 25, 2024

Problem

The relay currently uses node version 18 which has an end of life at the end of April 2025

Solution

Upgrade to the latest LTS version which is currently v20

  • Update reference of v18 to latest LTS v20
  • Run complete acceptance test suite on HTTP server
  • Run complete acceptance test suite on WS server
  • Confirm CI jobs run
  • Run DApp Tests
  • Run Smart contract repo test suites
  • Run perf tests and measure an deltas
  • Deploy an alpha and confirm in previewnet

Alternatives

Make a consideration for v22.5.1 as it was recently identified as a pinned version of nodejs for the ethers library. Something to check

@Nana-EC Nana-EC added the enhancement New feature or request label Oct 25, 2024
@Nana-EC Nana-EC moved this from Backlog to Sprint Backlog in Smart Contract Sprint Board Oct 25, 2024
@Nana-EC Nana-EC moved this from Sprint Backlog to Backlog in Smart Contract Sprint Board Oct 25, 2024
@Nana-EC Nana-EC moved this from Backlog to Sprint Backlog in Smart Contract Sprint Board Nov 1, 2024
@ebadiere ebadiere self-assigned this Nov 11, 2024
@ebadiere ebadiere added this to the 0.60.0 milestone Nov 11, 2024
@quiet-node quiet-node added internal For changes that affect the project's internal workings but not its outward-facing functionality. and removed enhancement New feature or request labels Nov 11, 2024
@github-project-automation github-project-automation bot moved this from Tasks In Progress to Done in Smart Contract Sprint Board Nov 11, 2024
@ebadiere ebadiere reopened this Nov 11, 2024
@github-project-automation github-project-automation bot moved this from Done to Sprint Backlog in Smart Contract Sprint Board Nov 11, 2024
@ebadiere
Copy link
Contributor

Node version 22 contains some changes of interest. Most notable are:

Node.js 22 includes a new experimental feature for the execution of scripts from the package.json with the cli flag node --run . It also supports node --run test which executes the test command inside package.json scripts.

Contributed by Yagiz Nizipli #52190

  • WebSocket
    The browser-compatible implementation of WebSocket, previously behind the flag --experimental-websocket, will be enabled by default. This provides a WebSocket client to Node.js without external dependencies.

Contributed by the Undici team and Aras Abbasi in #51594

This release adds to the node:fsmodule the functions glob and globSync for pattern matching. Developers can now utilize these functions for matching file paths based on specified patterns.

Contributed by Moshe Atlow #51912

Node Release v22.5.1 contains a fix to a regression introduced in 22.5.0

A separate issue should be opened to upgrade to this version in the relay.

@quiet-node quiet-node modified the milestones: 0.60.0, 0.61.0 Nov 21, 2024
@Nana-EC
Copy link
Collaborator Author

Nana-EC commented Nov 25, 2024

Verified by @ebadiere with note to consider upgrade to v22.5.0 in future

@Nana-EC Nana-EC closed this as completed Nov 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
internal For changes that affect the project's internal workings but not its outward-facing functionality.
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants