Gem conflicts between chef client 14.15.6 and audit cookbook 9.2.1

We have some tests that make use of the audit cookbook (version 9.2.1) to do some validations on Windows Server 2016 DataCenter machines. Previously we were using chef client 14.14.29 and the tests run fine. However with 14.15.6 we are seeing errors about conflicting Gems

[2020-04-22T21:42:53+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2020-04-22T21:42:53+00:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: execute[inspec_s300_basevm_validation_tests] (s300_validation::s300_validate_basevm line 12) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of inspec exec --no-distinct-exit profile-validation --input-file profile-validation/attributes/attributes-2020pu2.yml --reporter cli cli:c:/chefLogs/validationResults.log ----
STDOUT:
STDERR: C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/specification.rb:2332:in raise_if_conflicts': Unable to activate pry-byebug-3.9.0, because pry-0.12.2 conflicts with pry (~> 0.13.0) (Gem::ConflictError) from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/specification.rb:1441:in activate'
from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems.rb:224:in rescue in try_activate' from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems.rb:217:in try_activate'
from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:123:in rescue in require' from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:34:in require'
from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-byebug-3.8.0/lib/pry-byebug/cli.rb:3:in <top (required)>' from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require'
from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require' from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-0.12.2/lib/pry/plugins.rb:41:in load_cli_options'
from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-0.12.2/lib/pry/cli.rb:37:in block in add_plugin_options' from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-0.12.2/lib/pry/cli.rb:36:in each'
from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-0.12.2/lib/pry/cli.rb:36:in add_plugin_options' from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-0.12.2/lib/pry/cli.rb:127:in <top (required)>'
from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require' from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require'
from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/pry-0.12.2/lib/pry.rb:121:in <top (required)>' from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require'
from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require' from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/inspec-core-3.9.3/lib/inspec/shell.rb:5:in <top (required)>'
from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require' from C:/opscode/chef/embedded/lib/ruby/site_ruby/2.5.0/rubygems/core_ext/kernel_require.rb:54:in require'
from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/inspec-core-3.9.3/lib/inspec.rb:16:in <top (required)>' from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/inspec-core-3.9.3/bin/inspec:10:in require_relative'
from C:/opscode/chef/embedded/lib/ruby/gems/2.5.0/gems/inspec-core-3.9.3/bin/inspec:10:in <top (required)>' from C:/opscode/chef/embedded/bin/inspec:23:in load'
from C:/opscode/chef/embedded/bin/inspec:23:in `

'
---- End output of inspec exec --no-distinct-exit profile-validation --input-file profile-

Looking at the log, this is probably due to dependency conflict of a few Gem libraries.

![2|690x388]
(upload://ihcDO8TC97EbJ83HhzEPmADvnNo.jpeg)

Tests ran fine after I manually uninstalled method_source 1.0.0, pry 13, and pry-byebug 3.9.

Hello Tsin -

Thanks for the information.
This is an issue we fixed in the current InSpec (InSpec 4.18).
The fix has not been back-ported to InSpec 3. We'll start working on a new release of InSpec 3, but in the immediate term you could upgrade to InSpec 4 if possible.

Thanks

  • James