[DRE-maint] Bug#941564: /usr/lib/ruby/vendor_ruby/dbd/odbc/statement.rb:18: warning: constant ::Fixnum is deprecated
Martin Dorey
HNAS-US-noreply at hitachivantara.com
Wed Oct 2 01:55:51 BST 2019
Package: ruby-dbd-odbc
Version: 0.2.5+gem2deb-1
Severity: normal
Dear Maintainer,
On Buster, which has Ruby >= 2.4, I see a warning from the first call of execute() on an ODBC statement handle.
I can reproduce this simply with:
martind at neutrino:~$ ruby -e 'require "dbd/ODBC"; handle = nil; statement = nil; param = 42; value = nil; attribs = nil; sth = DBI::DBD::ODBC::Statement.new(handle, statement); sth.bind_param(param, value, attribs)'
/usr/lib/ruby/vendor_ruby/dbd/odbc/statement.rb:18: warning: constant ::Fixnum is deprecated
martind at neutrino:~$
I don't know of any way to suppress the warning.
Well, I can get rid of it with a monkey patch:
require "dbd/ODBC"
class DBI::DBD::ODBC::Statement
def bind_param(param, value, attribs)
raise DBI::InterfaceError, "only ? parameters supported" unless param.is_a? Integer
@params[param-1] = value
end
end
That changes Fixnum to Integer.
My testing suggests that such a change works even on versions as old as Debian Lenny's Ruby 1.8.7.
I realize that this pacakge isn't maintained in Debian after Jessie.
I understand that's because it's not maintained upstream.
The replacement code, which I understand to be RDBI, doesn't install on Buster.
I've tried to raise that upstream as https://github.com/RDBI/rdbi-driver-odbc/pull/8.
Upstream there seems moribund too.
I'd like to make the monkey patch available to anyone else in the same situation.
Sorry for the noise.
-- System Information:
Debian Release: 10.1
APT prefers stable-updates
APT policy: (990, 'stable-updates'), (990, 'stable'), (500, 'oldoldstable'), (500, 'oldstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.19.0-5-amd64 (SMP w/8 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages ruby-dbd-odbc depends on:
ii ruby 1:2.5.1
ii ruby-dbi 0.4.5-3
ii ruby-odbc 0.99998-1
ii ruby1.8 [ruby-interpreter] 1.8.7.358-7.1+deb7u6
ii ruby1.9.1 [ruby-interpreter] 1.9.3.194-8.1+deb7u8
ii ruby2.1 [ruby-interpreter] 2.1.5-2+deb8u7
ruby-dbd-odbc recommends no packages.
ruby-dbd-odbc suggests no packages.
-- debconf-show failed
More information about the Pkg-ruby-extras-maintainers
mailing list