[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 284112] sysutils/puppetserver7 broken by upgrade to devel/ruby-gems 3.6.2"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 17 Jan 2025 11:02:33 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=284112
Bug ID: 284112
Summary: sysutils/puppetserver7 broken by upgrade to
devel/ruby-gems 3.6.2
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: ports-bugs@FreeBSD.org
Reporter: ray@bellis.me.uk
CC: puppet@FreeBSD.org, ruby@FreeBSD.org
CC: puppet@FreeBSD.org, ruby@FreeBSD.org
With latest 2025q1 packages for puppetserver7, the puppet daemon crashes after
a few seconds, with this (snipped) stack trace appearing in the log as apparent
root cause:
--8<--8<--
Caused by: org.jruby.embed.EvalFailedException: (NoMethodError) undefined
method `bind_call' for #<UnboundMethod: Kernel#warn>
at
org.jruby.embed.internal.EmbedEvalUnitImpl.run(EmbedEvalUnitImpl.java:134)
...
Caused by: org.jruby.exceptions.NoMethodError: (NoMethodError) undefined method
`bind_call' for #<UnboundMethod: Kernel#warn>
at
RUBY.warn(/usr/local/lib/ruby/site_ruby/3.2/rubygems/core_ext/kernel_warn.rb:16)
...
--8<--8<--
I have traced this to a 4 month old commit to ruby-gems, which among other
things replaces a few calls to `.bind(self).call(args...)` with
`.bind_call(self, args...)`:
https://github.com/rubygems/rubygems/commit/fc1f03b06a72b9e74a5e7410cf9a2d11b28090e7
IIUC this crash might arise because the version of JRuby embedded inside the
FreeBSD puppetserver7 package perhaps does not support `.bind_call()` ?
I have been able to get my puppetserver running in the meantime by patching
ruby-gems itself to revert the use of `.bind_call` in lines 16 and 43 of
site_ruby/3.2/rubygems/core_ext/kernel_warn.rb
I'm happy to file additional reports elsewhere as needed, but in the first
instance I think this needs triage from someone with much more experience with
(J)Ruby than I have.
--
You are receiving this mail because:
You are on the CC list for the bug.