Skip to content

Release 18.19.0.0 - #50

Merged
SamSaffron merged 1 commit into
rubyjs:node-18from
cvx:node-18-19
Mar 22, 2024
Merged

SamSaffron merged 1 commit into
rubyjs:node-18from
cvx:node-18-19

Conversation

@cvx

@cvx cvx commented Feb 12, 2024 •

Copy link
Copy Markdown

Could we get the latest 18.x (18.19.0) released? Some projects are stuck with 18 and could use the most recent fixes to that version.

(the tests pass locally; update: …and on CI)

@SamSaffron
SamSaffron merged commit cc55b3f into rubyjs:node-18 Mar 22, 2024
@lloeki

lloeki commented Mar 22, 2024

Copy link
Copy Markdown
Collaborator

I'll make and push builds to rubygems this weekend.

@lloeki

lloeki commented Mar 23, 2024

Copy link
Copy Markdown
Collaborator

Huh I got this one when building on arm64-darwin :/

In file included from ../deps/v8/src/compiler/backend/frame-elider.cc:5:
In file included from ../deps/v8/src/compiler/backend/frame-elider.h:8:
In file included from ../deps/v8/src/compiler/backend/instruction.h:13:
In file included from ../deps/v8/src/codegen/external-reference.h:9:
In file included from ../deps/v8/src/runtime/runtime.h:11:
../deps/v8/src/base/bit-field.h:43:29: error: integer value 31 is outside the valid range of values [0, 15] for this enumeration type [-Wenum-constexpr-conversion]
  static constexpr T kMax = static_cast<T>(kNumValues - 1);
                            ^
1 error generated.
make[1]: *** [/Users/loic.nageleisen/Source/github.com/rubyjs/libv8-node/src/node-v18.19.0/out/Release/obj.target/v8_compiler/deps/v8/src/compiler/backend/frame-elider.o] Error 1
make[1]: *** Waiting for unfinished jobs....
In file included from ../deps/v8/src/compiler/backend/gap-resolver.cc:5:
In file included from ../deps/v8/src/compiler/backend/gap-resolver.h:8:
In file included from ../deps/v8/src/compiler/backend/instruction.h:13:
In file included from ../deps/v8/src/codegen/external-reference.h:9:
In file included from ../deps/v8/src/runtime/runtime.h:11:
../deps/v8/src/base/bit-field.h:43:29: error: integer value 31 is outside the valid range of values [0, 15] for this enumeration type [-Wenum-constexpr-conversion]
  static constexpr T kMax = static_cast<T>(kNumValues - 1);
                            ^
1 error generated.
make[1]: *** [/Users/loic.nageleisen/Source/github.com/rubyjs/libv8-node/src/node-v18.19.0/out/Release/obj.target/v8_compiler/deps/v8/src/compiler/backend/gap-resolver.o] Error 1
In file included from ../deps/v8/src/compiler/backend/instruction-scheduler.cc:5:
In file included from ../deps/v8/src/compiler/backend/instruction-scheduler.h:10:
In file included from ../deps/v8/src/compiler/backend/instruction.h:13:
In file included from ../deps/v8/src/codegen/external-reference.h:9:
In file included from ../deps/v8/src/runtime/runtime.h:11:
../deps/v8/src/base/bit-field.h:43:29: error: integer value 31 is outside the valid range of values [0, 15] for this enumeration type [-Wenum-constexpr-conversion]
  static constexpr T kMax = static_cast<T>(kNumValues - 1);
                            ^
1 error generated.
make[1]: *** [/Users/loic.nageleisen/Source/github.com/rubyjs/libv8-node/src/node-v18.19.0/out/Release/obj.target/v8_compiler/deps/v8/src/compiler/backend/instruction-scheduler.o] Error 1
In file included from ../deps/v8/src/compiler/backend/code-generator.cc:5:
In file included from ../deps/v8/src/compiler/backend/code-generator.h:11:
In file included from ../deps/v8/src/codegen/macro-assembler.h:8:
In file included from ../deps/v8/src/codegen/turbo-assembler.h:12:
In file included from ../deps/v8/src/codegen/assembler-arch.h:8:
In file included from ../deps/v8/src/codegen/assembler.h:46:
In file included from ../deps/v8/src/codegen/external-reference.h:9:
In file included from ../deps/v8/src/runtime/runtime.h:11:
../deps/v8/src/base/bit-field.h:43:29: error: integer value 31 is outside the valid range of values [0, 15] for this enumeration type [-Wenum-constexpr-conversion]
  static constexpr T kMax = static_cast<T>(kNumValues - 1);
                            ^
