Skip to content

Switch back to jruby master #10

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

Merged
merged 2 commits into from
Mar 13, 2025
Merged

Switch back to jruby master #10

merged 2 commits into from
Mar 13, 2025

Conversation

eregon
Copy link
Member

@eregon eregon commented Mar 12, 2025

@eregon eregon requested a review from headius March 12, 2025 20:26
@eregon
Copy link
Member Author

eregon commented Mar 12, 2025

cc @headius (not sure how well the request review notification works)

@headius
Copy link
Collaborator

headius commented Mar 13, 2025

Yup, let's do it. I'll push an updated snapshot for tomorrow's build.

@headius headius merged commit 4e039ed into master Mar 13, 2025
@headius headius deleted the switch-back-to-jruby-master branch March 13, 2025 05:52
@headius
Copy link
Collaborator

headius commented Mar 13, 2025

Oh well nevermind that... the snapshot builds have been going out nightly for 10 already.

@headius
Copy link
Collaborator

headius commented Mar 13, 2025

I kicked off a release build to pick up your changes and latest 10 snapshot.

@headius
Copy link
Collaborator

headius commented Mar 13, 2025

There's no way to file a bug on this repository.

The windows verification uses open-uri and apparently hits a bug in JRuby's fiddle-based win32-based resolv.rb logic.

I'm not sure when I'll have a Windows machine handy again for investigating this. We plan to do a separate pass getting Windows stuff working.

Perhaps this check should just be disabled for now, so the other builds can get to users.

ruby -ropen-uri -e 'puts URI.send(:open, %{[https://rubygems.org/})](https://rubygems.org/%7D)) { |f| f.read(1024) }'
  shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'"
  env:
    PATH: C:\Program Files\MongoDB\Server\5.0\bin;C:\aliyun-cli;C:\vcpkg;C:\cf-cli;C:\Program Files (x86)\NSIS\;C:\tools\zstd;C:\Program Files\Mercurial\;C:\hostedtoolcache\windows\stack\[3](https://github.com/ruby/jruby-dev-builder/actions/runs/13828117332/job/38686674321#step:22:3).3.1\x64;C:\cabal\bin;C:\\ghcup\bin;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\Program Files\R\R-[4](https://github.com/ruby/jruby-dev-builder/actions/runs/13828117332/job/38686674321#step:22:4).4.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver\;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go\1.21.13\x64\bin;C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts;C:\hostedtoolcache\windows\Python\3.9.13\x64;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.442-6\x64\bin;C:\Program Files\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\Program Files\Eclipse Foundation\jdk-8.0.302.8-hotspot\bin;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\PowerShell\7\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\WiX Toolset v3.14\bin;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\1[5](https://github.com/ruby/jruby-dev-builder/actions/runs/13828117332/job/38686674321#step:22:5)0\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\160\DTS\Binn\;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.9.9\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\nodejs\;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI\;c:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2\;C:\Program Files\Amazon\SessionManagerPlugin\bin\;C:\Program Files\Amazon\AWSSAMCLI\bin\;C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\bin;C:\Program Files (x86)\Microsoft BizTalk Server\;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\.cargo\bin;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps
    JAVA_HOME: C:\hostedtoolcache\windows\Java_Zulu_jdk\21.0.6-7\x64
    JAVA_HOME_21_X64: C:\hostedtoolcache\windows\Java_Zulu_jdk\21.0.6-7\x64
Fiddle::DLError: cannot find the function: RegQueryInfoKey()
   import_function at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/fiddle/import.rb:299
            extern at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/fiddle/import.rb:172
               API at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/win32/registry.rb:243
              each at org/jruby/RubyArray.java:2076
      <module:API> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/win32/registry.rb:230
  <class:Registry> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/win32/registry.rb:226
    <module:Win32> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/win32/registry.rb:74
            <main> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/win32/registry.rb:4
           require at org/jruby/RubyKernel.java:1168
           require at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:136
            <main> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/win32/resolv.rb:7
           require at org/jruby/RubyKernel.java:1168
           require at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:136
     <class:Hosts> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/resolv.rb:172
    <class:Resolv> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/resolv.rb:169
            <main> at D:/a/jruby-dev-builder/jruby-dev-builder/jruby-head/lib/ruby/stdlib/resolv.rb:34

@eregon
Copy link
Member Author

eregon commented Mar 13, 2025

Right, the failed build is https://github.com/ruby/jruby-dev-builder/actions/runs/13828117332/job/38686674321

Perhaps this check should just be disabled for now, so the other builds can get to users.

But then many workflows using jruby-head on Windows might break.
I think the fact open-uri (used as a smoke test for the network stack working fine) doesn't work is a serious issue, and it's good that the CI caught this is broken.
i.e. my recommendation would be to fix that bug, and that means not publishing new jruby-head builds until then (or reverting this PR to pick 9.4 snapshots).

It's your decision for this repo, but if you remove the check I expect you to handle all jruby-related issues reported to setup-ruby.

Also even if we skip this check here it would break the CI of setup-ruby, and there I don't think it's OK to remove the check (even just for jruby-head), because we would intentionally expose a broken ruby build to users, which I believe nobody wants.

@eregon
Copy link
Member Author

eregon commented Mar 13, 2025

FYI for ruby-dev-builder we run test-all and test-spec and only publish if both pass. That has saved from publishing numerous broken builds.

@headius
Copy link
Collaborator

headius commented Mar 13, 2025

Turns out it was mostly some out of date stdlib. Latest release build was successful.

@eregon
Copy link
Member Author

eregon commented Mar 13, 2025

I tried setup-ruby with jruby-head in https://github.com/eregon/setup-ruby/actions/runs/13840609310/job/38726887794
Unfortunately it fails:

Modifying JAVA_HOME for JRuby
  attempting to run with existing JAVA_HOME
  /home/runner/.rubies/jruby-head/bin/ruby --version
  Unrecognized VM option 'AutoCreateSharedArchive'
  Error: Could not create the Java Virtual Machine.
  Error: A fatal exception has occurred. Program will exit.
  Took   1.71 seconds
Error: The process '/home/runner/.rubies/jruby-head/bin/ruby' failed with exit code 1

i.e. the ruby --version failing seems to cause an Error which quits the entire process.
Probably some exec options to tweak then, or catch the Error.

@headius
Copy link
Collaborator

headius commented Mar 13, 2025

I pushed #722 as an attempt to fix this.

Full disclosure: I do not know JS nor any of these libraries.

headius added a commit that referenced this pull request Mar 13, 2025
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