Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-10 Thread Pirate Praveen



2021, ഓഗസ്റ്റ് 10 5:44:35 PM IST, Pirate Praveen ൽ 
എഴുതി
>
>
>2021, ഓഗസ്റ്റ് 10 12:44:39 PM IST, "László Böszörményi (GCS)" 
>ൽ എഴുതി
>>Control: tags -1 +pending
>>
>>Hi Pirate,
>>
>>On Mon, Aug 9, 2021 at 8:51 PM Pirate Praveen  
>>wrote:
>>> Can you upload this change? Or if you are okay with this change, I can
>>> upload it as well. Once this is fixed, I can switch back to the
>>> packaged version (currently using gem install google-protobuf as work
>>> around).
>> Sure, I can. Will do it soon.

Thanks.

>>> I had seen this bug earlier
>>> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=989774 but I thought
>>> it was something similar/related to
>>> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=966653 (between, this
>>> bug also seems to be fixed with newer protobuf/grpc versions in
>>> experimental).
>> You know, my question is, how and why it was and still working for
>>3.12.4 but nor for 3.17.3?

One change that I can think of is adding noruby build profile between these two 
versions.

>>Regards,
>>Laszlo/GCS

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.



Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-10 Thread GCS
Control: tags -1 +pending

Hi Pirate,

On Mon, Aug 9, 2021 at 8:51 PM Pirate Praveen  wrote:
> Can you upload this change? Or if you are okay with this change, I can
> upload it as well. Once this is fixed, I can switch back to the
> packaged version (currently using gem install google-protobuf as work
> around).
 Sure, I can. Will do it soon.

> I had seen this bug earlier
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=989774 but I thought
> it was something similar/related to
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=966653 (between, this
> bug also seems to be fixed with newer protobuf/grpc versions in
> experimental).
 You know, my question is, how and why it was and still working for
3.12.4 but nor for 3.17.3?

Regards,
Laszlo/GCS



Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-09 Thread Pirate Praveen

Control: tags -1 patch

On Mon, 09 Aug 2021 01:35:43 +0530 Pirate Praveen 
 wrote:

> Adding,
> ruby/lib/google usr/lib/ruby/vendor_ruby
> to debian/ruby-google-protobuf.install makes require 
'google/protobuf'

> to pass. This can be used as a workaround until we figure out why
> gem2deb is not installing these files even though gemspec includes 
them

> in files.

Hi Laszlo,

Can you upload this change? Or if you are okay with this change, I can 
upload it as well. Once this is fixed, I can switch back to the 
packaged version (currently using gem install google-protobuf as work 
around).


I had seen this bug earlier 
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=989774 but I thought 
it was something similar/related to 
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=966653 (between, this 
bug also seems to be fixed with newer protobuf/grpc versions in 
experimental).


diff -Nru protobuf-3.17.3/debian/changelog 
protobuf-3.17.3/debian/changelog

