[DRE-maint] Bug#1091664: vagrant: FTBFS with ruby3.3: "requires Ruby version >= 3.0, < 3.3."

Antonio Terceiro terceiro at debian.org
Sun Dec 29 11:49:03 GMT 2024


Source: vagrant
Version: 2.3.7+git20230731.5fc64cde+dfsg-2
Severity: important
Justification: FTBFS
Tags: trixie sid ftbfs
User: debian-ruby at lists.debian.org
Usertags: ruby3.3

Hi,

We are about to enable building against ruby3.3 on unstable. During a test
rebuild, vagrant was found to fail to build in that situation. This bug
is being reported as important, but will be upgraded to serious soon.

To reproduce this locally, you need to install ruby-all-dev from experimental
on an unstable system or build chroot.

Relevant part (hopefully):
> make[2]: Entering directory '/<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl'
> rm -f 
> rm -fr vagrant_ssl.so false *.o  *.bak mkmf.log .*.time
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl'
> current directory: /<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl
> /usr/bin/ruby3.1 -I/usr/lib/ruby/vendor_ruby extconf.rb
> current directory: /<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl
> make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. DESTDIR\= sitearchdir\=./.gem.20241212-293981-1fhuhx sitelibdir\=./.gem.20241212-293981-1fhuhx clean
> current directory: /<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl
> make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. DESTDIR\= sitearchdir\=./.gem.20241212-293981-1fhuhx sitelibdir\=./.gem.20241212-293981-1fhuhx
> current directory: /<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl
> make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. DESTDIR\= sitearchdir\=./.gem.20241212-293981-1fhuhx sitelibdir\=./.gem.20241212-293981-1fhuhx install
> current directory: /<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/gems/vagrant-2.3.8.dev/ext/vagrant/vagrant_ssl
> make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>\=. DESTDIR\= sitearchdir\=./.gem.20241212-293981-1fhuhx sitelibdir\=./.gem.20241212-293981-1fhuhx clean
> /<<PKGBUILDDIR>>/debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/bin/vagrant
> Successfully installed vagrant-2.3.8.dev
> 1 gem installed
> mkdir -p debian/vagrant/usr/bin
> mv debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0/bin/vagrant debian/vagrant/usr/bin
> cd debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0
> rm -rf bin
> rm -rf build_info
> rm -rf cache
> rm -rf doc
> find extensions -name mkmf.log -delete
> find extensions -name gem_make.out -delete
> rmdir plugins
> cd gems/vagrant-2.3.8.dev
> rm -rf ext/vagrant/vagrant_ssl
> rm -f lib/vagrant/vagrant_ssl.so
> chmod 644 lib/vagrant/action/builder.rb lib/vagrant/action/builtin/box_add.rb lib/vagrant/action/builtin/box_check_outdated.rb lib/vagrant/action/builtin/box_remove.rb lib/vagrant/action/builtin/box_update.rb lib/vagrant/action/builtin/call.rb lib/vagrant/action/builtin/cleanup_disks.rb lib/vagrant/action/builtin/cloud_init_setup.rb lib/vagrant/action/builtin/cloud_init_wait.rb lib/vagrant/action/builtin/config_validate.rb lib/vagrant/action/builtin/confirm.rb lib/vagrant/action/builtin/delayed.rb lib/vagrant/action/builtin/destroy_confirm.rb lib/vagrant/action/builtin/disk.rb lib/vagrant/action/builtin/env_set.rb lib/vagrant/action/builtin/graceful_halt.rb lib/vagrant/action/builtin/handle_box.rb lib/vagrant/action/builtin/handle_box_url.rb lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb lib/vagrant/action/builtin/has_provisioner.rb lib/vagrant/action/builtin/is_env_set.rb lib/vagrant/action/builtin/is_state.rb lib/vagrant/action/builtin/lock.rb lib/vagrant/action/builtin/message.rb lib/vagrant/action/builtin/mixin_provisioners.rb lib/vagrant/action/builtin/mixin_synced_folders.rb lib/vagrant/action/builtin/prepare_clone.rb lib/vagrant/action/builtin/provision.rb lib/vagrant/action/builtin/provisioner_cleanup.rb lib/vagrant/action/builtin/remote/mixin_synced_folders.rb lib/vagrant/action/builtin/remote/ssh_run.rb lib/vagrant/action/builtin/set_hostname.rb lib/vagrant/action/builtin/ssh_exec.rb lib/vagrant/action/builtin/ssh_run.rb lib/vagrant/action/builtin/synced_folder_cleanup.rb lib/vagrant/action/builtin/synced_folders.rb lib/vagrant/action/builtin/trigger.rb lib/vagrant/action/builtin/wait_for_communicator.rb lib/vagrant/action/general/package.rb lib/vagrant/action/general/package_setup_files.rb lib/vagrant/action/general/package_setup_folders.rb lib/vagrant/action/hook.rb lib/vagrant/action/primary_runner.rb lib/vagrant/action/runner.rb lib/vagrant/action/warden.rb lib/vagrant/action.rb lib/vagrant/alias.rb lib/vagrant/batch_action.rb lib/vagrant/box/remote.rb lib/vagrant/box.rb lib/vagrant/box_collection/remote.rb lib/vagrant/box_collection.rb lib/vagrant/box_metadata/remote.rb lib/vagrant/box_metadata.rb lib/vagrant/bundler.rb lib/vagrant/capability_host.rb lib/vagrant/cli.rb lib/vagrant/config/loader.rb lib/vagrant/config/v1/dummy_config.rb lib/vagrant/config/v1/loader.rb lib/vagrant/config/v1/root.rb lib/vagrant/config/v1.rb lib/vagrant/config/v2/dummy_config.rb lib/vagrant/config/v2/loader.rb lib/vagrant/config/v2/root.rb lib/vagrant/config/v2/util.rb lib/vagrant/config/v2.rb lib/vagrant/config/version_base.rb lib/vagrant/config.rb lib/vagrant/environment/remote.rb lib/vagrant/environment.rb lib/vagrant/errors.rb lib/vagrant/guest/remote.rb lib/vagrant/guest.rb lib/vagrant/host/remote.rb lib/vagrant/host.rb lib/vagrant/machine/remote.rb lib/vagrant/machine.rb lib/vagrant/machine_index/remote.rb lib/vagrant/machine_index.rb lib/vagrant/machine_state.rb lib/vagrant/patches/fake_ftp.rb lib/vagrant/patches/log4r.rb lib/vagrant/plugin/manager.rb lib/vagrant/plugin/remote/command.rb lib/vagrant/plugin/remote/communicator.rb lib/vagrant/plugin/remote/guest.rb lib/vagrant/plugin/remote/host.rb lib/vagrant/plugin/remote/manager.rb lib/vagrant/plugin/remote/plugin.rb lib/vagrant/plugin/remote/provider.rb lib/vagrant/plugin/remote/provisioner.rb lib/vagrant/plugin/remote/push.rb lib/vagrant/plugin/remote/synced_folder.rb lib/vagrant/plugin/remote.rb lib/vagrant/plugin/state_file.rb lib/vagrant/plugin/v1/command.rb lib/vagrant/plugin/v1/communicator.rb lib/vagrant/plugin/v1/config.rb lib/vagrant/plugin/v1/errors.rb lib/vagrant/plugin/v1/guest.rb lib/vagrant/plugin/v1/host.rb lib/vagrant/plugin/v1/manager.rb lib/vagrant/plugin/v1/plugin.rb lib/vagrant/plugin/v1/provider.rb lib/vagrant/plugin/v1/provisioner.rb lib/vagrant/plugin/v1.rb lib/vagrant/plugin/v2/command.rb lib/vagrant/plugin/v2/communicator.rb lib/vagrant/plugin/v2/components.rb lib/vagrant/plugin/v2/config.rb lib/vagrant/plugin/v2/errors.rb lib/vagrant/plugin/v2/guest.rb lib/vagrant/plugin/v2/host.rb lib/vagrant/plugin/v2/manager.rb lib/vagrant/plugin/v2/plugin.rb lib/vagrant/plugin/v2/provider.rb lib/vagrant/plugin/v2/provisioner.rb lib/vagrant/plugin/v2/push.rb lib/vagrant/plugin/v2/synced_folder.rb lib/vagrant/plugin/v2/trigger.rb lib/vagrant/plugin/v2.rb lib/vagrant/plugin.rb lib/vagrant/protobufs/proto/plugin/grpc_broker_pb.rb lib/vagrant/protobufs/proto/plugin/grpc_broker_services_pb.rb lib/vagrant/protobufs/proto/protostructure_pb.rb lib/vagrant/protobufs/proto/ruby_vagrant/ruby-server_pb.rb lib/vagrant/protobufs/proto/ruby_vagrant/ruby-server_services_pb.rb lib/vagrant/protobufs/proto/vagrant_plugin_sdk/plugin_pb.rb lib/vagrant/protobufs/proto/vagrant_plugin_sdk/plugin_services_pb.rb lib/vagrant/protobufs/proto/vagrant_server/server_pb.rb lib/vagrant/protobufs/proto/vagrant_server/server_services_pb.rb lib/vagrant/registry.rb lib/vagrant/shared_helpers.rb lib/vagrant/ui/remote.rb lib/vagrant/ui.rb lib/vagrant/util/ansi_escape_code_remover.rb lib/vagrant/util/busy.rb lib/vagrant/util/caps.rb lib/vagrant/util/checkpoint_client.rb lib/vagrant/util/command_deprecation.rb lib/vagrant/util/counter.rb lib/vagrant/util/credential_scrubber.rb lib/vagrant/util/curl_helper.rb lib/vagrant/util/deep_merge.rb lib/vagrant/util/directory.rb lib/vagrant/util/downloader.rb lib/vagrant/util/env.rb lib/vagrant/util/experimental.rb lib/vagrant/util/file_checksum.rb lib/vagrant/util/file_mode.rb lib/vagrant/util/file_mutex.rb lib/vagrant/util/guest_hosts.rb lib/vagrant/util/guest_inspection.rb lib/vagrant/util/hash_with_indifferent_access.rb lib/vagrant/util/install_cli_autocomplete.rb lib/vagrant/util/io.rb lib/vagrant/util/ipv4_interfaces.rb lib/vagrant/util/is_port_open.rb lib/vagrant/util/keypair.rb lib/vagrant/util/line_buffer.rb lib/vagrant/util/line_ending_helpers.rb lib/vagrant/util/logging_formatter.rb lib/vagrant/util/map_command_options.rb lib/vagrant/util/mime.rb lib/vagrant/util/network_ip.rb lib/vagrant/util/numeric.rb lib/vagrant/util/platform.rb lib/vagrant/util/powershell.rb lib/vagrant/util/presence.rb lib/vagrant/util/remote/safe_puts.rb lib/vagrant/util/remote/ssh.rb lib/vagrant/util/retryable.rb lib/vagrant/util/safe_chdir.rb lib/vagrant/util/safe_env.rb lib/vagrant/util/safe_exec.rb lib/vagrant/util/safe_puts.rb lib/vagrant/util/scoped_hash_override.rb lib/vagrant/util/shell_quote.rb lib/vagrant/util/silence_warnings.rb lib/vagrant/util/ssh.rb lib/vagrant/util/stacked_proc_runner.rb lib/vagrant/util/string_block_editor.rb lib/vagrant/util/subprocess.rb lib/vagrant/util/tempfile.rb lib/vagrant/util/template_renderer.rb lib/vagrant/util/uploader.rb lib/vagrant/util/which.rb lib/vagrant/util/windows_path.rb lib/vagrant/util.rb lib/vagrant/vagrantfile/remote.rb lib/vagrant/vagrantfile.rb lib/vagrant/version.rb lib/vagrant.rb
> find lib/ -type d -empty -delete
> find ext/ -type d -empty -delete
> cd -
> cd -
> 
> ┌──────────────────────────────────────────────────────────────────────────────┐
> │ vagrant: Installing files and building extensions for ruby3.3                │
> └──────────────────────────────────────────────────────────────────────────────┘
> 
> /usr/bin/ruby3.3 -S gem build --config-file /dev/null --verbose /tmp/d20241212-293976-8o0z06/gemspec
> Failed to load /dev/null because it doesn't contain valid YAML hash
> WARNING:  open-ended dependency on bcrypt_pbkdf (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on childprocess (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on ed25519 (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on erubi (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on googleapis-common-protos-types (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on grpc (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on i18n (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on listen (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on log4r (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on mime-types (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on net-ftp (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on net-ssh (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on net-sftp (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on net-scp (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on rexml (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on rubyzip (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on vagrant_cloud (>= 0) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  open-ended dependency on ipaddr (>= 1.2.4) is not recommended
>   if ipaddr is semantically versioned, use:
>     add_runtime_dependency 'ipaddr', '~> 1.2', '>= 1.2.4'
> WARNING:  open-ended dependency on rake-compiler (>= 0, development) is not recommended
>   use a bounded requirement, such as '~> x.y'
> WARNING:  See https://guides.rubygems.org/specification-reference/ for help
>   Successfully built RubyGem
>   Name: vagrant
>   Version: 2.3.8.dev
>   File: vagrant-2.3.8.dev.gem
> /usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.3.0 /tmp/d20241212-293976-8o0z06/vagrant-2.3.8.dev.gem
> Failed to load /dev/null because it doesn't contain valid YAML hash
> ERROR:  Error installing /tmp/d20241212-293976-8o0z06/vagrant-2.3.8.dev.gem:
> 	vagrant-2.3.8.dev requires Ruby version >= 3.0, < 3.3. The current ruby version is 3.3.5.
> /usr/lib/ruby/vendor_ruby/gem2deb.rb:52:in `run': /usr/bin/ruby3.3 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/vagrant/usr/lib/x86_64-linux-gnu/rubygems-integration/3.3.0 /tmp/d20241212-293976-8o0z06/vagrant-2.3.8.dev.gem (Gem2Deb::CommandFailed)
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/gem_installer.rb:215:in `block in run_gem'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb.rb:87:in `maybe_crossbuild'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/gem_installer.rb:214:in `run_gem'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/gem_installer.rb:123:in `block in install_files_and_build_extensions'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/gem_installer.rb:69:in `each'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/gem_installer.rb:69:in `install_files_and_build_extensions'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/installer.rb:28:in `build'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/dh_ruby.rb:54:in `block in install'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/dh_ruby.rb:52:in `each'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/dh_ruby.rb:52:in `install'
> 	from /usr/lib/ruby/vendor_ruby/gem2deb/dh_ruby.rb:163:in `install'
> 	from /usr/bin/dh_ruby:89:in `<main>'
> dh_auto_install: error: dh_ruby --install /<<BUILDDIR>>/vagrant-2.3.7\+git20230731.5fc64cde\+dfsg/debian/vagrant returned exit code 1
> make[1]: *** [debian/rules:16: override_dh_auto_install] Error 25


The full build log is available at
https://people.debian.org/~terceiro/ruby3.3/vagrant/vagrant_2.3.7+git20230731.5fc64cde+dfsg-2+rebuild1734044282_amd64.build
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-ruby-extras-maintainers/attachments/20241229/5848eff3/attachment-0001.sig>


More information about the Pkg-ruby-extras-maintainers mailing list