a9n 1.2.2 → 1.3.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: c7f7b8ebfc25a26c798539d1b4ec99285fcd88024d9439c3246c0a8816be3085
4
- data.tar.gz: 1e9b04d982e0339fd0fbbe99d8e4dc50890884489b929aab95982bf102697f0b
3
+ metadata.gz: b0da5ac2d75d091074ef12071bf259a5d755791f2968471b31174a0f5f6c0647
4
+ data.tar.gz: cc05f6247a6250bc60b417b57095ce99b396a6b5f965ef527614ae51269b516e
5
5
  SHA512:
6
- metadata.gz: 9d24148fc5d1d9599e77b63aa115b59b6e02d6a65043df4dc33bc20222a6812e7fa0580f7067768ca9a3930a89013dd1bf1d9f5d38f26be28d1545911c8abcef
7
- data.tar.gz: 32d0d0304f301e25bca12fcfc7afa29f44144a6323f9cfaec4de1652eac7c0dfd04d49c43939f91aa0b160f9d32521089dd68c06bd0031636129b5c24526c2de
6
+ metadata.gz: fc1def7f69765f50949b090605a35d644052f096569297def81cb5d54642b99c56f2544f4442057e6b23497edd16cc2b70a575ea0f3c5095ec8a6094d0db156b
7
+ data.tar.gz: '0863b2967ea3c0a11df4a6b73e6e17df3d4dcb453e3e91d25020d6ab356905f942b512971ac2de84f387796b454214c7dbaad3c08551ffcbddd3a459e3d2f0e8'
@@ -0,0 +1,25 @@
1
+ name: Ruby
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+ pull_request:
7
+ branches: [ main ]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ ruby-version: ['2.7', '3.0', '3.1']
15
+
16
+ steps:
17
+ - uses: actions/checkout@v2
18
+ - name: Set up Ruby
19
+ uses: ruby/setup-ruby@v1
20
+ with:
21
+ ruby-version: ${{ matrix.ruby-version }}
22
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
23
+
24
+ - name: Run tests
25
+ run: bundle exec rake ci
data/Gemfile.lock CHANGED
@@ -1,70 +1,69 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- a9n (1.2.2)
4
+ a9n (1.3.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- ast (2.4.1)
10
- codeclimate-test-reporter (1.0.7)
11
- simplecov
9
+ ast (2.4.2)
12
10
  coderay (1.1.3)
13
- diff-lcs (1.3)
14
- docile (1.3.2)
11
+ diff-lcs (1.5.0)
15
12
  method_source (1.0.0)
16
- parallel (1.19.1)
17
- parser (2.7.1.3)
18
- ast (~> 2.4.0)
19
- pry (0.13.1)
13
+ parallel (1.22.1)
14
+ parser (3.1.1.0)
15
+ ast (~> 2.4.1)
16
+ pry (0.14.1)
20
17
  coderay (~> 1.1)
21
18
  method_source (~> 1.0)
22
- rainbow (3.0.0)
23
- rake (13.0.1)
24
- regexp_parser (1.7.1)
25
- rexml (3.2.4)
26
- rspec (3.9.0)
27
- rspec-core (~> 3.9.0)
28
- rspec-expectations (~> 3.9.0)
29
- rspec-mocks (~> 3.9.0)
30
- rspec-core (3.9.2)
31
- rspec-support (~> 3.9.3)
32
- rspec-expectations (3.9.2)
19
+ rainbow (3.1.1)
20
+ rake (13.0.6)
21
+ regexp_parser (2.2.1)
22
+ rexml (3.2.5)
23
+ rspec (3.11.0)
24
+ rspec-core (~> 3.11.0)
25
+ rspec-expectations (~> 3.11.0)
26
+ rspec-mocks (~> 3.11.0)
27
+ rspec-core (3.11.0)
28
+ rspec-support (~> 3.11.0)
29
+ rspec-expectations (3.11.0)
33
30
  diff-lcs (>= 1.2.0, < 2.0)
34
- rspec-support (~> 3.9.0)
35
- rspec-mocks (3.9.1)
31
+ rspec-support (~> 3.11.0)
32
+ rspec-mocks (3.11.1)
36
33
  diff-lcs (>= 1.2.0, < 2.0)
37
- rspec-support (~> 3.9.0)
38
- rspec-support (3.9.3)
39
- rubocop (0.85.1)
34
+ rspec-support (~> 3.11.0)
35
+ rspec-support (3.11.0)
36
+ rubocop (1.26.1)
40
37
  parallel (~> 1.10)
41
- parser (>= 2.7.0.1)
38
+ parser (>= 3.1.0.0)
42
39
  rainbow (>= 2.2.2, < 4.0)
43
- regexp_parser (>= 1.7)
40
+ regexp_parser (>= 1.8, < 3.0)
44
41
  rexml
45
- rubocop-ast (>= 0.0.3)
42
+ rubocop-ast (>= 1.16.0, < 2.0)
46
43
  ruby-progressbar (~> 1.7)
47
- unicode-display_width (>= 1.4.0, < 2.0)
48
- rubocop-ast (0.0.3)
49
- parser (>= 2.7.0.1)
50
- ruby-progressbar (1.10.1)
51
- simplecov (0.18.5)
52
- docile (~> 1.1)
53
- simplecov-html (~> 0.11)
54
- simplecov-html (0.12.2)
55
- unicode-display_width (1.7.0)
44
+ unicode-display_width (>= 1.4.0, < 3.0)
45
+ rubocop-ast (1.16.0)
46
+ parser (>= 3.1.1.0)
47
+ rubocop-rake (0.6.0)
48
+ rubocop (~> 1.0)
49
+ rubocop-rspec (2.9.0)
50
+ rubocop (~> 1.19)
51
+ ruby-progressbar (1.11.0)
52
+ unicode-display_width (2.1.0)
56
53
 
57
54
  PLATFORMS
58
- ruby
55
+ x86_64-darwin-20
56
+ x86_64-darwin-21
57
+ x86_64-linux
59
58
 
60
59
  DEPENDENCIES
61
60
  a9n!
62
- codeclimate-test-reporter
63
61
  pry
64
62
  rake
65
63
  rspec
66
64
  rubocop
67
- simplecov
65
+ rubocop-rake
66
+ rubocop-rspec
68
67
 
69
68
  BUNDLED WITH
70
- 2.0.2
69
+ 2.3.7
data/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
  [codeclimate]: https://codeclimate.com/github/knapo/a9n
11
11
  [coverage]: https://codeclimate.com/github/knapo/a9n
12
12
 
13
- A9n is a simple tool to keep ruby/rails apps configuration maintanable and verifiable. It supports Rails 4+ and Ruby 2.5+.
13
+ A9n is a simple tool to keep ruby/rails apps configuration maintanable and verifiable. It supports Rails 6+ and Ruby 2.7+.
14
14
 
15
15
  Why it's named a9n? It's a numeronym for application (where 9 stands for the number of letters between the first **a** and last **n**, similar to i18n or l10n).
16
16
 
data/Rakefile CHANGED
@@ -5,4 +5,7 @@ require 'rubocop/rake_task'
5
5
  RSpec::Core::RakeTask.new(:spec)
6
6
  RuboCop::RakeTask.new
7
7
 
8
- task default: %i[rubocop spec]
8
+ desc 'Default task to run on ci'
9
+ task ci: %i[spec rubocop]
10
+
11
+ task default: %i[spec rubocop:auto_correct]
data/a9n.gemspec CHANGED
@@ -12,6 +12,7 @@ Gem::Specification.new do |spec|
12
12
 
13
13
  spec.metadata['homepage_uri'] = 'https://github.com/knapo/a9n'
14
14
  spec.metadata['source_code_uri'] = 'https://github.com/knapo/a9n'
15
+ spec.metadata['rubygems_mfa_required'] = 'true'
15
16
 
16
17
  spec.files = Dir.chdir(__dir__) do
17
18
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(bin/|spec/|test_app/|\.rub)}) }
@@ -20,12 +21,12 @@ Gem::Specification.new do |spec|
20
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
22
  spec.require_paths = ['lib']