1 error generated.
make[1]: *** [/Users/loic.nageleisen/Source/github.com/rubyjs/libv8-node/src/node-v18.19.0/out/Release/obj.target/v8_compiler/deps/v8/src/compiler/backend/code-generator.o] Error 1
In file included from ../deps/v8/src/compiler/backend/instruction-selector.cc:5:
In file included from ../deps/v8/src/compiler/backend/instruction-selector.h:12:
In file included from ../deps/v8/src/compiler/backend/instruction-scheduler.h:10:
In file included from ../deps/v8/src/compiler/backend/instruction.h:13:
In file included from ../deps/v8/src/codegen/external-reference.h:9:
In file included from ../deps/v8/src/runtime/runtime.h:11:
../deps/v8/src/base/bit-field.h:43:29: error: integer value 31 is outside the valid range of values [0, 15] for this enumeration type [-Wenum-constexpr-conversion]
  static constexpr T kMax = static_cast<T>(kNumValues - 1);
                            ^
1 error generated.
make[1]: *** [/Users/loic.nageleisen/Source/github.com/rubyjs/libv8-node/src/node-v18.19.0/out/Release/obj.target/v8_compiler/deps/v8/src/compiler/backend/instruction-selector.o] Error 1

@lloeki

lloeki commented Mar 23, 2024

Copy link
Copy Markdown
Collaborator

clang that failed:

Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-darwin23.4.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Strangely it did not fail on this one:

Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: x86_64-apple-darwin23.4.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Found this: llvm/llvm-project#59036

Worked around in ea0c4d6.

@lloeki

lloeki commented Mar 23, 2024

Copy link
Copy Markdown
Collaborator

Pushed gems:

libv8-node-18.19.0.0-aarch64-linux-musl.gem
libv8-node-18.19.0.0-aarch64-linux.gem
libv8-node-18.19.0.0-arm64-darwin.gem
libv8-node-18.19.0.0-x86_64-darwin.gem
libv8-node-18.19.0.0-x86_64-linux-musl.gem
libv8-node-18.19.0.0-x86_64-linux.gem
libv8-node-18.19.0.0.gem

@SamSaffron

Copy link
Copy Markdown
Collaborator

thanks heaps... any chance we can bump this up to 18.19.1 (looks like that is the latest for hydrogen)

20.11.1 would be nice as well but will probably require more work.

@lloeki

lloeki commented Mar 24, 2024 •

Copy link
Copy Markdown
Collaborator

18.19.1: I'll do that.

20.11.1: yeah there's still the runtime crash, which is much more involved.

Also the above build error I've seen and worked around seems to be an upstream bug (code is ill-formed and undefined behaviour) but saw no mention of it there. I'll report it just in case.

I was thinking of adding automated PRs from crawling Node releases. Benefits would be:

  • notify us
  • run tentative CI
  • if it's green it's an easy merge
  • overall save us some time

Next step would be:

  • re-add aarch64-linux-musl to CI
  • create a GH workflow that tags, takes CI artifacts, creates a GH release with artifacts as attachments, and pushes to rubygems.

Ideally we'd just have to vet the updates and releases would happen ~automatically.

@SamSaffron

Copy link
Copy Markdown
Collaborator

sounds great, just pushed mini racer 0.9.0 for this and will follow with 0.9.1 post update

@lloeki

lloeki commented Apr 3, 2024

Copy link
Copy Markdown
Collaborator

Added 18.19.1 in 5839e9a

Building...

@lloeki

lloeki commented Apr 3, 2024

Copy link
Copy Markdown
Collaborator

Pushed gems:

libv8-node-18.19.1.0-aarch64-linux-musl.gem
libv8-node-18.19.1.0-aarch64-linux.gem
libv8-node-18.19.1.0-arm64-darwin.gem
libv8-node-18.19.1.0-x86_64-darwin.gem
libv8-node-18.19.1.0-x86_64-linux-musl.gem
libv8-node-18.19.1.0-x86_64-linux.gem
libv8-node-18.19.1.0.gem

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.

3 participants