config_reader 2.0.4 → 3.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3f828ccddd47d34397ff9cb4aa7e37f8f7d7111456f0d72bc151bbb7fd0ad3dd
4
- data.tar.gz: 13acf002aa9bb3b646b115945737d02d60822d90293907df38cf3473f5a5365b
3
+ metadata.gz: 2737e810595affa2baee1814d8d0291e25be7748f40eb215634b52401677c533
4
+ data.tar.gz: c55a5f5a2bce2d866cdc93c8a1fc6b4e004d7fc693d4d26b1cb7c2fb96e11038
5
5
  SHA512:
6
- metadata.gz: c68e687b9a478eaf339f5e766803b8b24a3686c10dbf0bf04b670897e6467e3deb5f141e7799fb06ec7db51b579c9202d53c2bdab51f4119bc9d5687460aeaae
7
- data.tar.gz: c0d61efaddbbb6350651fac1f17a46bef0ecb98647ea686cfb9dfba3ee917b7277c26ded0bb74dbc97cdb6b3ccbf1a92325a8a01341ad04660dd1f63c6954b08
6
+ metadata.gz: bb4d11127268cd8dd236cb51c2237f9b6f8ee77174491ed406e788072a5ac92376eb91e7d7f4f20596f5378870426727c95eb8f38c31a079d14b6880c93953c4
7
+ data.tar.gz: 14c4bff99f6ed3ca2e75186dc019e7380af414143edcb588e494b2069083125e9371d3b704597368a590c269b1e279cfe3bc7cdd8a9a53f9b5745dc58a1fbef7
data/CHANGELOG.md CHANGED
@@ -1,71 +1,79 @@
1
- ### 2.0.4 2025-05-17
1
+ # Changelog
2
+
3
+ ## 3.0.0 2024-12-12
4
+
5
+ Update to latest Sekrets (1.14.0)
6
+ Explicitly require abbrev gem
7
+ Expose all environment configs at the Config.envs Hash
8
+
9
+ ## 2.0.4 2024-05-17
2
10
 
