If I remove the release version so as to check the current working copy,
I now get the following error:

Testing GLib
Fetching gem metadata from https://rubygems.org/.......
Resolving dependencies...
Fetching bigdecimal 3.1.3
Installing bigdecimal 3.1.3 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: 
/home/antoine/arrow/adbc/glib/vendor/bundle/ruby/2.5.0/gems/bigdecimal-3.1.3/ext/bigdecimal
/tmp/arrow-adbc-HEAD.92Pa1/mambaforge/envs/conda-source/bin/ruby -r 
./siteconf20230110-85191-2u4xn8.rb extconf.rb
checking RUBY_BIGDECIMAL_VERSION... 3.1.3
checking for __builtin_clz()... yes
checking for __builtin_clzl()... yes
checking for __builtin_clzll()... yes
checking for float.h... yes
checking for math.h... yes
checking for stdbool.h... yes
checking for stdlib.h... yes
checking for x86intrin.h... yes
checking for _lzcnt_u32() in x86intrin.h... no
checking for _lzcnt_u64() in x86intrin.h... no
checking for intrin.h... no
checking for __lzcnt() in intrin.h... no
checking for __lzcnt64() in intrin.h... no
checking for _BitScanReverse() in intrin.h... no
checking for _BitScanReverse64() in intrin.h... no
checking for labs() in stdlib.h... yes
checking for llabs() in stdlib.h... yes
checking for finite() in math.h... yes
checking for isfinite() in math.h... no
checking for ruby/atomic.h... no
checking for ruby/internal/has/builtin.h... no
checking for ruby/internal/static_assert.h... no
checking for rb_rational_num() in ruby.h... no
checking for rb_rational_den() in ruby.h... no
checking for rb_complex_real() in ruby.h... no
checking for rb_complex_imag() in ruby.h... no
checking for rb_opts_exception_p() in ruby.h... no
checking for rb_category_warn() in ruby.h... no
checking for RB_WARN_CATEGORY_DEPRECATED in ruby.h... no
creating Makefile

current directory: 
/home/antoine/arrow/adbc/glib/vendor/bundle/ruby/2.5.0/gems/bigdecimal-3.1.3/ext/bigdecimal
make "DESTDIR=" clean

current directory: 
/home/antoine/arrow/adbc/glib/vendor/bundle/ruby/2.5.0/gems/bigdecimal-3.1.3/ext/bigdecimal
make "DESTDIR="
compiling bigdecimal.c
In file included from bigdecimal.h:14,
                 from bigdecimal.c:11:
missing.h:127:1: error: static declaration of 'rb_rational_num' follows 
non-static declaration
  127 | rb_rational_num(VALUE rat)
      | ^~~~~~~~~~~~~~~
In file included from 
/tmp/arrow-adbc-HEAD.92Pa1/mambaforge/envs/conda-source/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from bigdecimal.h:13,
                 from bigdecimal.c:11:
/tmp/arrow-adbc-HEAD.92Pa1/mambaforge/envs/conda-source/include/ruby-2.5.0/ruby/intern.h:171:7:
 note: previous declaration of 'rb_rational_num' with
type 'VALUE(VALUE)' {aka 'long unsigned int(long unsigned int)'}
  171 | VALUE rb_rational_num(VALUE rat);
      |       ^~~~~~~~~~~~~~~
In file included from bigdecimal.h:14,
                 from bigdecimal.c:11:
missing.h:139:1: error: static declaration of 'rb_rational_den' follows 
non-static declaration
  139 | rb_rational_den(VALUE rat)
      | ^~~~~~~~~~~~~~~
In file included from 
/tmp/arrow-adbc-HEAD.92Pa1/mambaforge/envs/conda-source/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from bigdecimal.h:13,
                 from bigdecimal.c:11:
/tmp/arrow-adbc-HEAD.92Pa1/mambaforge/envs/conda-source/include/ruby-2.5.0/ruby/intern.h:172:7:
 note: previous declaration of 'rb_rational_den' with