22
23
 
23
- spec.required_ruby_version = '>= 2.5'
24
+ spec.required_ruby_version = '>= 2.7'
24
25
 
25
- spec.add_development_dependency 'codeclimate-test-reporter'
26
26
  spec.add_development_dependency 'pry'
27
27
  spec.add_development_dependency 'rake'
28
28
  spec.add_development_dependency 'rspec'
29
29
  spec.add_development_dependency 'rubocop'
30
- spec.add_development_dependency 'simplecov'
30
+ spec.add_development_dependency 'rubocop-rake'
31
+ spec.add_development_dependency 'rubocop-rspec'
31
32
  end
@@ -1,5 +1,5 @@
1
1
  if defined?(Capistrano::Configuration.instance)
2
- require 'a9n/capistrano/ver2x.rb'
2
+ require 'a9n/capistrano/ver2x'
3
3
  else
4
4
  load File.expand_path('capistrano/tasks.cap', __dir__)
5
5
  end
data/lib/a9n/loader.rb CHANGED
@@ -30,7 +30,7 @@ module A9n
30
30
  def load_yml(file_path, scope, env)
31
31
  return nil unless File.exist?(file_path)
32
32
 
33
- yml = YAML.load(ERB.new(File.read(file_path)).result)
33
+ yml = A9n::YamlLoader.load(file_path)
34
34
 
