[DRE-maint] Bug#1026948: schleuder: FTBFS with ruby-sinatra >= 3.0: ERROR: Test "ruby3.1" failed: NoMethodError:

Antonio Terceiro terceiro at debian.org
Mon Dec 26 18:50:37 GMT 2022


Control: tag -1 + patch
Control: retitle -1 FTBFS with ruby-sinatra >= 3.0: gemspec has strict dependency on sinatra ~> 2

On Sat, Dec 24, 2022 at 12:50:51PM -0300, Antonio Terceiro wrote:
> Source: schleuder
> Version: 4.0.3-6
> Severity: important
> Justification: FTBFS
> Tags: sid ftbfs
> User: debian-ruby at lists.debian.org
> Usertags: sinatra-3
> 
> Hi,
> 
> While trying rebuilds with src:ruby-sinatra 3.0.5-1, your package failed to
> build on amd64. Please try to support sinatra 3 as soon as possible, as we
> would like to have that version in bookworm.
> 
> Relevant part (hopefully):
> >       NoMethodError:
> >         undefined method `first_plaintext_part' for nil:NilClass
> > 
> >               expect(mail.first_plaintext_part.decoded).to include("Refreshing all keys from the keyring of list #{list.email} resulted in this")
> >                          ^^^^^^^^^^^^^^^^^^^^^
> >       # ./spec/schleuder/integration/cli_spec.rb:56:in `block (3 levels) in <top (required)>'
> >       # ./spec/spec_helper.rb:64:in `block (3 levels) in <top (required)>'
> >       # ./spec/spec_helper.rb:63:in `block (2 levels) in <top (required)>'
> > 
> > Finished in 3 minutes 13.9 seconds (files took 0.93149 seconds to load)
> > 543 examples, 18 failures
> > 
> > Failed examples:
> > 
> > rspec ./spec/schleuder/unit/list_spec.rb:512 # Schleuder::List#fetch_keys fetches one key by fingerprint
> > rspec ./spec/schleuder/unit/list_spec.rb:526 # Schleuder::List#fetch_keys fetches one key by URL
> > rspec ./spec/schleuder/unit/list_spec.rb:540 # Schleuder::List#fetch_keys fetches one key by email address
> > rspec ./spec/schleuder/unit/list_spec.rb:554 # Schleuder::List#fetch_keys does not import non-self-signatures
> > rspec ./spec/schleuder/unit/gpgme_ctx_spec.rb:212 # GPGME::Ctx#refresh_keys does not import non-self-signatures
> > rspec ./spec/schleuder/unit/gpgme_ctx_spec.rb:200 # GPGME::Ctx#refresh_keys reports errors from refreshing keys
> > rspec ./spec/schleuder/unit/gpgme_ctx_spec.rb:186 # GPGME::Ctx#refresh_keys updates keys from the keyserver
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1444 # user sends keyword x-fetch-key with fingerprint
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1516 # user sends keyword x-fetch-key without arguments
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1480 # user sends keyword x-fetch-key with fingerprint of unchanged key
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1330 # user sends keyword x-fetch-key with URL
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1408 # user sends keyword x-fetch-key with unknown fingerprint
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1294 # user sends keyword x-fetch-key with unknown email-address
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1258 # user sends keyword x-fetch-key with email address
> > rspec ./spec/schleuder/integration/keywords_spec.rb:1368 # user sends keyword x-fetch-key with invalid URL
> > rspec ./spec/schleuder/integration/cli_spec.rb:25 # cli #refresh_keys updates keys from the keyserver for only a specific list
> > rspec ./spec/schleuder/integration/cli_spec.rb:5 # cli #refresh_keys updates keys from the keyserver
> > rspec ./spec/schleuder/integration/cli_spec.rb:48 # cli #refresh_keys reports errors from refreshing keys
> > 
> > Randomized with seed 37252
> > 
> > /usr/bin/ruby3.1 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.10.3/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.10.1/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.10.1/exe/rspec --format documentation failed
> > ERROR: Test "ruby3.1" failed: 

Actually, all of those failures are related to an issue on my local
system. I had something else running on 9999, so the test suite could
not start spec/sks-mock.rb.

The only blocker, really, to taking sinatra 3 is the dependency
declaration in the gemspec, which says sinatra ~> 2. If I replace that
~> with a >=, then everything just works (at least all the tests pass).

I'm making an upload with a patch relaxing this dependency.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0030-gemspec-accept-sinatra-3.patch
Type: text/x-diff
Size: 900 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-ruby-extras-maintainers/attachments/20221226/f2a68063/attachment-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-ruby-extras-maintainers/attachments/20221226/f2a68063/attachment-0001.sig>


More information about the Pkg-ruby-extras-maintainers mailing list