type 'VALUE(VALUE)' {aka 'long unsigned int(long unsigned int)'}
  172 | VALUE rb_rational_den(VALUE rat);
      |       ^~~~~~~~~~~~~~~
make: *** [Makefile:244 : bigdecimal.o] Erreur 1

make failed, exit code 2

Gem files will remain installed in 
/home/antoine/arrow/adbc/glib/vendor/bundle/ruby/2.5.0/gems/bigdecimal-3.1.3 
for inspection.
Results logged to 
/home/antoine/arrow/adbc/glib/vendor/bundle/ruby/2.5.0/extensions/x86_64-linux/2.5.0/bigdecimal-3.1.3/gem_make.out

An error occurred while installing bigdecimal (3.1.3), and Bundler cannot 
continue.
Make sure that `gem install bigdecimal -v '3.1.3' --source 
'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  red-arrow was resolved to 10.0.1, which depends on
    bigdecimal
Failed to verify release candidate. See /tmp/arrow-adbc-HEAD.92Pa1 for details.



Le 10/01/2023 à 16:33, Antoine Pitrou a écrit :

It's probably "rb-bundler". However, the release script downloads the
given version, so updating the current working copy doesn't change anything.

Regards

Antoine.


Le 10/01/2023 à 16:23, David Li a écrit :
Hmm, bundler isn't listed in the conda spec indeed. Would you be OK with adding 
it to `ci/conda_env_glib.txt` and trying again? Or else, it will try to install 
bundler for you if the executable is not found, but it will ask for sudo since 
we forgot to add --user-install ([1] fixes this, thanks to Benson).

[1]: https://github.com/apache/arrow-adbc/pull/327

On Tue, Jan 10, 2023, at 09:47, Antoine Pitrou wrote:
Ok, for some reason, piping the output gives a bit more detail:

Bundle complete! 3 Gemfile dependencies, 12 gems now installed.
Bundled gems are installed into `./vendor/bundle`
Traceback (most recent call last):
        10: from
/tmp/arrow-adbc-0.1.0.HemSY/mambaforge/envs/conda-source/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in
`require'
         9: from
/tmp/arrow-adbc-0.1.0.HemSY/mambaforge/envs/conda-source/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in
`require'
         8: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/setup.rb:20:in
`<top (required)>'
         7: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/ui/shell.rb:88:in
`silence'
         6: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/ui/shell.rb:136:in
`with_level'
         5: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/setup.rb:20:in
`block in <top (required)>'
         4: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler.rb:151:in
`setup'
         3: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/runtime.rb:18:in
`setup'
         2: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/definition.rb:238:in
`specs_for'
         1: from
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/definition.rb:190:in
`specs'
/usr/share/rubygems-integration/all/gems/bundler-2.3.5/lib/bundler/definition.rb:481:in
`materialize': Could not find gobject-introspection-4.0.6,
red-arrow-10.0.1, test-unit-3.5.7, glib2-4.0.6, bigdecimal-3.1.3,
extpp-0.1.1, gio2-4.0.6, native-package-installer-1.1.5,
pkg-config-1.5.1, power_assert-2.0.3, fiddle-1.1.1 in any of the
sources (Bundler::GemNotFound)
Failed to verify release candidate. See /tmp/arrow-adbc-0.1.0.HemSY for
details.


So indeed the system bundler is used even when Conda is enabled.

Regards

Antoine.


Le 10/01/2023 à 15:41, Antoine Pitrou a écrit :

Le 10/01/2023 à 09:23, Sutou Kouhei a écrit :
Hi,

What is your distribution? Ubuntu 22.04?

Yes.

It's strange that you use Bundler 2.3.5 with USE_CONDA=1.

Well, it seems bundler isn't installed in the Conda environment, so
perhaps the system bundler is used?

$ pwd
/tmp/arrow-adbc-0.1.0.utShr
$ find -name "bundler"
$

Reply via email to