[Bug 1871685] Re: [SRU] vagrant spits out ruby deprecation warnings on every call

Chris Halse Rogers raof at ubuntu.com
Wed May 6 02:09:54 UTC 2020


Hello Hartmut, or anyone else affected,

Accepted vagrant into focal-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/vagrant/2.2.6+dfsg-
2ubuntu2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, what testing has been
performed on the package and change the tag from verification-needed-
focal to verification-done-focal. If it does not fix the bug for you,
please add a comment stating that, and change the tag to verification-
failed-focal. In either case, without details of your testing we will
not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: vagrant (Ubuntu Focal)
       Status: Triaged => Fix Committed

** Tags removed: verification-done-focal
** Tags added: verification-needed verification-needed-focal

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1871685

Title:
  [SRU] vagrant spits out ruby deprecation warnings on every call

Status in vagrant package in Ubuntu:
  Fix Released
Status in vagrant source package in Focal:
  Fix Committed

Bug description:
  [Impact]

  This issue is not critical but I believe it degrades a lot the user
  experience in a brand new LTS release. Every time one calls vagrant
  via CLI, Ruby 2.7 throws a bunch of warnings about some deprecated
  features, which for some (inexperienced?) users might seem a failure
  in a first look.

  This was reported not just here as a bug report but also in Discourse:

  https://discourse.ubuntu.com/t/workarounds-for-applications-which-are-
  broken-in-20-04lts/15474/5

  [Test Case]

  In a Focal LXD container:

  $ apt install vagrant
  $ vagrant
  NOTE: Gem::Specification.default_specifications_dir is deprecated; use Gem.default_specifications_dir instead. It will be removed on or after 2020-02-01.
  Gem::Specification.default_specifications_dir called from /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/bundler.rb:428.
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/errors.rb:103: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/i18n-1.8.2/lib/i18n.rb:195: warning: The called method `t' is defined here
  (eval):3: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/ui.rb:223: warning: The called method `say' is defined here
  Usage: vagrant [options] <command> [<args>]

      -v, --version                    Print the version and exit.
      -h, --help                       Print this help.

  Common commands:
       box             manages boxes: installation, removal, etc.
       cloud           manages everything related to Vagrant Cloud
       destroy         stops and deletes all traces of the vagrant machine
       global-status   outputs status Vagrant environments for this user
       halt            stops the vagrant machine
       help            shows the help for a subcommand
       init            initializes a new Vagrant environment by creating a Vagrantfile
       login           
       package         packages a running vagrant environment into a box
       plugin          manages plugins: install, uninstall, update, etc.
       port            displays information about guest port mappings
       powershell      connects to machine via powershell remoting
       provision       provisions the vagrant machine
       push            deploys code in this environment to a configured destination
       rdp             connects to machine via RDP
       reload          restarts vagrant machine, loads new Vagrantfile configuration
       resume          resume a suspended vagrant machine
       snapshot        manages snapshots: saving, restoring, etc.
       ssh             connects to machine via SSH
       ssh-config      outputs OpenSSH valid configuration to connect to the machine
       status          outputs status of the vagrant machine
       suspend         suspends the machine
       up              starts and provisions the vagrant environment
       upload          upload to machine via communicator
       validate        validates the Vagrantfile
       version         prints current and latest Vagrant version
       winrm           executes commands on a machine via WinRM
       winrm-config    outputs WinRM configuration to connect to the machine

  For help on any individual command run `vagrant COMMAND -h`

  Additional subcommands are available, but are either more advanced
  or not commonly used. To see all subcommands, run the command
  `vagrant list-commands`.
  $ vagrant init
  NOTE: Gem::Specification.default_specifications_dir is deprecated; use Gem.default_specifications_dir instead. It will be removed on or after 2020-02-01.
  Gem::Specification.default_specifications_dir called from /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/bundler.rb:428.
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/errors.rb:103: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/i18n-1.8.2/lib/i18n.rb:195: warning: The called method `t' is defined here
  (eval):3: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/ui.rb:223: warning: The called method `say' is defined here
  A `Vagrantfile` has been placed in this directory. You are now
  ready to `vagrant up` your first virtual environment! Please read
  the comments in the Vagrantfile as well as documentation on
  `vagrantup.com` for more information on using Vagrant.


  [Regression Potential]

  I consider the potential for a regression low, the patches are working
  fine in Debian and they fix simple deprecated features in Ruby 2.7
  (Using the last argument as keyword parameters is deprecated; maybe **
  should be added to the call). The proposed changes were already
  applied in multiple Ruby packages to fix the same issue, even
  upstream. However, those patches were backported to vagrant 2.2.6 from
  Debian which has vagrant version 2.2.7, so this might make room for
  some mistake.



  ==== Original description ====

  When calling vagrant subcommands, or just vagrant itself without any
  argument to produce help output, every time the following block of
  ruby warnings appears:

  $ vagrant
  NOTE: Gem::Specification.default_specifications_dir is deprecated; use Gem.default_specifications_dir instead. It will be removed on or after 2020-02-01.
  Gem::Specification.default_specifications_dir called from /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/bundler.rb:428.
  NOTE: Gem::Specification.default_specifications_dir is deprecated; use Gem.default_specifications_dir instead. It will be removed on or after 2020-02-01.
  Gem::Specification.default_specifications_dir called from /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/bundler.rb:428.
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/errors.rb:103: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/i18n-1.8.2/lib/i18n.rb:195: warning: The called method `t' is defined here
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/plugins/kernel_v2/config/vm.rb:354: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/plugins/kernel_v2/config/vm_provisioner.rb:92: warning: The called method `add_config' is defined here
  (eval):3: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
  /usr/share/rubygems-integration/all/gems/vagrant-2.2.6/lib/vagrant/ui.rb:223: warning: The called method `say' is defined here
  [... actual output starts here ...]

  ProblemType: Bug
  DistroRelease: Ubuntu 20.04
  Package: vagrant 2.2.6+dfsg-2ubuntu1
  ProcVersionSignature: Ubuntu 5.4.0-21.25-generic 5.4.27
  Uname: Linux 5.4.0-21-generic x86_64
  NonfreeKernelModules: nvidia_modeset nvidia
  ApportVersion: 2.20.11-0ubuntu25
  Architecture: amd64
  CurrentDesktop: MATE
  Date: Wed Apr  8 20:20:25 2020
  InstallationDate: Installed on 2020-04-06 (2 days ago)
  InstallationMedia: Ubuntu-Server 20.04 LTS "Focal Fossa" - Beta amd64 (20200402)
  PackageArchitecture: all
  ProcEnviron:
   TERM=xterm-256color
   PATH=(custom, no user)
   LANG=C.UTF-8
   SHELL=/bin/bash
  SourcePackage: vagrant
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/vagrant/+bug/1871685/+subscriptions



More information about the Ubuntu-sponsors mailing list