qonfig 0.29.0 → 0.31.0
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 +4 -4
- data/.github/workflows/build.yml +50 -0
- data/.rubocop.yml +1 -1
- data/CHANGELOG.md +22 -0
- data/Gemfile +0 -3
- data/Gemfile.lock +77 -98
- data/LICENSE.txt +1 -1
- data/README.md +6 -4
- data/gemfiles/with_external_deps.gemfile +2 -0
- data/gemfiles/with_external_deps.gemfile.lock +84 -99
- data/gemfiles/without_external_deps.gemfile.lock +78 -95
- data/lib/qonfig/commands/definition/add_nested_option.rb +5 -1
- data/lib/qonfig/commands/definition/load_from_env/value_converter.rb +6 -6
- data/lib/qonfig/commands/definition/re_define_option.rb +5 -1
- data/lib/qonfig/commands/instantiation/values_file.rb +4 -6
- data/lib/qonfig/imports/direct_key.rb +4 -4
- data/lib/qonfig/imports/mappings.rb +4 -4
- data/lib/qonfig/plugins/pretty_print/requirements.rb +1 -1
- data/lib/qonfig/plugins/toml/loaders/dynamic.rb +1 -1
- data/lib/qonfig/plugins/toml/loaders.rb +1 -1
- data/lib/qonfig/plugins.rb +2 -4
- data/lib/qonfig/settings/callbacks.rb +9 -0
- data/lib/qonfig/settings.rb +104 -18
- data/lib/qonfig/uploaders/yaml.rb +1 -1
- data/lib/qonfig/validation/building/instance_builder/attribute_consistency.rb +2 -2
- data/lib/qonfig/version.rb +1 -1
- data/lib/qonfig.rb +1 -0
- data/qonfig.gemspec +8 -8
- data/spec/features/config_definition_and_representation_spec.rb +7 -7
- data/spec/features/freeze_state_spec.rb +10 -10
- data/spec/features/nested_access_caching_spec.rb +134 -0
- data/spec/features/plugins/pretty_print_spec.rb +15 -15
- data/spec/features/plugins/toml/save_to_toml_spec.rb +1 -1
- data/spec/features/plugins/vault/expose_vault_spec.rb +1 -1
- data/spec/features/run_code_with_temporary_settings_spec.rb +70 -68
- data/spec/features/save_to_file/save_to_json_spec.rb +38 -18
- metadata +37 -49
- data/.github/workflows/test.yml +0 -62
- data/.jrubyrc +0 -1
- data/sig/.keep +0 -0
metadata
CHANGED
|
@@ -1,127 +1,118 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: qonfig
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.31.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rustam Ibragimov
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
|
-
name:
|
|
13
|
+
name: base64
|
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
|
16
15
|
requirements:
|
|
17
|
-
- - "
|
|
16
|
+
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '0.
|
|
20
|
-
type: :
|
|
18
|
+
version: '0.2'
|
|
19
|
+
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
|
-
- - "
|
|
23
|
+
- - ">="
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '0.
|
|
25
|
+
version: '0.2'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
27
|
+
name: simplecov
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
30
29
|
requirements:
|
|
31
30
|
- - "~>"
|
|
32
31
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
32
|
+
version: '0.22'
|
|
34
33
|
type: :development
|
|
35
34
|
prerelease: false
|
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
36
|
requirements:
|
|
38
37
|
- - "~>"
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
39
|
+
version: '0.22'
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
41
|
+
name: rspec
|
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
|
44
43
|
requirements:
|
|
45
44
|
- - "~>"
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
46
|
+
version: '3.2'
|
|
48
47
|
type: :development
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
51
|
- - "~>"
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
53
|
+
version: '3.2'
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
55
|
+
name: armitage-rubocop
|
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
|
58
57
|
requirements:
|
|
59
58
|
- - "~>"
|
|
60
59
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '1.
|
|
60
|
+
version: '1.59'
|
|
62
61
|
type: :development
|
|
63
62
|
prerelease: false
|
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
64
|
requirements:
|
|
66
65
|
- - "~>"
|
|
67
66
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '1.
|
|
69
|
-
- !ruby/object:Gem::Dependency
|
|
70
|
-
name: bundler
|
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
|
72
|
-
requirements:
|
|
73
|
-
- - ">="
|
|
74
|
-
- !ruby/object:Gem::Version
|
|
75
|
-
version: '1'
|
|
76
|
-
type: :development
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - ">="
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: '1'
|
|
67
|
+
version: '1.59'
|
|
83
68
|
- !ruby/object:Gem::Dependency
|
|
84
|
-
name:
|
|
69
|
+
name: activesupport
|
|
85
70
|
requirement: !ruby/object:Gem::Requirement
|
|
86
71
|
requirements:
|
|
87
72
|
- - "~>"
|
|
88
73
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '
|
|
74
|
+
version: '6'
|
|
75
|
+
- - "<"
|
|
76
|
+
- !ruby/object:Gem::Version
|
|
77
|
+
version: '8'
|
|
90
78
|
type: :development
|
|
91
79
|
prerelease: false
|
|
92
80
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
81
|
requirements:
|
|
94
82
|
- - "~>"
|
|
95
83
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '
|
|
84
|
+
version: '6'
|
|
85
|
+
- - "<"
|
|
86
|
+
- !ruby/object:Gem::Version
|
|
87
|
+
version: '8'
|
|
97
88
|
- !ruby/object:Gem::Dependency
|
|
98
|
-
name:
|
|
89
|
+
name: bundler
|
|
99
90
|
requirement: !ruby/object:Gem::Requirement
|
|
100
91
|
requirements:
|
|
101
|
-
- - "
|
|
92
|
+
- - ">="
|
|
102
93
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '
|
|
94
|
+
version: '1'
|
|
104
95
|
type: :development
|
|
105
96
|
prerelease: false
|
|
106
97
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
98
|
requirements:
|
|
108
|
-
- - "
|
|
99
|
+
- - ">="
|
|
109
100
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '
|
|
101
|
+
version: '1'
|
|
111
102
|
- !ruby/object:Gem::Dependency
|
|
112
103
|
name: pry
|
|
113
104
|
requirement: !ruby/object:Gem::Requirement
|
|
114
105
|
requirements:
|
|
115
106
|
- - "~>"
|
|
116
107
|
- !ruby/object:Gem::Version
|
|
117
|
-
version: '0.
|
|
108
|
+
version: '0.15'
|
|
118
109
|
type: :development
|
|
119
110
|
prerelease: false
|
|
120
111
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
112
|
requirements:
|
|
122
113
|
- - "~>"
|
|
123
114
|
- !ruby/object:Gem::Version
|
|
124
|
-
version: '0.
|
|
115
|
+
version: '0.15'
|
|
125
116
|
- !ruby/object:Gem::Dependency
|
|
126
117
|
name: rake
|
|
127
118
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -160,9 +151,8 @@ executables: []
|
|
|
160
151
|
extensions: []
|
|
161
152
|
extra_rdoc_files: []
|
|
162
153
|
files:
|
|
163
|
-
- ".github/workflows/
|
|
154
|
+
- ".github/workflows/build.yml"
|
|
164
155
|
- ".gitignore"
|
|
165
|
-
- ".jrubyrc"
|
|
166
156
|
- ".rspec"
|
|
167
157
|
- ".rubocop.yml"
|
|
168
158
|
- CHANGELOG.md
|
|
@@ -278,7 +268,6 @@ files:
|
|
|
278
268
|
- lib/qonfig/validation/validators/proc_based.rb
|
|
279
269
|
- lib/qonfig/version.rb
|
|
280
270
|
- qonfig.gemspec
|
|
281
|
-
- sig/.keep
|
|
282
271
|
- spec/artifacts/.keep
|
|
283
272
|
- spec/features/clear_options_spec.rb
|
|
284
273
|
- spec/features/compacted_config_spec.rb
|
|
@@ -328,6 +317,7 @@ files:
|
|
|
328
317
|
- spec/features/load_setting_values_from_file/load_from_yaml_spec.rb
|
|
329
318
|
- spec/features/load_setting_values_from_file/shared_behavior_spec.rb
|
|
330
319
|
- spec/features/mixin_spec.rb
|
|
320
|
+
- spec/features/nested_access_caching_spec.rb
|
|
331
321
|
- spec/features/non_redefineable_core_methods_spec.rb
|
|
332
322
|
- spec/features/plugins/pretty_print_spec.rb
|
|
333
323
|
- spec/features/plugins/toml/expose_self/format_option_toml_spec.rb
|
|
@@ -408,7 +398,6 @@ homepage: https://github.com/0exp/qonfig
|
|
|
408
398
|
licenses:
|
|
409
399
|
- MIT
|
|
410
400
|
metadata: {}
|
|
411
|
-
post_install_message:
|
|
412
401
|
rdoc_options: []
|
|
413
402
|
require_paths:
|
|
414
403
|
- lib
|
|
@@ -416,15 +405,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
416
405
|
requirements:
|
|
417
406
|
- - ">="
|
|
418
407
|
- !ruby/object:Gem::Version
|
|
419
|
-
version:
|
|
408
|
+
version: '3.1'
|
|
420
409
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
421
410
|
requirements:
|
|
422
411
|
- - ">="
|
|
423
412
|
- !ruby/object:Gem::Version
|
|
424
413
|
version: '0'
|
|
425
414
|
requirements: []
|
|
426
|
-
rubygems_version: 3.
|
|
427
|
-
signing_key:
|
|
415
|
+
rubygems_version: 3.6.9
|
|
428
416
|
specification_version: 4
|
|
429
417
|
summary: Config object
|
|
430
418
|
test_files: []
|
data/.github/workflows/test.yml
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
name: Test
|
|
2
|
-
|
|
3
|
-
on: [push, pull_request]
|
|
4
|
-
|
|
5
|
-
env:
|
|
6
|
-
FULL_COVERAGE_CHECK: true
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
full-check:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
|
|
12
|
-
# We want to run on external PRs, but not on our own internal PRs as they'll be run on push event
|
|
13
|
-
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != '0exp/qonfig'
|
|
14
|
-
|
|
15
|
-
steps:
|
|
16
|
-
- uses: actions/checkout@v2
|
|
17
|
-
- uses: ruby/setup-ruby@v1
|
|
18
|
-
with:
|
|
19
|
-
ruby-version: 3
|
|
20
|
-
bundler-cache: true
|
|
21
|
-
- name: Run Linter
|
|
22
|
-
run: bundle exec ci-helper RubocopLint
|
|
23
|
-
- name: Check missed spec suffixes
|
|
24
|
-
run: bundle exec ci-helper CheckSpecSuffixes --extra-paths spec/*.rb --ignored-paths spec/*_helper.rb spec/**/*_examples.rb
|
|
25
|
-
- name: Run specs
|
|
26
|
-
run: bundle exec ci-helper RunSpecs
|
|
27
|
-
- name: Audit
|
|
28
|
-
run: bundle exec ci-helper BundlerAudit
|
|
29
|
-
- name: Coveralls
|
|
30
|
-
uses: coverallsapp/github-action@master
|
|
31
|
-
with:
|
|
32
|
-
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
33
|
-
specs:
|
|
34
|
-
runs-on: ubuntu-latest
|
|
35
|
-
continue-on-error: ${{ matrix.experimental }}
|
|
36
|
-
|
|
37
|
-
env:
|
|
38
|
-
FULL_COVERAGE_CHECK: false
|
|
39
|
-
|
|
40
|
-
# We want to run on external PRs, but not on our own internal PRs as they'll be run on push event
|
|
41
|
-
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != '0exp/qonfig'
|
|
42
|
-
|
|
43
|
-
strategy:
|
|
44
|
-
fail-fast: false
|
|
45
|
-
matrix:
|
|
46
|
-
ruby: ["2.6", "2.7", "3.0", "3.1"]
|
|
47
|
-
experimental: [false]
|
|
48
|
-
include:
|
|
49
|
-
- ruby: head
|
|
50
|
-
experimental: true
|
|
51
|
-
- ruby: jruby
|
|
52
|
-
experimental: true
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
steps:
|
|
56
|
-
- uses: actions/checkout@v2
|
|
57
|
-
- uses: ruby/setup-ruby@v1
|
|
58
|
-
with:
|
|
59
|
-
ruby-version: ${{ matrix.ruby }}
|
|
60
|
-
bundler-cache: true
|
|
61
|
-
- name: Run specs
|
|
62
|
-
run: bundle exec ci-helper RunSpecs
|
data/.jrubyrc
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
debug.fullTrace=true
|
data/sig/.keep
DELETED
|
File without changes
|