[DRE-maint] Bug#1040257: schleuder-cli does not work with Ruby >= 3.0.0

s3lph debianbugs at s3lph.me
Mon Jul 3 22:50:03 BST 2023


Package: schleuder-cli
Version: 0.1.0-4
Severity: grave
Justification: renders package unusable

Dear Maintainer,

schleuder-cli 0.1.0 was designed for Ruby 2.7 in mind; Ruby 3.0
comes with a breaking change that breaks schleuder-cli.  As bookworm
comes with Ruby 3.1, schleuder-cli crashes when used due to this
breaking change:

  root at localhost:/# schleuder-cli lists new test at schleuder.example.org admin at example.org /tmp/admin at example.org.asc
  ::1 - - [03/Jul/2023:20:56:58 +0000] "POST /lists.json HTTP/1.1" 200 1102 1.5971
  List test at schleuder.example.org successfully created! Don't forget to hook it into your MTA.
  /usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb:22:in `block in url': undefined method `escape' for URI:Module (NoMethodError)

          "#{URI.escape(k.to_s)}=#{URI.escape(v.to_s)}"
                ^^^^^^^
	from /usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb:21:in `each'
	from /usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb:21:in `map'
	from /usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb:21:in `url'
	from /usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb:191:in `import_key'
	from /usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb:170:in `import_key_and_find_fingerprint'
	from /usr/lib/ruby/vendor_ruby/schleuder-cli/lists.rb:30:in `new'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor/invocation.rb:116:in `invoke'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor.rb:243:in `block in subcommand'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
	from /usr/share/rubygems-integration/all/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
	from /usr/bin/schleuder-cli:7:in `<main>'


Upstream has fixed the issue on the main branch, but has not yet
created a new release containing the fix.  The fix is quite small,
only two lines diff:

https://0xacab.org/schleuder/schleuder-cli/-/commit/68754cf94cc2d9b2a400ff19d2e48a7ffa2ec1f2

With this patch applied manually, schleuder-cli works as expected:

  root at localhost:/# schleuder-cli lists new test at schleuder.example.org admin at example.org /tmp/admin at example.org.asc
  ::1 - - [03/Jul/2023:21:33:04 +0000] "POST /lists.json HTTP/1.1" 200 1108 4.6595
  List test at schleuder.example.org successfully created! Don't forget to hook it into your MTA.
  ::1 - - [03/Jul/2023:21:33:04 +0000] "POST /keys.json?list_id=test%40schleuder.example.org HTTP/1.1" 200 327 0.0120
  Key 48F817C6EF39DE78AEEF5D0AD6A09061E4E11475: imported
  ::1 - - [03/Jul/2023:21:33:04 +0000] "POST /subscriptions.json?list_id=test%40schleuder.example.org HTTP/1.1" 201 - 0.1797


-- System Information:
Debian Release: 12.0
  APT prefers stable-security
  APT policy: (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-9-amd64 (SMP w/2 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages schleuder-cli depends on:
ii  ruby       1:3.1
ii  ruby-thor  1.2.1-2

schleuder-cli recommends no packages.

schleuder-cli suggests no packages.

-- no debconf information



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