Ah, I always end up using ARROW_TMPDIR and editing the extracted files there if 
I need to work around an environment issue.

I spun up a fresh Ubuntu 22.04 container and ran the GLib step there - it 
passes for me. (I didn't install bundler myself, but the script installed 
bundler 2.3.7 for me.)

It appears conda-forge's bundler package is rather out of date so I suppose we 
don't want to add the dependency there.

On Tue, Jan 10, 2023, at 10:39, Antoine Pitrou wrote:
> 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