3
11
  - [update rexml](https://github.com/UnderpantsGnome/config_reader-gem/pull/5)
4
12
 
5
- ### 2.0.3 2025-05-10
13
+ ## 2.0.3 2024-05-10
6
14
 
7
15
  - add dig method to be able to extract nested values programmatically
8
16
 
9
- ### 2.0.2 2023-03-11
17
+ ## 2.0.2 2023-03-11
10
18
 
11
19
  - remove deep-merge dependency
12
20
 
13
- ### 2.0.1 2010-03-19
21
+ ## 2.0.1 2010-03-19
14
22
 
15
23
  - update dependencies
16
24
 
17
- ### 1.0.5 2018-02-01
25
+ ## 1.0.5 2018-02-01
18
26
 
19
27
  - pass ignore_missing_keys to nested hashes during conversion
20
28
 
21
- ### 1.0.4 2018-02-01
29
+ ## 1.0.4 2018-02-01
22
30
 
23
31
  - add a config option for Key Error behavior
24
32
 
25
- ### 1.0.3 2017-06-20
33
+ ## 1.0.3 2017-06-20
26
34
 
27
35
  - add the deep_merge gem so all keys don't need to be duplicated across env sections
28
36
 
29
- ### 0.0.9 2012-02-03
37
+ ## 0.0.9 2012-02-03
30
38
 
31
39
  - Stop abusing Hash, it's not nice
32
40
  - convert all keys to symbols internally
33
41
  - move to a bundler style gem
34
42
 
35
- ### 0.0.8 2011-05-12
43
+ ## 0.0.8 2011-05-12
36
44
 
37
45
  - Silence RAILS_ENV deprecation, thanks jeanmartin
38
46
 
39
- ### 0.0.7 2010-02-14
47
+ ## 0.0.7 2010-02-14
40
48
 
41
49
  - moved to jeweler
42
50
  - removed the annoying post install message
43
51
  - updated specs
44
52
 
45
- ### 0.0.6 2009-04-02
53
+ ## 0.0.6 2009-04-02
46
54
 
47
55
  - handle keys as ['foo'], [:foo] and .foo for real this time
48
56
  - return nil on non-existent key instead of error
49
57
 
50
- ### 0.0.5 2009-01-29
58
+ ## 0.0.5 2009-01-29
51
59
 
52
60
  - handle keys as ['foo'], [:foo] and .foo
53
61
  - return nil on non-existent key instead of error
54
62
 
55
- ### 0.0.4 2008-12-08
63
+ ## 0.0.4 2008-12-08
56
64
 
57
65
  - fix the environment merging issue, for real this time
58
66
 
59
- ### 0.0.3 2008-12-02
67
+ ## 0.0.3 2008-12-02
60
68
 
61
69
  - fix the environment merging issue
62
70
 
63
- ### 0.0.2 2008-09-10
71
+ ## 0.0.2 2008-09-10
64
72
 
65
73
  - have find_config return the file if it exists instead of looking in . and
66
74
  ./config
67
75
 
68
- ### 0.0.1 2008-08-06
76
+ ## 0.0.1 2008-08-06
69
77
 
70
78
  - 1 major enhancement:
71
79
  - Initial release
data/README.md CHANGED
@@ -20,16 +20,6 @@ Example config file:
20
20
  production:
21
21
  site_url: http://example.com
22
22
 
23
- ## Ruby 3.1 and 3.2
24
-
25
- If you want to use Sekrets with these versions of Ruby you need to use this version until upstream gets updated.
26
-
27
- ```ruby
28
- gem "sekrets",
29
- github: "UnderpantsGnome/sekrets",
30
- branch: "ruby-3-2-support"
31
- ```
32
-
33
23
  ## Sekrets
34
24
 
35
25
  Includes Sekrets integration. See <https://github.com/ahoward/sekrets> for more
@@ -42,8 +32,8 @@ The format of the sekrets file is the same as the regular file.
42
32
  class MyConfig < ConfigReader
43
33
  configure do |config|
44
34
  config.environment = Rails.env # (set this however you access the env in your app)
45
- config.config_file = 'config/my_config.yml'
46
- config.sekrets_file = 'config/my_config.yml.enc' # (default nil)
35
+ config.config_file = "config/my_config.yml"
36
+ config.sekrets_file = "config/my_config.yml.enc" # (default nil)
47
37
  config.ignore_missing_keys = true # (default false, raises KeyError)
48
38
  end
49
39
  end
@@ -52,13 +42,13 @@ The format of the sekrets file is the same as the regular file.
52
42
 
53
43
  MyConfig.mail_from #=> noreply@example.com
54
44
  MyConfig[:mail_from] #=> noreply@example.com
55
- MyConfig['mail_from'] #=> noreply@example.com
45
+ MyConfig["mail_from"] #=> noreply@example.com
56
46
 
57
47
  ## Note on Patches/Pull Requests
58
48
 
59
49
  * Fork the project.
60
50
  * Make your feature addition or bug fix.
61
- * Add tests for it. This is important so I don't break it in a future
51
+ * Add tests for it. This is important so I don"t break it in a future
62
52
  version unintentionally.
63
53
  * Commit, do not mess with rakefile, version, or history. (if you want to
64
54
  have your own version, that is fine but bump version in a commit by itself
@@ -1,20 +1,20 @@
1
1
  class ConfigReader
2
- class MagicHash < Hash
2
+ class ConfigHash < Hash
3
3
  attr_accessor :ignore_missing_keys
4
4
 
5
5
  def self.convert_hash(hash, ignore_missing_keys = false)
6
- magic_hash = new
7
- magic_hash.ignore_missing_keys = ignore_missing_keys
6
+ config_hash = new
7
+ config_hash.ignore_missing_keys = ignore_missing_keys
8
8
 
9
9
  hash.each_pair do |key, value|
10
- magic_hash[key.to_sym] = if value.is_a?(Hash)
10
+ config_hash[key.to_sym] = if value.is_a?(Hash)
11
11
  convert_hash(value, ignore_missing_keys)
12
12
  else
13
13
  value
14
14
  end
15
15
  end
16
16
 
17
- magic_hash
17
+ config_hash
18
18
  end
19
19
 
20
20
  def [](key)
@@ -25,7 +25,7 @@ class ConfigReader
25
25
 
26
26
  def method_missing(key, *args, &block)
27
27
  key?(key) ? fetch(key) : super
28
- rescue KeyError, NoMethodError => e
28
+ rescue KeyError, NoMethodError => e # skipcq: RB-P1001
29
29
  raise e unless ignore_missing_keys
30
30
  end
31
31
 
@@ -1,3 +1,3 @@
1
1
  class ConfigReader
2
- VERSION = "2.0.4"
2
+ VERSION = "3.0.0"
3
3
  end
data/lib/config_reader.rb CHANGED
@@ -1,34 +1,49 @@
1
1
  require "config_reader/version"
2
- require "config_reader/magic_hash"
3
- require "yaml"
2
+ require "config_reader/config_hash"
3
+ require "psych"
4
4
 
5
5
  begin
6
6
  require "erb"
7
7
  rescue LoadError
8
- puts "ERB not found, you won't be able to use ERB in your config"
8
+ warn "ERB not found, you won't be able to use ERB in your config"
9
9
  end
10
10
 
11
11
  class ConfigReader
12
12
  class << self
13
- attr_reader :configuration
13
+ attr_reader :envs
14
+
15
+ def [](key)
16
+ config[key.to_sym]
17
+ end
14
18
 
15
19
  def config
16
20
  @config = nil unless defined?(@config)
17
21
  @config ||= reload
18
22
  end
19
23
 
20
- def dig(*args)
21
- args.map!(&:to_sym) if args.respond_to?(:map!)
24
+ def configuration
25
+ @configuration ||= Configuration.new
26
+ end
22
27
 
23
- config.dig(*args)
28
+ def configure
29
+ self.configuration ||= Configuration.new
30
+ yield(configuration)
24
31
  end
25
32
 
26
- def reload
27
- merge_configs(load_config, load_sekrets)
33
+ def deep_merge(hash, other_hash)
34
+ hash.merge!(other_hash) do |_key, this_val, other_val|
35
+ if this_val.is_a?(Hash) && other_val.is_a?(Hash)
36
+ deep_merge(this_val, other_val)
37
+ else
38
+ other_val
39
+ end
40
+ end
28
41
  end
29
42
 
30
- def [](key)
31
- config[key.to_sym]
43
+ def dig(*args)
44
+ args.map!(&:to_sym) if args.respond_to?(:map!)
45
+
46
+ config.dig(*args)
32
47
  end
33
48
 
34
49
  def find_config
@@ -42,18 +57,6 @@ class ConfigReader
42
57
  nil
43
58
  end
44
59
 
45
- def method_missing(key, *args, &block)
46
- if key.to_s.end_with?("=")
47
- raise ArgumentError.new("ConfigReader is immutable")
48
- end
49
-
50
- config[key] || nil
51
- end
52
-
53
- def respond_to_missing?(m, *)
54
- config.key?(m)
55
- end
56
-
57
60
  def inspect
58
61
  puts config.inspect
59
62
  end
@@ -63,9 +66,17 @@ class ConfigReader
63
66
 
64
67
  conf =
65
68
  if defined?(ERB)
66
- YAML.load(ERB.new(File.read(find_config)).result)
69
+ Psych.safe_load(
70
+ ERB.new(File.read(find_config)).result,
71
+ aliases: true,
72
+ permitted_classes: configuration.permitted_classes.to_a + [Symbol]
73
+ )
67
74
  else
68
- YAML.load_file(File.read(find_config))
75
+ Psych.safe_load_file(
76
+ File.read(find_config),
77
+ aliases: true,
78
+ permitted_classes: configuration.permitted_classes.to_a + [Symbol]
79
+ )
69
80
  end
70
81
 
71
82
  raise "No config found" unless conf
@@ -90,51 +101,59 @@ class ConfigReader
90
101
  end
91
102
 
92
103
  def merge_configs(conf, sekrets)
104
+ @envs = {}
105
+ env_keys = conf.keys - ["defaults"]
93
106
  env = configuration.environment
94
107
 
95
108
  defaults = conf["defaults"]
96
109
 
97
110
  if sekrets && sekrets["defaults"]
98
- deep_merge!(defaults, sekrets["defaults"])
111
+ defaults = deep_merge(defaults, sekrets["defaults"])
99
112
  end
100
113
 
101
- deep_merge!(defaults, conf[env]) if conf[env]
102
- deep_merge!(defaults, sekrets[env]) if sekrets && sekrets[env]
114
+ env_keys.each do |key|
115
+ key_hash = deep_merge(defaults, conf[key]) if conf[key]
116
+ key_hash = deep_merge(defaults, sekrets[key]) if sekrets && sekrets[key]
117
+
118
+ @envs[key] = ConfigHash.convert_hash(
119
+ key_hash,
120
+ configuration.ignore_missing_keys
121
+ )
122
+ end
103
123
 
104
- MagicHash.convert_hash(defaults, configuration.ignore_missing_keys)
124
+ @envs[env]
105
125
  end
106
126
 
107
- def configure
108
- self.configuration ||= Configuration.new
109
- yield(configuration)
127
+ def method_missing(key, *_args, &_block)
128
+ if key.to_s.end_with?("=")
129
+ raise ArgumentError.new("ConfigReader is immutable")
130
+ end
131
+
132
+ config[key] || nil
110
133
  end
111
134
 
112
- def configuration
113
- @configuration ||= Configuration.new
135
+ def reload
136
+ merge_configs(load_config, load_sekrets)
114
137
  end
115
138
 
116
- def deep_merge!(hash, other_hash)
117
- hash.merge!(other_hash) do |key, this_val, other_val|
118
- if this_val.is_a?(Hash) && other_val.is_a?(Hash)
119
- deep_merge!(this_val, other_val)
120
- else
121
- other_val
122
- end
123
- end
139
+ def respond_to_missing?(m, *)
140
+ config.key?(m)
124
141
  end
125
142
  end
126
143
 
127
144
  class Configuration
128
145
  attr_accessor :config_file,
129
- :sekrets_file,
146
+ :environment,
130
147
  :ignore_missing_keys,
131
- :environment
148
+ :permitted_classes,
149
+ :sekrets_file
132
150
 
133
151
  def initialize
134
152
  @config_file = nil
135
- @sekrets_file = nil
136
- @ignore_missing_keys = false
137
153
  @environment = nil
154
+ @ignore_missing_keys = false
155
+ @permitted_classes = []
156
+ @sekrets_file = nil
138
157
  end
139
158
  end
140
159
  end
@@ -31,6 +31,17 @@ describe "ConfigReader" do
31
31
  end
32
32
  end
33
33
 
34
+ describe "all envs available" do
35
+ it "should have all envs available" do
36
+ expect(TestConfig.envs.keys).to eq(%w[test not_test])
37
+ end
38
+
39
+ it "should have ConfigHash for all envs" do
40
+ expect(TestConfig.envs["test"].app_name).to eq("test_app")
41
+ expect(TestConfig.envs["not_test"].app_name).to eq("not_test_app")
42
+ end
43
+ end
44
+
34
45
  describe "#dig" do
35
46
  it "finds values as symbols" do
36
47
  expect(TestConfig.dig(*%i[nested_key value])).to eq("test")
@@ -1,10 +1,5 @@
1
1
  class SekretsConfig < ConfigReader
2
- secret_file =
3
- if RUBY_VERSION > "3.0"
4
- "spec/sekrets_ruby_3_2.yml.enc"
5
- else
6
- "spec/sekrets_config.yml.enc"
7
- end
2
+ secret_file = "spec/sekrets_config.yml.enc"
8
3
 
9
4
  configure do |config|
10
5
  config.environment = "test"
Binary file
data/spec/spec_helper.rb CHANGED
@@ -7,4 +7,4 @@ require "sekrets_config"
7
7
  require "no_key_no_error_config"
8
8
 
9
9
  ENV["RACK_ENV"] = "test"
10
- ENV["SEKRETS_KEY"] = "ruby2.4_needs_longer_keys"
10
+ ENV["SEKRETS_KEY"] = "bb9e65113e80605f1f7c"
data/spec/test_config.yml CHANGED
@@ -8,3 +8,6 @@ test:
8
8
  app_name: test_app
9
9
  nested_key:
10
10
  only_in_test_env: true
11
+
12
+ not_test:
13
+ app_name: not_test_app
metadata CHANGED
@@ -1,15 +1,49 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: config_reader
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Moen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-17 00:00:00.000000000 Z
11
+ date: 2024-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: abbrev
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: psych
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '5.2'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 5.2.1
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '5.2'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 5.2.1
13
47
  - !ruby/object:Gem::Dependency
14
48
  name: rake
15
49
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +78,14 @@ dependencies:
44
78
  requirements:
45
79
  - - "~>"
46
80
  - !ruby/object:Gem::Version
47
- version: '1'
81
+ version: '1.14'
48
82
  type: :development
49
83
  prerelease: false
50
84
  version_requirements: !ruby/object:Gem::Requirement
51
85
  requirements:
52
86
  - - "~>"
53
87
  - !ruby/object:Gem::Version
54
- version: '1'
88
+ version: '1.14'
55
89
  - !ruby/object:Gem::Dependency
56
90
  name: pry
57
91
  requirement: !ruby/object:Gem::Requirement
@@ -73,42 +107,26 @@ executables: []
73
107
  extensions: []
74
108
  extra_rdoc_files: []
75
109
  files:
76
- - ".deepsource.toml"
77
- - ".github/workflows/ruby.yml"
78
- - ".gitignore"
79
- - ".nvmrc"
80
- - ".prettierrc"
81
- - ".rubocop.yml"
82
- - ".standard.yml"
83
- - ".travis.yml"
84
- - ".vscode/settings.json"
85
110
  - CHANGELOG.md
86
- - Gemfile
87
- - Gemfile.lock
88
- - License.txt
89
111
  - README.md
90
- - Rakefile
91
- - checksums/config_reader-2.0.2.gem.sha512
92
- - config_reader.gemspec
93
112
  - lib/config_reader.rb
94
- - lib/config_reader/magic_hash.rb
113
+ - lib/config_reader/config_hash.rb
95
114
  - lib/config_reader/version.rb
96
- - package.json
97
115
  - spec/config_reader_spec.rb
98
116
  - spec/no_key_no_error_config.rb
99
117
  - spec/sekrets_config.rb
100
118
  - spec/sekrets_config.yml.enc
101
- - spec/sekrets_ruby_3_2.yml
102
- - spec/sekrets_ruby_3_2.yml.enc
103
119
  - spec/spec_helper.rb
104
120
  - spec/test_config.rb
105
121
  - spec/test_config.yml
106
- - yarn.lock
107
122
  homepage: https://github.com/UnderpantsGnome/config_reader-gem
108
123
  licenses: []
109
- metadata: {}
110
- post_install_message: If you are are upgrading from a pre 2.x version, please see
111
- the configuration changes in the README https://github.com/UnderpantsGnome/config_reader-gem/blob/master/README.rdoc
124
+ metadata:
125
+ rubygems_mfa_required: 'true'
126
+ post_install_message: |
127
+ If you are are upgrading from a pre 2.x version,
128
+ please see the configuration changes in the
129
+ README https://github.com/UnderpantsGnome/config_reader-gem/blob/master/README.rdoc
112
130
  rdoc_options: []
113
131
  require_paths:
114
132
  - lib
@@ -123,17 +141,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
141
  - !ruby/object:Gem::Version
124
142
  version: '0'
125
143
  requirements: []
126
- rubygems_version: 3.3.26
144
+ rubygems_version: 3.5.11
127
145
  signing_key:
128
146
  specification_version: 4
129
147
  summary: Provides a way to manage environment specific configuration settings.
130
- test_files:
131
- - spec/config_reader_spec.rb
132
- - spec/no_key_no_error_config.rb
133
- - spec/sekrets_config.rb
134
- - spec/sekrets_config.yml.enc
135
- - spec/sekrets_ruby_3_2.yml
136
- - spec/sekrets_ruby_3_2.yml.enc
137
- - spec/spec_helper.rb
138
- - spec/test_config.rb
139
- - spec/test_config.yml
148
+ test_files: []
data/.deepsource.toml DELETED
@@ -1,4 +0,0 @@
1
- version = 1
2
-
3
- [[analyzers]]
4
- name = "ruby"
@@ -1,31 +0,0 @@
1
- name: Specs
2
-
3
- on:
4
- push:
5
- branches: [ "main" ]
6
- pull_request:
7
- branches: [ "main" ]
8
-
9
- permissions:
10
- contents: read
11
-
12
- jobs:
13
- test:
14
-
15
- runs-on: ubuntu-latest
16
- strategy:
17
- matrix:
18
- ruby-version: ['3.0', '3.1', '3.2']
19
-
20
- steps:
21
- - uses: actions/checkout@v3
22
- - name: Set up Ruby
23
- # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
24
- # change this to (see https://github.com/ruby/setup-ruby#versioning):
25
- # uses: ruby/setup-ruby@v1
26
- uses: ruby/setup-ruby@v1
27
- with:
28
- ruby-version: ${{ matrix.ruby-version }}
29
- bundler-cache: true # runs 'bundle install' and caches installed gems automatically
30
- - name: Run tests
31
- run: bundle exec rspec
data/.gitignore DELETED
@@ -1,3 +0,0 @@
1
- .bundle
2
- pkg
3
- *.gem
data/.nvmrc DELETED
@@ -1 +0,0 @@
1
- lts/Hydrogen
data/.prettierrc DELETED
@@ -1,6 +0,0 @@
1
- {
2
- "plugins": ["@prettier/plugin-ruby"],
3
- "editor.tabSize": 2,
4
- "editor.useTabStops": true,
5
- "files.trimTrailingWhitespace": true
6
- }
data/.rubocop.yml DELETED
@@ -1,64 +0,0 @@
1
- # https://docs.rubocop.org/en/latest/cops_layout/
2
-
3
- require: rubocop-rspec
4
-
5
- AllCops:
6
- Exclude:
7
- - "app/controllers/graphql_controller.rb"
8
- - "app/graphql/vivo_point_schema.rb"
9
- - "bin/**/*"
10
- - "config/**/*"
11
- - "db/**/*"
12
- - "lib/util.rb"
13
- - "node_modules/**/*"
14
- - "script/**/*"
15
- - "spec/**/*"
16
- TargetRubyVersion: 2.6
17
-
18
- Rails/UnknownEnv:
19
- Environments:
20
- - development
21
- - test
22
- - staging
23
- - uat
24
- - production
25
-
26
- Layout/MultilineMethodCallIndentation:
27
- EnforcedStyle: indented
28
-
29
- Metrics/AbcSize:
30
- Max: 20
31
-
32
- Metrics/BlockLength:
33
- ExcludedMethods:
34
- - "generate_jwt!"
35
- - "guard"
36
- - "included"
37
- - "namespace"
38
-
39
- Metrics/MethodLength:
40
- ExcludedMethods:
41
- - "generate_jwt!"
42
- - "add_resource_roles_to_user"
43
- Max: 15
44
-
45
- Style/StringLiterals:
46
- EnforcedStyle: double_quotes
47
-
48
- Style/AndOr:
49
- Enabled: false
50
-
51
- Style/Documentation:
52
- Enabled: false
53
-
54
- Style/MultilineMemoization:
55
- EnforcedStyle: braces
56
-
57
- Style/StringLiteralsInInterpolation:
58
- EnforcedStyle: double_quotes
59
-
60
- Style/FrozenStringLiteralComment:
61
- Enabled: false
62
-
63
- Style/YodaCondition:
64
- EnforcedStyle: require_for_equality_operators_only
data/.standard.yml DELETED
@@ -1,23 +0,0 @@
1
- default_ignores: false
2
- fix: true
3
- format: progress
4
- parallel: true
5
-
6
- ignore:
7
- - "db/schema.rb"
8
- - "vendor/**/*"
9
- - "test/**/*":
10
- - Layout/AlignHash
11
- - "**/*":
12
- - Layout/ArgumentAlignment
13
- - Layout/ArrayAlignment
14
- - Layout/BlockAlignment
15
- - Layout/ClosingHeredocIndentation
16
- - Layout/FirstArgumentIndentation
17
- - Layout/MultilineMethodCallIndentation
18
- - Layout/MultilineOperationIndentation
19
- - Layout/SpaceInsideHashLiteralBraces
20
- - Lint/AssignmentInCondition
21
- - Lint/ShadowedException
22
- - Style/MultilineMemoization
23
- - Style/RescueStandardError
data/.travis.yml DELETED
@@ -1,6 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - "2.3.8"
4
- - "2.4.5"
5
- - "2.5.3"
6
- - "2.6.1"
@@ -1,3 +0,0 @@
1
- {
2
- "cSpell.words": ["sekrets"]
3
- }
data/Gemfile DELETED
@@ -1,13 +0,0 @@
1
- source "http://rubygems.org"
2
-
3
- git_source(:github) { |repo| "https://github.com/#{repo}.git" }
4
-
5
- # Specify your gem's dependencies in config_reader.gemspec
6
- gemspec
7
-
8
- gem "sekrets", github: "UnderpantsGnome/sekrets", branch: "ruby-3-2-support"
9
-
10
- group :development do
11
- gem "prettier", "~> 4.0"
12
- gem "standard", "~> 1.29"
13
- end
data/Gemfile.lock DELETED
@@ -1,136 +0,0 @@
1
- GIT
2
- remote: https://github.com/UnderpantsGnome/sekrets.git
3
- revision: 9f939c7789e2ed03902db9534b9df5cc8030c365
4
- branch: ruby-3-2-support
5
- specs:
6
- sekrets (1.13.0)
7
- coerce (~> 0.0.3)
8
- fattr (~> 2.2)
9
- highline (~> 1.6)
10
- main (~> 6.1)
11
- map (~> 6.3)
12
-
13
- PATH
14
- remote: .
15
- specs:
16
- config_reader (2.0.4)
17
-
18
- GEM
19
- remote: http://rubygems.org/
20
- specs:
21
- abbrev (0.1.2)
22
- arrayfields (4.9.2)
23
- ast (2.4.2)
24
- chronic (0.10.2)
25
- coderay (1.1.3)
26
- coerce (0.0.8)
27
- chronic (>= 0.6.2)
28
- diff-lcs (1.5.0)
29
- fattr (2.4.0)
30
- haml (6.3.0)
31
- temple (>= 0.8.2)
32
- thor
33
- tilt
34
- highline (1.7.10)
35
- json (2.7.2)
36
- language_server-protocol (3.17.0.3)
37
- lint_roller (1.1.0)
38
- main (6.3.0)
39
- arrayfields (~> 4.9, >= 4.9.2)
40
- chronic (~> 0.10, >= 0.10.2)
41
- fattr (~> 2.4, >= 2.4.0)
42
- map (~> 6.6, >= 6.6.0)
43
- map (6.6.0)
44
- method_source (1.0.0)
45
- parallel (1.24.0)
46
- parser (3.3.1.0)
47
- ast (~> 2.4.1)
48
- racc
49
- prettier (4.0.4)
50
- syntax_tree (>= 4.0.1)
51
- syntax_tree-haml (>= 2.0.0)
52
- syntax_tree-rbs (>= 0.2.0)
53
- prettier_print (1.2.1)
54
- pry (0.14.2)
55
- coderay (~> 1.1)
56
- method_source (~> 1.0)
57
- racc (1.7.3)
58
- rainbow (3.1.1)
59
- rake (13.0.6)
60
- rbs (3.4.4)
61
- abbrev
62
- regexp_parser (2.9.0)
63
- rexml (3.2.8)
64
- strscan (>= 3.0.9)
65
- rspec (3.12.0)
66
- rspec-core (~> 3.12.0)
67
- rspec-expectations (~> 3.12.0)
68
- rspec-mocks (~> 3.12.0)
69
- rspec-core (3.12.1)
70
- rspec-support (~> 3.12.0)
71
- rspec-expectations (3.12.2)
72
- diff-lcs (>= 1.2.0, < 2.0)
73
- rspec-support (~> 3.12.0)
74
- rspec-mocks (3.12.3)
75
- diff-lcs (>= 1.2.0, < 2.0)
76
- rspec-support (~> 3.12.0)
77
- rspec-support (3.12.0)
78
- rubocop (1.62.1)
79
- json (~> 2.3)
80
- language_server-protocol (>= 3.17.0)
81
- parallel (~> 1.10)
82
- parser (>= 3.3.0.2)
83
- rainbow (>= 2.2.2, < 4.0)
84
- regexp_parser (>= 1.8, < 3.0)
85
- rexml (>= 3.2.5, < 4.0)
86
- rubocop-ast (>= 1.31.1, < 2.0)
87
- ruby-progressbar (~> 1.7)
88
- unicode-display_width (>= 2.4.0, < 3.0)
89
- rubocop-ast (1.31.3)
90
- parser (>= 3.3.1.0)
91
- rubocop-performance (1.20.2)
92
- rubocop (>= 1.48.1, < 2.0)
93
- rubocop-ast (>= 1.30.0, < 2.0)
94
- ruby-progressbar (1.13.0)
95
- standard (1.35.1)
96
- language_server-protocol (~> 3.17.0.2)
97
- lint_roller (~> 1.0)
98
- rubocop (~> 1.62.0)
99
- standard-custom (~> 1.0.0)
100
- standard-performance (~> 1.3)
101
- standard-custom (1.0.2)
102
- lint_roller (~> 1.0)
103
- rubocop (~> 1.50)
104
- standard-performance (1.3.1)
105
- lint_roller (~> 1.1)
106
- rubocop-performance (~> 1.20.2)
107
- strscan (3.1.0)
108
- syntax_tree (6.2.0)
109
- prettier_print (>= 1.2.0)
110
- syntax_tree-haml (4.0.3)
111
- haml (>= 5.2)
112
- prettier_print (>= 1.2.1)
113
- syntax_tree (>= 6.0.0)
114
- syntax_tree-rbs (1.0.0)
115
- prettier_print
116
- rbs
117
- syntax_tree (>= 2.0.1)
118
- temple (0.10.3)
119
- thor (1.3.1)
120
- tilt (2.3.0)
121
- unicode-display_width (2.5.0)
122
-
123
- PLATFORMS
124
- ruby
125
-
126
- DEPENDENCIES
127
- config_reader!
128
- prettier (~> 4.0)
129
- pry
130
- rake
131
- rspec (~> 3.9)
132
- sekrets!
133
- standard (~> 1.29)
134
-
135
- BUNDLED WITH
136
- 2.3.13
data/License.txt DELETED
@@ -1,20 +0,0 @@
1
- Copyright (c) 2008 Michael Moen
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile DELETED
@@ -1,3 +0,0 @@
1
- require 'bundler/gem_tasks'
2
-
3
- task :default => :spec
@@ -1 +0,0 @@
1
- ecd65abf0eef2de025cf028a84de56bddeb3f6fae18c78565e8f647a3bc79eec777b542c5de26bb74c1c5f7b5cf2ad6eaf71e8061f3729141ac6d38e48367aa7
@@ -1,25 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path('../lib', __FILE__)
3
- require 'config_reader/version'
4
-
5
- Gem::Specification.new do |s|
6
- s.name = 'config_reader'
7
- s.version = ConfigReader::VERSION
8
- s.authors = ['Michael Moen']
9
- s.email = ['michael@underpantsgnome.com']
10
- s.homepage = 'https://github.com/UnderpantsGnome/config_reader-gem'
11
- s.summary = %q{Provides a way to manage environment specific configuration settings.}
12
- s.description = %q{Provides a way to manage environment specific configuration settings.}
13
-
14
- s.files = `git ls-files`.split("\n")
15
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
17
- s.require_paths = ['lib']
18
-
19
- s.add_development_dependency 'rake'
20
- s.add_development_dependency 'rspec', '~> 3.9'
21
- s.add_development_dependency 'sekrets', '~> 1'
22
- s.add_development_dependency 'pry'
23
-
24
- s.post_install_message = "If you are are upgrading from a pre 2.x version, please see the configuration changes in the README https://github.com/UnderpantsGnome/config_reader-gem/blob/master/README.rdoc"
25
- end
data/package.json DELETED
@@ -1,6 +0,0 @@
1
- {
2
- "devDependencies": {
3
- "@prettier/plugin-ruby": "^4.0.4",
4
- "prettier": "^3.2.5"
5
- }
6
- }
@@ -1,9 +0,0 @@
1
- ---
2
- defaults:
3
- app_name: default_app_sekret
4
- sekret_only: yup
5
- nested_key:
6
- value: test_sekret
7
-
8
- test:
9
- app_name: test_app_sekret
@@ -1,2 +0,0 @@
1
- Ϧ3W|dvd�؂�����Q�Div�ň5p2vr3,��֛��mLC:Ϣ��F�M��Wn�c׿j+�<�%�]��hg�`4�� �ޣ�K%������)8�%Pee>�g���~
2
- %�U\�(���+THDx�͇�2�
data/yarn.lock DELETED
@@ -1,13 +0,0 @@
1
- # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2
- # yarn lockfile v1
3
-
4
-
5
- "@prettier/plugin-ruby@^4.0.4":
6
- version "4.0.4"
7
- resolved "https://registry.yarnpkg.com/@prettier/plugin-ruby/-/plugin-ruby-4.0.4.tgz#73d85fc2a1731a3f62b57ac3116cf1c234027cb6"
8
- integrity sha512-lCpvfS/dQU5WrwN3AQ5vR8qrvj2h5gE41X08NNzAAXvHdM4zwwGRcP2sHSxfu6n6No+ljWCVx95NvJPFTTjCTg==
9
-
10
- prettier@^3.2.5:
11
- version "3.2.5"
12
- resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.5.tgz#e52bc3090586e824964a8813b09aba6233b28368"
13
- integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==