qonfig 0.21.0 → 0.25.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/.travis.yml +23 -20
  4. data/CHANGELOG.md +58 -2
  5. data/LICENSE.txt +1 -1
  6. data/README.md +124 -10
  7. data/Rakefile +0 -1
  8. data/bin/rspec +1 -0
  9. data/gemfiles/with_external_deps.gemfile +2 -0
  10. data/lib/qonfig.rb +4 -0
  11. data/lib/qonfig/commands/definition/expose_json.rb +2 -2
  12. data/lib/qonfig/commands/definition/expose_yaml.rb +2 -2
  13. data/lib/qonfig/commands/definition/load_from_json.rb +2 -2
  14. data/lib/qonfig/commands/definition/load_from_yaml.rb +2 -2
  15. data/lib/qonfig/commands/instantiation/values_file.rb +13 -4
  16. data/lib/qonfig/data_set.rb +13 -9
  17. data/lib/qonfig/dsl.rb +7 -7
  18. data/lib/qonfig/plugins.rb +1 -0
  19. data/lib/qonfig/plugins/pretty_print.rb +8 -1
  20. data/lib/qonfig/plugins/pretty_print/requirements.rb +3 -0
  21. data/lib/qonfig/plugins/pretty_print/ruby_2_7_basic_object_pp_patch.rb +44 -0
  22. data/lib/qonfig/plugins/toml/commands/definition/expose_toml.rb +4 -4
  23. data/lib/qonfig/plugins/toml/commands/definition/load_from_toml.rb +1 -1
  24. data/lib/qonfig/plugins/toml/data_set.rb +2 -2
  25. data/lib/qonfig/plugins/toml/dsl.rb +2 -2
  26. data/lib/qonfig/plugins/vault.rb +24 -0
  27. data/lib/qonfig/plugins/vault/commands/definition/expose_vault.rb +142 -0
  28. data/lib/qonfig/plugins/vault/commands/definition/load_from_vault.rb +53 -0
  29. data/lib/qonfig/plugins/vault/dsl.rb +35 -0
  30. data/lib/qonfig/plugins/vault/errors.rb +9 -0
  31. data/lib/qonfig/plugins/vault/loaders/vault.rb +73 -0
  32. data/lib/qonfig/settings.rb +78 -21
  33. data/lib/qonfig/settings/key_matcher.rb +2 -0
  34. data/lib/qonfig/uploaders/file.rb +2 -2
  35. data/lib/qonfig/uploaders/yaml.rb +1 -1
  36. data/lib/qonfig/version.rb +1 -1
  37. data/qonfig.gemspec +5 -6
  38. metadata +20 -26
@@ -147,12 +147,14 @@ class Qonfig::Settings::KeyMatcher
147
147
  #
148
148
  # @api private
149
149
  # @since 0.13.0
150
+ # rubocop:disable Style/SlicingWithRange
150
151
  def strip_regexp_string(regexp_string, left: false, right: false)
151
152
  pattern = regexp_string
152
153
  pattern = pattern[2..-1] if left && pattern[0..1] == MATCHER_SCOPE_SPLITTER
153
154
  pattern = pattern[0..-3] if right && pattern[-2..-1] == MATCHER_SCOPE_SPLITTER
154
155
  pattern
155
156
  end
157
+ # rubocop:enable Style/SlicingWithRange
156
158
 
157
159
  # @param scope_pattern [String]
158
160
  # @return [Regexp]
@@ -23,9 +23,9 @@ class Qonfig::Uploaders::File < Qonfig::Uploaders::Base
23
23
 
24
24
  class << self
25
25
  # @param settings [Qonfig::Settings]
26
- # @param options [Hash<Symbol|String,Any>]
27
26
  # @param value_processor [Block]
28
- # @option path [String]
27
+ # @option path [String, Pathname]
28
+ # @option options [Hash<Symbol|String,Any>]
29
29
  # @return [void]
30
30
  #
31
31
  # @api private
@@ -47,7 +47,7 @@ class Qonfig::Uploaders::YAML < Qonfig::Uploaders::File
47
47
  # @since 0.11.0
48
48
  def represent_settings(settings, options, &value_processor)
49
49
  settings_hash_opts = hash_representation_options(options, &value_processor)
50
- settings_hash = settings.__to_hash__(settings_hash_opts)
50
+ settings_hash = settings.__to_hash__(**settings_hash_opts)
51
51
  to_yaml_string(settings_hash, options)
52
52
  end
53
53
 
@@ -5,5 +5,5 @@ module Qonfig
5
5
  #
6
6
  # @api public
7
7
  # @since 0.1.0
8
- VERSION = '0.21.0'
8
+ VERSION = '0.25.0'
9
9
  end
@@ -6,7 +6,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
6
  require 'qonfig/version'
7
7
 