--- protobuf-3.17.3/debian/changelog 2021-06-23 21:06:44.0 +0530
+++ protobuf-3.17.3/debian/changelog 2021-08-09 21:32:33.0 +0530
@@ -1,3 +1,10 @@
+protobuf (3.17.3-1.1) experimental; urgency=medium
+
+ * Non-maintainer upload.
+ * Include ruby/lib in ruby-google-protobuf binary (Closes: #992008)
+
+ -- Pirate Praveen  Mon, 09 Aug 2021 21:32:33 +0530
+
protobuf (3.17.3-1) experimental; urgency=medium

  * New upstream release.
diff -Nru protobuf-3.17.3/debian/ruby-google-protobuf.install 
protobuf-3.17.3/debian/ruby-google-protobuf.install
--- protobuf-3.17.3/debian/ruby-google-protobuf.install 1970-01-01 
05:30:00.0 +0530
+++ protobuf-3.17.3/debian/ruby-google-protobuf.install 2021-08-09 
21:30:39.0 +0530

@@ -0,0 +1 @@
+ruby/lib/google usr/lib/ruby/vendor_ruby



Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-09 Thread Pirate Praveen




On Mon, Aug 9, 2021 at 1:50 pm, Antonio Terceiro  
wrote:

On Mon, Aug 09, 2021 at 01:35:43AM +0530, Pirate Praveen wrote:
 On Mon, Aug 9, 2021 at 12:12 am, Pirate Praveen 


 wrote:
 > [copying debian-ruby list]
 >
 > On Sun, 08 Aug 2021 22:08:39 +0530 Akshay S Dinesh
 >  wrote:
 > > Package: ruby-google-protobuf
 > > Version: 3.17.3-1
 > > Severity: grave
 > > Justification: renders package unusable
 > >
 > > Dear Maintainer,
 > >
 > > I was trying to install gitlab to reproduce #966653
 > >
 > > Installed ruby-google-protobuf from experimental
 > >
 > > The pg_query library was erroring at startup,
 > > with failure to require 'google/protobuf'
 > >
 > > I tried to isolate it to debian by `gem install google-protobuf`
 > >
 > > It worked correctly with that.
 > >
 > > On comparing stable version
 > > 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.12.4-1_amd64.deb

 > > with the experimental version
 > > 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.17.3-1_amd64.deb

 > >
 > > I could see that the latter lacks the
 > /2.7.0/gems/lib/google/protobuf directory altogether
 > >
 > > The upstream gem at
 > https://rubygems.org/downloads/google-protobuf-3.17.3.gem includes
 > > this lib directory with lots of ruby files
 > >
 > > I'm suspecting that this folder is critical to the functioning 
of this

 > package
 > >
 >
 > I think this is a problem with gem2deb not including the pure 
ruby files
 > along with the extention. I think we have seen such issues 
before, but

 > don't remember how we fixed it.
 >
 > Another possibility is that the rules is calling ruby build only 
in

 > override_dh_auto_build-arch.

 Adding,
 ruby/lib/google usr/lib/ruby/vendor_ruby
 to debian/ruby-google-protobuf.install makes require 
'google/protobuf' to
 pass. This can be used as a workaround until we figure out why 
gem2deb is
 not installing these files even though gemspec includes them in 
files.


protobuf is nothing like an usual Ruby package.

The top of debian/rules has this:

export DH_RUBY = --gem-install
export DH_RUBY_USE_DH_AUTO_INSTALL_DESTDIR = 
debian/ruby-google-protobuf

export GEM2DEB_TEST_RUNNER = --check-dependencies


But this is completely misleading, since the part that seems to 
actually

do the Ruby build does not use gem2deb at all, and looks like this:

ifeq (,$(filter noruby,$(DEB_BUILD_PROFILES)))
# Ruby build
cd ruby && rake package genproto
endif

So this has definitively nothing to do with gem2deb.


Well, I tried with

dh_auto_build -O--buildsystem=ruby -O--package=ruby-google-protobuf

after this rake command without any change

Also it has the following lines below it and

dh_auto_install -O--buildsystem=ruby -O--package=ruby-google-protobuf 
--destdir=$(CURDIR)/debian/ruby-google-protobuf


and you can see in the build logs at 
https://buildd.debian.org/status/fetch.php?pkg=protobuf=amd64=3.17.3-1=1624466935=0 
this looks to me pretty much gem2deb's doing.


dh_auto_install -O--buildsystem=ruby -O--package=ruby-google-protobuf 
--destdir=/<>/debian/ruby-google-protobuf

dh_ruby --install /<>/debian/ruby-google-protobuf
  dh_ruby --install
/usr/bin/ruby2.7 -S gem build --config-file /dev/null --verbose 
/tmp/d20210623-865026-7jt4fj/gemspec

Failed to load /dev/null because it doesn't contain valid YAML hash
 Successfully built RubyGem
 Name: google-protobuf
 Version: 3.17.3
 File: google-protobuf-3.17.3.gem
/usr/bin/ruby2.7 -S gem install --config-file /dev/null --verbose 
--local --verbose --no-document --ignore-dependencies --install-dir 
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0 
/tmp/d20210623-865026-7jt4fj/google-protobuf-3.17.3.gem

Failed to load /dev/null because it doesn't contain valid YAML hash
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/convert.c
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/convert.h
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/defs.c
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/defs.h
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/extconf.rb
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/map.c
/<>/debian/ruby-google-protobuf/usr/lib/x86_64-linux-gnu/rubygems-integration/2.7.0/gems/google-protobuf-3.17.3/ruby/ext/google/protobuf_c/map.h

Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-08 Thread Pirate Praveen




On Mon, Aug 9, 2021 at 12:12 am, Pirate Praveen 
 wrote:

[copying debian-ruby list]

On Sun, 08 Aug 2021 22:08:39 +0530 Akshay S Dinesh 
 wrote:

> Package: ruby-google-protobuf
> Version: 3.17.3-1
> Severity: grave
> Justification: renders package unusable
>
> Dear Maintainer,
>
> I was trying to install gitlab to reproduce #966653
>
> Installed ruby-google-protobuf from experimental
>
> The pg_query library was erroring at startup,
> with failure to require 'google/protobuf'
>
> I tried to isolate it to debian by `gem install google-protobuf`
>
> It worked correctly with that.
>
> On comparing stable version
> 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.12.4-1_amd64.deb

> with the experimental version
> 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.17.3-1_amd64.deb

>
> I could see that the latter lacks the 
/2.7.0/gems/lib/google/protobuf directory altogether

>
> The upstream gem at 
https://rubygems.org/downloads/google-protobuf-3.17.3.gem includes

> this lib directory with lots of ruby files
>
> I'm suspecting that this folder is critical to the functioning of 
this package

>

I think this is a problem with gem2deb not including the pure ruby 
files along with the extention. I think we have seen such issues 
before, but don't remember how we fixed it.


Another possibility is that the rules is calling ruby build only in 
override_dh_auto_build-arch.


Adding,
ruby/lib/google usr/lib/ruby/vendor_ruby
to debian/ruby-google-protobuf.install makes require 'google/protobuf' 
to pass. This can be used as a workaround until we figure out why 
gem2deb is not installing these files even though gemspec includes them 
in files.




Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-08 Thread Pirate Praveen

[copying debian-ruby list]

On Sun, 08 Aug 2021 22:08:39 +0530 Akshay S Dinesh 
 wrote:

> Package: ruby-google-protobuf
> Version: 3.17.3-1
> Severity: grave
> Justification: renders package unusable
>
> Dear Maintainer,
>
> I was trying to install gitlab to reproduce #966653
>
> Installed ruby-google-protobuf from experimental
>
> The pg_query library was erroring at startup,
> with failure to require 'google/protobuf'
>
> I tried to isolate it to debian by `gem install google-protobuf`
>
> It worked correctly with that.
>
> On comparing stable version
> 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.12.4-1_amd64.deb

> with the experimental version
> 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.17.3-1_amd64.deb

>
> I could see that the latter lacks the 
/2.7.0/gems/lib/google/protobuf directory altogether

>
> The upstream gem at 
https://rubygems.org/downloads/google-protobuf-3.17.3.gem includes

> this lib directory with lots of ruby files
>
> I'm suspecting that this folder is critical to the functioning of 
this package

>

I think this is a problem with gem2deb not including the pure ruby 
files along with the extention. I think we have seen such issues 
before, but don't remember how we fixed it.


Another possibility is that the rules is calling ruby build only in 
override_dh_auto_build-arch.




Bug#992008: ruby-google-protobuf: Missing lib/google/protobuf directory and fails require

2021-08-08 Thread Akshay S Dinesh
Package: ruby-google-protobuf
Version: 3.17.3-1
Severity: grave
Justification: renders package unusable

Dear Maintainer,

I was trying to install gitlab to reproduce #966653

Installed ruby-google-protobuf from experimental

The pg_query library was erroring at startup,
with failure to require 'google/protobuf'

I tried to isolate it to debian by `gem install google-protobuf`

It worked correctly with that.

On comparing stable version
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.12.4-1_amd64.deb
with the experimental version 
http://ftp.debian.org/debian/pool/main/p/protobuf/ruby-google-protobuf_3.17.3-1_amd64.deb

I could see that the latter lacks the /2.7.0/gems/lib/google/protobuf 
directory altogether

The upstream gem at https://rubygems.org/downloads/google-protobuf-3.17.3.gem 
includes 
this lib directory with lots of ruby files

I'm suspecting that this folder is critical to the functioning of this package


-- System Information:
Debian Release: 11.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-8-amd64 (SMP w/1 CPU thread)
Locale: LANG=en_IN, LC_CTYPE=en_IN (charmap=UTF-8), LANGUAGE=en_IN:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages ruby-google-protobuf depends on:
ii  libc6   2.31-13
ii  libruby2.7  2.7.4-1
ii  ruby1:2.7+2

ruby-google-protobuf recommends no packages.

ruby-google-protobuf suggests no packages.

-- no debconf information