35
35
  if no_known_namespaces?(yml)
36
36
  prepare_hash(yml, scope).freeze
data/lib/a9n/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module A9n
2
- VERSION = '1.2.2'.freeze
2
+ VERSION = '1.3.1'.freeze
3
3
  end
@@ -0,0 +1,8 @@
1
+ module A9n
2
+ class YamlLoader
3
+ def self.load(file_path)
4
+ kwargs = RUBY_VERSION >= '3.1.0' ? { aliases: true } : {}
5
+ YAML.load(ERB.new(File.read(file_path)).result, **kwargs)
6
+ end
7
+ end
8
+ end
data/lib/a9n.rb CHANGED
@@ -10,6 +10,7 @@ require 'a9n/struct'
10
10
  require 'a9n/scope'
11
11
  require 'a9n/ext/string_inquirer'
12
12
  require 'a9n/ext/hash'
13
+ require 'a9n/yaml_loader'
13
14
  require 'a9n/loader'
14
15
 
15
16
  module A9n
@@ -25,9 +26,9 @@ module A9n
25
26
  def env
26
27
  @env ||= ::A9n::StringInquirer.new(
27
28
  app_env ||
28
- env_var('RAILS_ENV') ||
29
- env_var('RACK_ENV') ||
30
29
  env_var('APP_ENV') ||
30
+ env_var('RACK_ENV') ||
31
+ env_var('RAILS_ENV') ||
31
32
  raise(UnknownEnvError)
32
33
  )
33
34
  end
@@ -113,7 +114,7 @@ module A9n
113
114
  end
114
115
 
115
116
  def logger
116
- @logger ||= ::Logger.new(STDOUT, level: fetch(:log_level, DEFAULT_LOG_LEVEL))
117
+ @logger ||= ::Logger.new($stdout, level: fetch(:log_level, DEFAULT_LOG_LEVEL))
117
118
  end
118
119
 
119
120
  def method_missing(name, *args)
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: a9n
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Krzysztof Knapik
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-15 00:00:00.000000000 Z
11
+ date: 2022-04-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: codeclimate-test-reporter
14
+ name: pry
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: pry
28
+ name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rake
42
+ name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rspec
56
+ name: rubocop
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -67,7 +67,7 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rubocop
70
+ name: rubocop-rake
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
@@ -81,7 +81,7 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: simplecov
84
+ name: rubocop-rspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="
@@ -94,16 +94,16 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
- description:
97
+ description:
98
98
  email:
99
99
  - knapo@knapo.net
100
100
  executables: []
101
101
  extensions: []
102
102
  extra_rdoc_files: []
103
103
  files:
104
+ - ".github/workflows/ruby.yml"
104
105
  - ".gitignore"
105
106
  - ".rspec"
106
- - ".travis.yml"
107
107
  - Gemfile
108
108
  - Gemfile.lock
109
109
  - LICENSE
@@ -121,13 +121,15 @@ files:
121
121
  - lib/a9n/scope.rb
122
122
  - lib/a9n/struct.rb
123
123
  - lib/a9n/version.rb
124
+ - lib/a9n/yaml_loader.rb
124
125
  homepage: https://github.com/knapo/a9n
125
126
  licenses:
126
127
  - MIT
127
128
  metadata:
128
129
  homepage_uri: https://github.com/knapo/a9n
129
130
  source_code_uri: https://github.com/knapo/a9n
130
- post_install_message:
131
+ rubygems_mfa_required: 'true'
132
+ post_install_message:
131
133
  rdoc_options: []
132
134
  require_paths:
133
135
  - lib
@@ -135,15 +137,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
135
137
  requirements:
136
138
  - - ">="
137
139
  - !ruby/object:Gem::Version
138
- version: '2.5'
140
+ version: '2.7'
139
141
  required_rubygems_version: !ruby/object:Gem::Requirement
140
142
  requirements:
141
143
  - - ">="
142
144
  - !ruby/object:Gem::Version
143
145
  version: '0'
144
146
  requirements: []
145
- rubygems_version: 3.0.6
146
- signing_key:
147
+ rubygems_version: 3.3.3
148
+ signing_key:
147
149
  specification_version: 4
148
150
  summary: a9n - ruby/rails apps configuration manager
149
151
  test_files: []
data/.travis.yml DELETED
@@ -1,14 +0,0 @@
1
- ---
2
- sudo: false
3
- language: ruby
4
- cache: bundler
5
- rvm:
6
- - 2.5
7
- - 2.6
8
- - 2.7
9
- before_install: gem install bundler
10
- script:
11
- - bundle exec rake
12
- addons:
13
- code_climate:
14
- repo_token: 42ad3aef34fcfd740fc41ae4cf16723fb11d6535