8
8
  Gem::Specification.new do |spec|
9
- spec.required_ruby_version = '>= 2.4.9'
9
+ spec.required_ruby_version = '>= 2.4.10'
10
10
 
11
11
  spec.name = 'qonfig'
12
12
  spec.version = Qonfig::VERSION
@@ -29,12 +29,11 @@ Gem::Specification.new do |spec|
29
29
  f.match(%r{^(test|spec|features)/})
30
30
  end
31
31
 
32
- spec.add_development_dependency 'coveralls', '~> 0.8'
33
- spec.add_development_dependency 'simplecov', '~> 0.16'
34
- spec.add_development_dependency 'rspec', '~> 3.8'
35
- spec.add_development_dependency 'armitage-rubocop', '~> 0.77'
32
+ spec.add_development_dependency 'simplecov', '~> 0.19'
33
+ spec.add_development_dependency 'rspec', '~> 3.9'
34
+ spec.add_development_dependency 'armitage-rubocop', '~> 0.89'
36
35
 
37
36
  spec.add_development_dependency 'bundler'
38
- spec.add_development_dependency 'rake'
37
+ spec.add_development_dependency 'rake', '>= 13'
39
38
  spec.add_development_dependency 'pry'
40
39
  end
metadata CHANGED
@@ -1,71 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qonfig
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.21.0
4
+ version: 0.25.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rustam Ibragimov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-11 00:00:00.000000000 Z
11
+ date: 2020-09-15 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: coveralls
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '0.8'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '0.8'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: simplecov
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
17
  - - "~>"
32
18
  - !ruby/object:Gem::Version
33
- version: '0.16'
19
+ version: '0.19'
34
20
  type: :development
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
24
  - - "~>"
39
25
  - !ruby/object:Gem::Version
40
- version: '0.16'
26
+ version: '0.19'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: rspec
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: '3.8'
33
+ version: '3.9'
48
34
  type: :development
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
38
  - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: '3.8'
40
+ version: '3.9'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: armitage-rubocop
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
45
  - - "~>"
60
46
  - !ruby/object:Gem::Version
61
- version: '0.77'
47
+ version: '0.89'
62
48
  type: :development
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
52
  - - "~>"
67
53
  - !ruby/object:Gem::Version
68
- version: '0.77'
54
+ version: '0.89'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: bundler
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +72,14 @@ dependencies:
86
72
  requirements:
87
73
  - - ">="
88
74
  - !ruby/object:Gem::Version
89
- version: '0'
75
+ version: '13'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - ">="
95
81
  - !ruby/object:Gem::Version
96
- version: '0'
82
+ version: '13'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: pry
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -183,6 +169,8 @@ files:
183
169
  - lib/qonfig/plugins/pretty_print/compacted.rb
184
170
  - lib/qonfig/plugins/pretty_print/data_set.rb
185
171
  - lib/qonfig/plugins/pretty_print/mixin.rb
172
+ - lib/qonfig/plugins/pretty_print/requirements.rb
173
+ - lib/qonfig/plugins/pretty_print/ruby_2_7_basic_object_pp_patch.rb
186
174
  - lib/qonfig/plugins/pretty_print/settings.rb
187
175
  - lib/qonfig/plugins/registry.rb
188
176
  - lib/qonfig/plugins/toml.rb
@@ -196,6 +184,12 @@ files:
196
184
  - lib/qonfig/plugins/toml/loaders/toml.rb
197
185
  - lib/qonfig/plugins/toml/tomlrb_fixes.rb
198
186
  - lib/qonfig/plugins/toml/uploaders/toml.rb
187
+ - lib/qonfig/plugins/vault.rb
188
+ - lib/qonfig/plugins/vault/commands/definition/expose_vault.rb
189
+ - lib/qonfig/plugins/vault/commands/definition/load_from_vault.rb
190
+ - lib/qonfig/plugins/vault/dsl.rb
191
+ - lib/qonfig/plugins/vault/errors.rb
192
+ - lib/qonfig/plugins/vault/loaders/vault.rb
199
193
  - lib/qonfig/settings.rb
200
194
  - lib/qonfig/settings/builder.rb
201
195
  - lib/qonfig/settings/callbacks.rb
@@ -237,14 +231,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
237
231
  requirements:
238
232
  - - ">="
239
233
  - !ruby/object:Gem::Version
240
- version: 2.4.9
234
+ version: 2.4.10
241
235
  required_rubygems_version: !ruby/object:Gem::Requirement
242
236
  requirements:
243
237
  - - ">="
244
238
  - !ruby/object:Gem::Version
245
239
  version: '0'
246
240
  requirements: []
247
- rubygems_version: 3.0.3
241
+ rubygems_version: 3.1.2
248
242
  signing_key:
249
243
  specification_version: 4
250
244
  summary: Config object