inspec 3.3.14 → 3.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 57b4ef6616ae9f2ee1a0d715fd3849d91f759242afe31da2e044fd243424c88d
4
- data.tar.gz: c2a5e2e09134bd5919cdcf057110ad96de7e35bdf8316d440e0d8809d11ea603
3
+ metadata.gz: 37da5ceb61c6c34673a723fb6b80b19d0147f921c496923f4343ff19fd3def8f
4
+ data.tar.gz: 89eb7fc258ed7f4bc0bf1c3470fca66e9a43bd8c80539b2f788f61b7dfef3c58
5
5
  SHA512:
6
- metadata.gz: b51dad58342d2a68ccec838623278fedc4573576f43618f90a36ba9443415ebb922220b656d0b1a2185f6e699e3d0532bd45ef7cb15ff6996225ed9d7c71d286
7
- data.tar.gz: d59f22a869aeabf92638eef956e8b9068a71f636b951b3ddeee8ad1c691d31b264dbafd5384449f0fe7ef6d59742e9814e3b134090a5fb62ec791de449d3742d
6
+ metadata.gz: c43503aa37e7e56987ea560f2eb14abc2cf16d4cd27724b7d331a0e8bf0671d982fb495a354afefad727a2047f7219b93052a525a9a36fc031caeaa923df8c66
7
+ data.tar.gz: 0ab645bc7b3312564d93d470f1e4b965a17aca0000e72580df13acab1a58fb322b2a0fee550e946ce19b6121a9ede659bfad367bc9411dafa8b223df0d62e4ad
data/README.md CHANGED
@@ -46,7 +46,7 @@ inspec exec test.rb -t docker://container_id
46
46
 
47
47
  ## Installation
48
48
 
49
- InSpec requires Ruby ( >2.2 ).
49
+ InSpec requires Ruby ( >2.3 ).
50
50
 
51
51
  ### Install as package
52
52
 
@@ -2,5 +2,9 @@
2
2
  "file_version": "1.0.0",
3
3
  "unknown_group_action": "ignore",
4
4
  "groups": {
5
+ "attrs_value_replaces_default": {
6
+ "action": "ignore",
7
+ "prefix": "The 'default' option for attributes is being replaced by 'value' - please use it instead."
8
+ }
5
9
  }
6
10
  }
@@ -1,5 +1,7 @@
1
1
  # encoding:utf-8
2
2
 
3
+ require 'utils/deprecation'
4
+
3
5
  module Inspec
4
6
  class Attribute
5
7
  attr_accessor :name
@@ -21,8 +23,8 @@ module Inspec
21
23
  # output warn message if we are in a exec call
22
24
  Inspec::Log.warn(
23
25
  "Attribute '#{@name}' does not have a value. "\
24
- "Use --attrs to provide a value for '#{@name}' or specify a default "\
25
- "value with `attribute('#{@name}', default: 'somedefault', ...)`.",
26
+ "Use --attrs to provide a value for '#{@name}' or specify a "\
27
+ "value with `attribute('#{@name}', value: 'somevalue', ...)`.",
26
28
  ) if Inspec::BaseCLI.inspec_cli_command == :exec
27
29
  end
28
30
 
@@ -42,8 +44,17 @@ module Inspec
42
44
  def initialize(name, options = {})
43
45
  @name = name
44
46
  @opts = options
45
- validate_value_type(default) if @opts.key?(:type) && @opts.key?(:default)
46
- @value = nil
47
+ if @opts.key?(:default)
48
+ Inspec.deprecate(:attrs_value_replaces_default, "attribute name: '#{name}'")
49
+ if @opts.key?(:value)
50
+ Inspec::Log.warn "Attribute #{@name} created using both :default and :value options - ignoring :default"
51
+ @opts.delete(:default)
52
+ else
53
+ @opts[:value] = @opts.delete(:default)
54
+ end
55
+ end
56
+ @value = @opts[:value]
57
+ validate_value_type(@value) if @opts.key?(:type) && @opts.key?(:value)
47
58
  end
48
59
 
49
60
  def value=(new_value)
@@ -54,7 +65,7 @@ module Inspec
54
65
  def value
55
66
  if @value.nil?
56
67
  validate_required(@value) if @opts[:required] == true
57
- @value = default
68
+ @value = value_or_dummy
58
69
  else
59
70
  @value
60
71
  end
@@ -162,8 +173,8 @@ module Inspec
162
173
  end
163
174
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
164
175
 
165
- def default
166
- @opts.key?(:default) ? @opts[:default] : DEFAULT_ATTRIBUTE.new(@name)
176
+ def value_or_dummy
177
+ @opts.key?(:value) ? @opts[:value] : DEFAULT_ATTRIBUTE.new(@name)
167
178
  end
168
179
  end
169
180
  end
@@ -4,5 +4,5 @@
4
4
  # author: Christoph Hartmann
5
5
 
6
6
  module Inspec
7
- VERSION = '3.3.14'
7
+ VERSION = '3.4.1'
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.14
4
+ version: 3.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dominik Richter
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-25 00:00:00.000000000 Z
11
+ date: 2019-01-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: train