Dne 12. 09. 24 v 14:31 Mamoru TASAKA napsal(a):
Hello, ruby-sig folks:

Recently I wanted to update packages I maintain, so I tried
rebuilding gem-based packages, and now I see some gem-based
packages began to FTBFS newly, and it seems that they are
not related to the packages I was going to update.

Also koschei shows they began to FTBFS recently.


Thx for looking into this 👍



Some pickups:


=====================================================
* rubygem-railties

https://koschei.fedoraproject.org/package/rubygem-railties

+ find test -type f -name '*_test.rb' -print0
+ sort -z
+ xargs -0 -n1 -i sh -c 'echo '\''* Test file: {}'\''; env -u NOTIFY_SOCKET bundle exec ruby -Itest -- '\''{}'\'' || exit 255'
F
Failure:
ApplicationTests::BinSetupTest#test_bin_setup_output [test/application/bin_setup_test.rb:51]:
--- expected
+++ actual
@@ -2,10 +2,16 @@
 The Gemfile's dependencies are satisfied

 == Preparing database ==
+/usr/share/gems/gems/concurrent-ruby-1.1.9/lib/concurrent-ruby/concurrent/concern/deprecation.rb:1: warning: logger was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.5.0.


I reported this specific issue here:

https://github.com/ruby-concurrency/concurrent-ruby/issues/1061

And there is PR fixing this:

https://github.com/ruby-concurrency/concurrent-ruby/pull/1062


+You can add logger to your Gemfile or gemspec to silence this warning.
 Created database 'app_development'
 Created database 'app_test'

Most probably due to ruby 3.3.4 -> 3.3.5 change, expecially:
https://github.com/ruby/ruby/commit/9ae91eb2aa8a82315026e72fb58d89bc23432335

The following change to rubygem-railties.spec seems to workaround this:

diff --git a/rubygem-railties.spec b/rubygem-railties.spec
index 90b5037..9a8adf6 100644
--- a/rubygem-railties.spec
+++ b/rubygem-railties.spec
@@ -160,6 +160,7 @@ echo 'gem "dalli"' >> ../Gemfile
 echo 'gem "importmap-rails"' >> ../Gemfile
 echo 'gem "irb"' >> ../Gemfile
 echo 'gem "listen"' >> ../Gemfile
+echo 'gem "logger"' >> ../Gemfile
 echo 'gem "method_source"' >> ../Gemfile
 echo 'gem "mysql2"' >> ../Gemfile
 echo 'gem "pg"' >> ../Gemfile


But there seems to be more issues like this even in upstream repository:

https://buildkite.com/rails/rails/builds/111269#0191e42d-055e-451c-a9ca-a60856d0751b

So I'd give it a bit of time.





=====================================================
* rubygem-shoulda-matchers

https://koschei.fedoraproject.org/package/rubygem-shoulda-matchers

+ bundle exec rspec spec/unit
An error occurred while loading ./spec/unit/shoulda/matchers/action_controller/callback_matcher_spec.rb.
Failure/Error: require 'unit_spec_helper'
NoMethodError:
  undefined method `join' for nil
# /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/spec/support/tests/command_runner.rb:165:in `ensure in run' # /builddir/build/BUILD/rubygem-shoulda-matchers-5.1.0-build/spec/support/tests/command_runner.rb:165:in `run'
....
....

spec/support/tests/command_runner.rb reads:

    149     def run
    150       pid = spawn(env, *command, options)
    151       t = Thread.new do
    152         loop do
    153           @command_output += reader.read_nonblock(4096)
    154         rescue IO::WaitReadable
    155           IO.select([reader])
    156           retry
    157         rescue EOFError
    158           break
    159         end
    160       end
    161       Process.waitpid(pid)
    162       @status = $?
    163     ensure
    164       writer.close unless writer.closed?
    165       t.join <=====================
    166     end

So Thread.join is now failing. I think this is related to ruby.src 3.3.4 -> 3.3.5 change (looking at koschei changelog), however I have no idea why this is now failing...

