Package: glark
Version: 1.8.0-1
Severity: grave
Justification: Wrong/missing dependency, does only work after changing a 
system's ruby default version
Tags: wheezy jessie sid patch

Dear Maintainer,

while glark 1.8.0-1 seems to work fine on Debian Squeeze, it no more
does so on Wheezy:

$ glark
/usr/share/glark/glark.rb:135: warning: assigned but unused variable - srclines
/usr/share/glark/glark.rb:262: warning: assigned but unused variable - e
/usr/share/glark/glark.rb:351: warning: assigned but unused variable - e
/usr/share/glark/glark.rb:460: warning: assigned but unused variable - fname
/usr/share/glark/glark.rb:640: warning: assigned but unused variable - e
/usr/share/glark/glark.rb:816: warning: assigned but unused variable - str
/usr/share/glark/options.rb:501: warning: assigned but unused variable - e
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': 
/usr/share/glark/options.rb:81: formal argument cannot be an instance variable 
(SyntaxError)
        :set  => Proc.new { |@after| },
                                   ^
/usr/share/glark/options.rb:87: formal argument cannot be an instance variable
        :set  => Proc.new { |@before| },
                                    ^
/usr/share/glark/options.rb:191: formal argument cannot be an instance variable
        :set  => Proc.new { |@directory| }
                                       ^
/usr/share/glark/options.rb:216: formal argument cannot be an instance variable
        :set  => Proc.new { |@split_as_path| }
                                           ^
/usr/share/glark/options.rb:221: formal argument cannot be an instance variable
        :set  => Proc.new { |@directory| }
                                       ^
/usr/share/glark/options.rb:234: formal argument cannot be an instance variable
        :set  => Proc.new { |@label| }
                                   ^
/usr/share/glark/options.rb:239: formal argument cannot be an instance variable
        :set  => Proc.new { |@match_limit| }
                                         ^
/usr/share/glark/options.rb:296: formal argument cannot be an instance variable
        :set  => Proc.new { |@size_limit| }
                                        ^
        from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
        from /usr/share/glark/glark.rb:20:in `<top (required)>'
        from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
        from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
        from /usr/bin/glark:17:in `<main>'
$

(Adding parameters or command-line options make no difference at all.)

The default ruby version since Wheezy is 1.9.3. But even with installing
the ruby1.8 package and calling "ruby1.8 /usr/bin/glark" does not help.

The only thing which helps so far is installing ruby1.8 (but glark's
dependency unconditionally pulls in ruby 1.9.x) and then letting
/usr/bin/ruby point to ruby1.8 by running "update-alternatives --config
ruby".

But that's just a short-term solution since ruby1.8 seems scheduled for
removal: http://release.debian.org/transitions/html/ruby1.8-removal.html

IMHO this bug should also be fixed in Wheezy as glark does not work on
Wheezy without changing the default ruby version and that's completely
up to the local administrator and no package must depend on that
decision.

Intermediately, this fix should also work for Jessie and Sid, but only
until Ruby 1.8 is removed.

The following patch fixes the issue:

diff -u glark-1.8.0/debian/control glark-1.8.0/debian/control
--- glark-1.8.0/debian/control
+++ glark-1.8.0/debian/control
@@ -8,7 +8,7 @@
 
 Package: glark
 Architecture: all 
-Depends: ruby (>= 1.6.7-3) 
+Depends: ruby1.8
 Description: pattern matching tool similar to grep
  glark is a program like 'grep' to search for text in files. It can
  be used from the command line or in scripts.
diff -u glark-1.8.0/debian/rules glark-1.8.0/debian/rules
--- glark-1.8.0/debian/rules
+++ glark-1.8.0/debian/rules
@@ -4,0 +5,5 @@
+
+install/glark::
+       sed -e 's/^exec ruby /exec ruby1.8 /;s/^#!ruby 
/#!ruby1.8/;s:^#!/usr/bin/ruby :#!/usr/bin/ruby1.8 :' -i \
+               $(CURDIR)/debian/glark/usr/bin/glark \
+               $(CURDIR)/debian/glark/usr/share/glark/*.rb


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

Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages glark depends on:
ii  ruby            1:1.9.3
ii  ruby1.8 [ruby]  1.8.7.358-7

glark recommends no packages.

glark suggests no packages.

-- no debconf information


-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to