You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
truffleruby-head 24.0.0-dev: Failing to compile dependant stringio gem. #699
BTW it seems a bit weird that ruby/openssl depends on the stringio gem.
Looking at Gemfile.lock it's because the openssl Gemfile depends on rdoc->psych->stringio.
Ideally it'd just use the stdlib stringio and not install the stringio gem.
BTW it seems a bit weird that ruby/openssl depends on the stringio gem. Looking at Gemfile.lock it's because the openssl Gemfile depends on rdoc->psych->stringio. Ideally it'd just use the stdlib stringio and not install the stringio gem.
Thanks for your work!
For the rdoc dependency in the Gemfile, 4312b07 is the reason. In Fedora Linux and the downstream Linux distro Ruby RPM packages, the rdoc is not default gem of the Ruby.
Do you know why openssl needs rdoc at all? I would think running openssl tests doesn't need it.
Yes, because the Rakeflie has a task to create the openssl gem's rdoc document. Perhaps you like to create the new test group in Rakefile, then only install the gem packages in the test group excluding the rdoc in the development group in the CI?
As stringio version 3.1.0 including the ruby/stringio#71 was released, I ran the GitHub Actions on my forked repository for the latest master branch. Right now stringio version 3.0.9 is downloaded in the CI. GitHub has a cache for that? Maybe we need to wait.
I can reproduce it locally, also on CRuby.
It sounds like a rubygems.org cache or bug.
If I add gem "stringio", "3.1.0" in openssl Gemfile I get (on CRuby 3.2):
$ bundle lock
Fetching gem metadata from https://rubygems.org/........
Could not find gem 'stringio (= 3.1.0)' in rubygems repository https://rubygems.org/ or installed locally.
The source contains the following gems matching 'stringio':
* stringio-0.0.1
* stringio-0.0.2
* stringio-0.1.0
* stringio-0.1.3
* stringio-0.1.4
* stringio-3.0.0
* stringio-3.0.1
* stringio-3.0.2.pre1-java
* stringio-3.0.2.pre1
* stringio-3.0.2-java
* stringio-3.0.2
* stringio-3.0.3-java
* stringio-3.0.3
* stringio-3.0.4-java
* stringio-3.0.4
* stringio-3.0.5-java
* stringio-3.0.5
* stringio-3.0.6-java
* stringio-3.0.6
* stringio-3.0.7-java
* stringio-3.0.7
* stringio-3.0.8-java
* stringio-3.0.8
* stringio-3.0.9-java
* stringio-3.0.9
$ gem info -r stringio
*** REMOTE GEMS ***
stringio (3.1.0)
Platform: java, ruby
Authors: Nobu Nakada, Charles Oliver Nutter
Homepage: https://github.com/ruby/stringio
Pseudo IO on String
$ gem install stringio
Building native extensions. This could take a while...
Successfully installed stringio-3.0.9
1 gem installed
Activity
junaruga commentedon Nov 23, 2023
@eregon Do you have any idea about how to fix the issue? Could you send a PR to fix it? Thanks.
eregon commentedon Nov 24, 2023
Thanks for the ping.
It's due to truffleruby/truffleruby#3118. It's expected that
RBASIC(obj)->flagsis no longer supported, because basically it cannot be.I'll take a look at fixing https://github.com/ruby/stringio.
eregon commentedon Nov 24, 2023
BTW it seems a bit weird that ruby/openssl depends on the stringio gem.
Looking at Gemfile.lock it's because the openssl Gemfile depends on
rdoc->psych->stringio.Ideally it'd just use the stdlib stringio and not install the stringio gem.
Do not compile the C extension on TruffleRuby
eregon commentedon Nov 24, 2023
ruby/stringio#71
junaruga commentedon Nov 24, 2023
Thanks for your work!
For the rdoc dependency in the
Gemfile, 4312b07 is the reason. In Fedora Linux and the downstream Linux distro Ruby RPM packages, the rdoc is not default gem of the Ruby.eregon commentedon Nov 24, 2023
Do you know why openssl needs rdoc at all? I would think running openssl tests doesn't need it.
junaruga commentedon Nov 24, 2023
Yes, because the
Rakefliehas a task to create the openssl gem's rdoc document. Perhaps you like to create the newtestgroup inRakefile, then only install the gem packages in thetestgroup excluding therdocin thedevelopmentgroup in the CI?openssl/Rakefile
Lines 37 to 40 in 27237de
junaruga commentedon Nov 25, 2023
I sent the PR #701 to pass CI avoiding this issue.
Do not compile the C extension on TruffleRuby
Do not compile the C extension on TruffleRuby
[ruby/stringio] Do not compile the C extension on TruffleRuby
junaruga commentedon Nov 28, 2023
As stringio version 3.1.0 including the ruby/stringio#71 was released, I ran the GitHub Actions on my forked repository for the latest master branch. Right now stringio version 3.0.9 is downloaded in the CI. GitHub has a cache for that? Maybe we need to wait.
https://github.com/junaruga/ruby-openssl/actions/runs/7013145579/job/19078824139#step:4:15
eregon commentedon Nov 28, 2023
I can reproduce it locally, also on CRuby.
It sounds like a rubygems.org cache or bug.
If I add
gem "stringio", "3.1.0"in openssl Gemfile I get (on CRuby 3.2):eregon commentedon Nov 28, 2023
Also:
eregon commentedon Nov 28, 2023
I filed ruby/rubygems#7202
eregon commentedon Nov 28, 2023
The rubygems.org issue is fixed now.
So I think we can close this as well as #701 and #704.
junaruga commentedon Dec 3, 2023
I confirmed that the trufeeruby-head cases work with the stringio gem version 3.1.0. I would close this ticket. Thank you for your work!
https://github.com/junaruga/ruby-openssl/actions/runs/7073768368/job/19254089972#step:4:17