(BTW now I saw that Vít has posted another mail about rubygem-shoulda-matchers failure,
 not sure if this is related to bundler issue)


Yes, that is it. There is even shorter reproducer reported here:

https://github.com/rubygems/rubygems/issues/8025




=====================================================
* rubygem-shoulda-context

https://koschei.fedoraproject.org/package/rubygem-shoulda-context
+ BUNDLE_GEMFILE=gemfiles/test.gemfile
+ bundle install --local
Resolving dependencies...


This actually continues with:


~~~

Bundler::HTTPError: Could not reach host index.rubygems.org. Check your network
connection and try again.

~~~


IOW this is the same issue as shoulda-matchers and therefore Bundler.

But looking again into this, I wish I started with shoulda-context, because the `bundle install --local` is explicitly executed from .spec file. Oh well ...


....
....
In test.gemfile:
  mocha was resolved to 2.1.0, which depends on
    ruby2_keywords
error: Bad exit status from /var/tmp/rpm-tmp.vi0IhZ (%check)

Maybe related to rubygem-bundler update (in ruby.src):
v2.5.11 -> 2.5.16 , not knowing for now how to fix this.

=====================================================
* rubygem-webmock

https://koschei.fedoraproject.org/package/rubygem-webmock
  1) WebMock::RequestPattern when matching when matching requests with body when body in pattern is declared as a hash for request with xml body and content type is set to xml standard application/xml behaves like a xml body should not match when body is not xml
     Failure/Error: Crack::XML.parse(body)
     REXML::ParseException:
       Malformed XML: Content at the start of the document (got 'foo bar')
       Line: 1
       Position: 7
       Last 80 unconsumed characters:
     Shared Example Group: "a xml body" called from ./spec/unit/request_pattern_spec.rb:630      # /usr/share/gems/gems/rexml-3.3.6/lib/rexml/parsers/baseparser.rb:511:in `pull_event'      # /usr/share/gems/gems/rexml-3.3.6/lib/rexml/parsers/baseparser.rb:237:in `pull'
     # /usr/share/gems/gems/crack-1.0.0/lib/crack/xml.rb:203:in `parse'
     # /usr/share/gems/gems/crack-1.0.0/lib/crack/xml.rb:235:in `parse'
     # ./lib/webmock/request_pattern.rb:306:in `body_as_hash'
     # ./lib/webmock/request_pattern.rb:283:in `matches?'
     # ./lib/webmock/request_pattern.rb:38:in `matches?'
     # ./spec/unit/request_pattern_spec.rb:68:in `match'
     # ./spec/unit/request_pattern_spec.rb:615:in `block (7 levels) in <top (required)>'      # ./lib/webmock/rspec.rb:37:in `block (2 levels) in <top (required)>'

This also seems related to rubygem-rexml update as written in
rubygem-prawn-svg .
The problem here is that I have no idea currently where to fix error
(that is, fix in crack library / fix in webmock library / or fix in webmock test code??)


This is reported upstream:

https://github.com/bblimke/webmock/pull/1066

I have already applied the fix yesterday:

https://src.fedoraproject.org/rpms/rubygem-webmock/c/64bfe89ac5535e1fce61559567e922419c4c3e6c

but later reduced the patch a bit with a rebase:

https://src.fedoraproject.org/rpms/rubygem-webmock/c/643033701774abf280f179d070396f1b6c740e99


==================================================

I have also looked a bit into rubygem-net-ssh. Reported first here:

https://bugzilla.redhat.com/show_bug.cgi?id=2311882

and later upstream:

https://github.com/net-ssh/net-ssh/issues/952

We could adjust the `grep` in the worst case. But that does not scale.



Vít


Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

-- 
_______________________________________________
ruby-sig mailing list -- ruby-sig@lists.fedoraproject.org
To unsubscribe send an email to ruby-sig-le...@lists.fedoraproject.org
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/ruby-sig@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to