Dne 23. 12. 20 v 11:06 Pavel Valena napsal(a):
----- Original Message -----
From: "Vít Ondruch" <[email protected]>
To: [email protected]
Sent: Tuesday, December 22, 2020 1:16:12 PM
Subject: Re: Ruby 3.0

Hi everybody,

Here is another snapshot build:

https://koji.fedoraproject.org/koji/taskinfo?taskID=58026964
Hello,

TL;DR: Build failures occuring with Ruby 3.0.
Important: please check the end of my email, even if your package does not fail.


Nice, thx a lot!



I've rebuilt ruby in my COPR, and with it the rubygem packages. I've analyzed 
changes needed / builds failing, as follows.
I've focused on packages, which depend on ruby-devel, and also some additional 
failures detected while doing mass test-rebuilds. Sucessful rebuilds are not 
mentioned.

You can look up the package build in pvalena/rubygems-testing COPR, f.e. for 
eventmachine:
   
https://copr.fedorainfracloud.org/coprs/pvalena/rubygems-testing/package/rubygem-eventmachine/


This error message (in tests):
```
<internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in 
`require': /usr/lib64/gems/ruby/glib2-3.4.3/glib2.so: undefined symbol: rb_cData - 
/usr/lib64/gems/ruby/glib2-3.4.3/glib2.so (LoadError)
         from 
<internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in 
`require'
         from /usr/share/gems/gems/glib2-3.4.3/lib/glib2.rb:117:in `<top 
(required)>'
         from 
<internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in 
`require'
         from 
/usr/share/gems/gems/gobject-introspection-3.4.3/lib/gobject-introspection.rb:17:in 
`<top (required)>'
```
   rubygem-atk
   rubygem-gio2
   rubygem-gobject-introspection
   rubygem-gstreamer


Bootstrapping needed (I didn't have time to resolve the bootstrap for my test 
repo):
   rubygem-cairo
   rubygem-cairo-gobject
   rubygem-gdk3
   rubygem-pango
   rubygem-poppler
   rubygem-gdk_pixbuf2
   rubygem-goocanvas1
   rubygem-goocanvas
   rubygem-gtk2
   rubygem-gtk3
   rubygem-gtksourceview2
   rubygem-gtksourceview3
   rubygem-rsvg2
   rubygem-vte3
   rubygem-vte


Webrick needed (new package in review):
   rubygem-ethon
   rubygem-curb
   rubygem-httpclient
   rubygem-typhoeus
   rubygem-rack
   rubygem-jekyll
   rubygem-excon
   rubygem-rubygems-mirror
   rubygem-mechanize
   rubygem-yard


Test failure (inspection needed):
   rubygem-eventmachine
   rubygem-mysql2

```
NoMethodError: undefined method `encode' for URI:Module                         
                       │
```
   rubygem-sup


```
Error: test_range(Func): FrozenError: can't modify frozen Range: 0..0
```
   rubygem-ox


gem build issues (with extension):
   rubygem-posix-spawn
   rubygem-syck


```
TypeError: no implicit conversion of Hash into Integer
```
   rubygem-raindrops


https://src.fedoraproject.org/rpms/rubygem-ruby-libvirt/pull-request/2
   rubygem-ruby-libvirt


```
LoadError: cannot load such file -- rexml/
```
   rubygem-webrobots
   rubygem-selenium-webdriver
   rubygem-faraday
   rubygem-rest-client
   rubygem-mini_magick
   rubygem-webmock
   rubygem-crack
   rubygem-activesupport
   rubygem-cucumber-core
   rubygem-maruku
   rubygem-actionpack
   rubygem-actionmailbox
   rubygem-kramdown-parser-gfm


It would be helpful to open upstream tickets for these, because upstreams will need to cope with this as well. While ReXml is going to be available with all Ruby installations, it has to be mentioned in .gemspec files otherwise Bundler won't load it. Would you mind to check with upstreams prior we take any action?

And there are certainly upstream which are dealing with the issues already:

https://github.com/rails/rails/commit/f624ed09abba4a0bae64eb699c9fc2e3f9bdc2dc

In such cases we should cherry pick the patches rather then blindly adding the dependencies.




All changes are in private-ruby-3.0 branch.

I think I should be able to prepare one more snapshot tomorrow and that
should be it prior Ruby 3.0 release. This is the last change to upstream
your changes ;)
I'm preparing pull requests with changes on src.fedoraproject.org for some of 
the packages. Some of them are not created yet. Please check it before you 
start fixing the package yourself.

One question for the "sucessful" rebuilds, for all: should I create pull 
requests with the rebuild release bump?


I don't think it would help, because creating PRs now won't test the packages against Ruby 3.0 and at the time of mass rebuild, it would slow down the rebuild.


Vít



Benefits are:
   - Can be subsequently picked up, after merge (or "LGTM", with permissions 
granted to me), and automatically rebuilt by my script.
   - CI runs, either custom or at least simple-koji-ci. Also, you know it was 
pre-tested by me in COPR.
   - Less work for packagers.)

Which packages? (Failed packages included.)
   https://gist.github.com/pvalena/422c77868e929fe38c8bc325a765f8a8

Generated using script:
   https://gist.github.com/pvalena/76560097815fe6544c9bc4905e6bf7a1
Regards,
Pavel


Vít


_______________________________________________
ruby-sig mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]

Attachment: OpenPGP_0x0CE09EE79917B87C.asc
Description: application/pgp-keys

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

_______________________________________________
ruby-sig mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]

Reply via email to