runger_config 2.6.1 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/README.md +27 -27
- data/lib/anyway/config.rb +11 -15
- data/lib/anyway/env.rb +0 -1
- data/lib/anyway/loaders/base.rb +3 -3
- data/lib/anyway/loaders/doppler.rb +0 -2
- data/lib/anyway/loaders/env.rb +0 -2
- data/lib/anyway/loaders/yaml.rb +0 -1
- data/lib/anyway/loaders.rb +1 -3
- data/lib/anyway/rails/autoload.rb +0 -2
- data/lib/anyway/rails/loaders/credentials.rb +0 -2
- data/lib/anyway/rails/loaders/secrets.rb +0 -2
- data/lib/anyway/tracing.rb +14 -14
- data/lib/anyway/version.rb +1 -1
- data/lib/anyway_config.rb +0 -5
- metadata +12 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 769d4ae4e5cf48c70701615843b3e742d33512032bba7d3afa8ae11da226167d
|
4
|
+
data.tar.gz: 907144a5f9e471c6b7acc9160c9190b7c233df2db0506e11b62c992078ba9db9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ae86779e72a7e88f0a1d74818204831569b6aed3f1a66962cd696c6681ecfd3a419304431da61fe843f68975bac8bd65db08969f123476d2825b2c8e4b57026
|
7
|
+
data.tar.gz: e4ef30331ed5ea04a1503df074d27fadef00c94f1dff99540e5588d11f3152d49c09724acc8ad1b7042f7b608ba894ca3869e48a0090ea1251ee2176395bca9d
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## v3.0.0 (2023-11-19)
|
4
|
+
|
5
|
+
- [BREAKING] Remove ruby-next and support for older Ruby versions
|
6
|
+
|
7
|
+
## v2.7.0 (2023-11-19)
|
8
|
+
|
9
|
+
- Support name inference for nested classes
|
10
|
+
|
1
11
|
## v2.6.1 (2023-11-19)
|
2
12
|
|
3
13
|
- Update GitHub links from palkan to davidrunger
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
[![Cult Of Martians](http://cultofmartians.com/assets/badges/badge.svg)](https://cultofmartians.com/tasks/anyway-config-options-parse.html#task)
|
2
|
-
[![Gem Version](https://badge.fury.io/rb/
|
3
|
-
[![JRuby Build](https://github.com/
|
4
|
-
[![TruffleRuby Build](https://github.com/
|
2
|
+
[![Gem Version](https://badge.fury.io/rb/runger_config.svg)](https://rubygems.org/gems/runger_config) [![Build](https://github.com/davidrunger/runger_config/workflows/Build/badge.svg)](https://github.com/davidrunger/runger_config/actions)
|
3
|
+
[![JRuby Build](https://github.com/davidrunger/runger_config/workflows/JRuby%20Build/badge.svg)](https://github.com/davidrunger/runger_config/actions)
|
4
|
+
[![TruffleRuby Build](https://github.com/davidrunger/runger_config/workflows/TruffleRuby%20Build/badge.svg)](https://github.com/davidrunger/runger_config/actions)
|
5
5
|
|
6
6
|
# Anyway Config
|
7
7
|
|
@@ -20,14 +20,14 @@ For application developers, Anyway Config could be useful to:
|
|
20
20
|
- **Free code of ENV/credentials/secrets dependency** and use configuration classes instead—your code should not rely on configuration data sources.
|
21
21
|
|
22
22
|
**NOTE:** this readme shows documentation for 2.x version.
|
23
|
-
For version 1.x see the [1-4-stable branch](https://github.com/
|
23
|
+
For version 1.x see the [1-4-stable branch](https://github.com/davidrunger/runger_config/tree/1-4-stable).
|
24
24
|
|
25
|
-
<a href="https://evilmartians.com/?utm_source=
|
25
|
+
<a href="https://evilmartians.com/?utm_source=runger_config">
|
26
26
|
<img src="https://evilmartians.com/badges/sponsored-by-evil-martians.svg" alt="Sponsored by Evil Martians" width="236" height="54"></a>
|
27
27
|
|
28
28
|
## Links
|
29
29
|
|
30
|
-
- [Anyway Config: Keep your Ruby configuration sane](https://evilmartians.com/chronicles/anyway-config-keep-your-ruby-configuration-sane?utm_source=
|
30
|
+
- [Anyway Config: Keep your Ruby configuration sane](https://evilmartians.com/chronicles/anyway-config-keep-your-ruby-configuration-sane?utm_source=runger_config)
|
31
31
|
|
32
32
|
## Table of contents
|
33
33
|
|
@@ -73,7 +73,7 @@ end
|
|
73
73
|
|
74
74
|
Using Ruby classes to represent configuration allows you to add helper methods and computed parameters easily, makes the configuration **testable**.
|
75
75
|
|
76
|
-
The `
|
76
|
+
The `runger_config` gem takes care of loading parameters from **different sources** (YAML, credentials/secrets, environment variables, etc.). Internally, we use a _pipeline pattern_ and provide the [Loaders API](#data-loaders) to manage and [extend](#custom-loaders) its functionality.
|
77
77
|
|
78
78
|
Check out the libraries using Anyway Config for more examples:
|
79
79
|
|
@@ -81,7 +81,7 @@ Check out the libraries using Anyway Config for more examples:
|
|
81
81
|
- [AnyCable](https://github.com/anycable/anycable)
|
82
82
|
- [Sniffer](https://github.com/aderyabin/sniffer)
|
83
83
|
- [Blood Contracts](https://github.com/sclinede/blood_contracts)
|
84
|
-
- [and others](https://github.com/
|
84
|
+
- [and others](https://github.com/davidrunger/runger_config/network/dependents).
|
85
85
|
|
86
86
|
## Installation
|
87
87
|
|
@@ -91,7 +91,7 @@ Adding to a gem:
|
|
91
91
|
# my-cool-gem.gemspec
|
92
92
|
Gem::Specification.new do |spec|
|
93
93
|
# ...
|
94
|
-
spec.add_dependency "
|
94
|
+
spec.add_dependency "runger_config", ">= 2.0.0"
|
95
95
|
# ...
|
96
96
|
end
|
97
97
|
```
|
@@ -100,7 +100,7 @@ Or adding to your project:
|
|
100
100
|
|
101
101
|
```ruby
|
102
102
|
# Gemfile
|
103
|
-
gem "
|
103
|
+
gem "runger_config", "~> 2.0"
|
104
104
|
```
|
105
105
|
|
106
106
|
### Supported Ruby versions
|
@@ -118,7 +118,7 @@ you can define a schema for your configuration, provide defaults, add validation
|
|
118
118
|
Anyway Config provides a base class to inherit from with a few DSL methods:
|
119
119
|
|
120
120
|
```ruby
|
121
|
-
require "
|
121
|
+
require "runger_config"
|
122
122
|
|
123
123
|
module MyCoolGem
|
124
124
|
class Config < Anyway::Config
|
@@ -372,7 +372,7 @@ development:
|
|
372
372
|
|
373
373
|
### Multi-env configuration
|
374
374
|
|
375
|
-
_⚡️ This feature will be turned on by default in the future releases. You can turn it on now via `config.
|
375
|
+
_⚡️ This feature will be turned on by default in the future releases. You can turn it on now via `config.runger_config.future.use :unwrap_known_environments`._
|
376
376
|
|
377
377
|
If the YML does not have keys that are one of the "known" Rails environments (development, production, test)—the same configuration will be available in all environments, similar to non-Rails behavior:
|
378
378
|
|
@@ -385,7 +385,7 @@ port: 3002
|
|
385
385
|
To extend the list of known environments, use the setting in the relevant part of your Rails code:
|
386
386
|
|
387
387
|
```ruby
|
388
|
-
Rails.application.config.
|
388
|
+
Rails.application.config.runger_config.known_environments << "staging"
|
389
389
|
```
|
390
390
|
|
391
391
|
If your YML defines at least a single "environmental" top-level, you _have_ to separate all your settings per-environment. You can't mix and match:
|
@@ -400,7 +400,7 @@ port: 3002 # This value will not be loaded at all
|
|
400
400
|
To provide default values you can use YAML anchors, but they do not deep-merge settings, so Anyway Config provides a way to define a special top-level key for default values like this:
|
401
401
|
|
402
402
|
```ruby
|
403
|
-
config.
|
403
|
+
config.runger_config.default_environmental_key = "default"
|
404
404
|
```
|
405
405
|
|
406
406
|
After that, Anyway Config will start reading settings under the `"default"` key and then merge environmental settings into them.
|
@@ -419,17 +419,17 @@ staging:
|
|
419
419
|
|
420
420
|
You can specify the lookup path for YAML files in one of the following ways:
|
421
421
|
|
422
|
-
- By setting `config.
|
422
|
+
- By setting `config.runger_config.default_config_path` to a target directory path:
|
423
423
|
|
424
424
|
```ruby
|
425
|
-
config.
|
426
|
-
config.
|
425
|
+
config.runger_config.default_config_path = "/etc/configs"
|
426
|
+
config.runger_config.default_config_path = Rails.root.join("etc", "configs")
|
427
427
|
```
|
428
428
|
|
429
|
-
- By setting `config.
|
429
|
+
- By setting `config.runger_config.default_config_path` to a Proc, which accepts a config name and returns the path:
|
430
430
|
|
431
431
|
```ruby
|
432
|
-
config.
|
432
|
+
config.runger_config.default_config_path = ->(name) { Rails.root.join("data", "configs", "#{name}.yml") }
|
433
433
|
```
|
434
434
|
|
435
435
|
- By overriding a specific config YML file path via the `<NAME>_CONF` env variable, e.g., `MYCOOLGEM_CONF=path/to/cool.yml`
|
@@ -494,13 +494,13 @@ You can configure the configs folder path:
|
|
494
494
|
|
495
495
|
```ruby
|
496
496
|
# The path must be relative to Rails root
|
497
|
-
config.
|
497
|
+
config.runger_config.autoload_static_config_path = "path/to/configs"
|
498
498
|
```
|
499
499
|
|
500
500
|
**NOTE:** Configs loaded from the `autoload_static_config_path` are **not reloaded in development**. We call them _static_. So, it makes sense to keep only configs necessary for initialization in this folder. Other configs, _dynamic_, could be stored in `app/configs`.
|
501
|
-
Or you can store everything in `app/configs` by setting `config.
|
501
|
+
Or you can store everything in `app/configs` by setting `config.runger_config.autoload_static_config_path = "app/configs"`.
|
502
502
|
|
503
|
-
**NOTE 2**: Since _static_ configs are loaded before initializers, it's not possible to use custom inflection Rules (usually defined in `config/initializers/inflections.rb`) to resolve constant names from files. If you rely on custom inflection rules (see, for example, [#81](https://github.com/
|
503
|
+
**NOTE 2**: Since _static_ configs are loaded before initializers, it's not possible to use custom inflection Rules (usually defined in `config/initializers/inflections.rb`) to resolve constant names from files. If you rely on custom inflection rules (see, for example, [#81](https://github.com/davidrunger/runger_config/issues/81)), we recommend configuration Rails inflector before initialization as well:
|
504
504
|
|
505
505
|
```ruby
|
506
506
|
# config/application.rb
|
@@ -549,7 +549,7 @@ Would you like to generate a heroku.yml file? (Y/n) n
|
|
549
549
|
You can also specify the `--app` option to put the newly created class into `app/configs` folder.
|
550
550
|
Alternatively, you can call `rails g anyway:app_config name param1 param2 ...`.
|
551
551
|
|
552
|
-
**NOTE:** The generated `ApplicationConfig` class uses a singleton pattern along with `delegate_missing_to` to re-use the same instance across the application. However, the delegation can lead to unexpected behaviour and break Anyway Config internals if you have attributes named as `Anyway::Config` class methods. See [#120](https://github.com/
|
552
|
+
**NOTE:** The generated `ApplicationConfig` class uses a singleton pattern along with `delegate_missing_to` to re-use the same instance across the application. However, the delegation can lead to unexpected behaviour and break Anyway Config internals if you have attributes named as `Anyway::Config` class methods. See [#120](https://github.com/davidrunger/runger_config/issues/120).
|
553
553
|
|
554
554
|
### Loading Anyway Config before Rails
|
555
555
|
|
@@ -745,7 +745,7 @@ config at this location, too.
|
|
745
745
|
|
746
746
|
Local configs are meant for using in development and only loaded if `Anyway::Settings.use_local_files` is `true` (which is true by default if `RACK_ENV` or `RAILS_ENV` env variable is equal to `"development"`).
|
747
747
|
|
748
|
-
**NOTE:** in Rails apps you can use `Rails.application.configuration.
|
748
|
+
**NOTE:** in Rails apps you can use `Rails.application.configuration.runger_config.use_local_files`.
|
749
749
|
|
750
750
|
Don't forget to add `*.local.yml` (and `config/credentials/local.*`) to your `.gitignore`.
|
751
751
|
|
@@ -904,7 +904,7 @@ conf.to_source_trace["host"]
|
|
904
904
|
#=> {type: :user, called_from: "/path/to/caller.rb:15"}
|
905
905
|
```
|
906
906
|
|
907
|
-
You can disable tracing functionality by setting `Anyway::Settings.tracing_enabled = false` or `config.
|
907
|
+
You can disable tracing functionality by setting `Anyway::Settings.tracing_enabled = false` or `config.runger_config.tracing_enabled = false` in Rails.
|
908
908
|
|
909
909
|
### Pretty print
|
910
910
|
|
@@ -1059,7 +1059,7 @@ To use them with Steep, add the following your `Steepfile`:
|
|
1059
1059
|
```ruby
|
1060
1060
|
library "pathname"
|
1061
1061
|
library "optparse"
|
1062
|
-
library "
|
1062
|
+
library "runger_config"
|
1063
1063
|
```
|
1064
1064
|
|
1065
1065
|
We also provide an API to generate a type signature for your config class:
|
@@ -1114,7 +1114,7 @@ Yeah, a lot of annotations 😞 Welcome to the type-safe world!
|
|
1114
1114
|
|
1115
1115
|
## Contributing
|
1116
1116
|
|
1117
|
-
Bug reports and pull requests are welcome on GitHub at [https://github.com/
|
1117
|
+
Bug reports and pull requests are welcome on GitHub at [https://github.com/davidrunger/runger_config](https://github.com/davidrunger/runger_config).
|
1118
1118
|
|
1119
1119
|
## License
|
1120
1120
|
|
data/lib/anyway/config.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "active_support/all"
|
3
4
|
require "anyway/optparse_config"
|
4
5
|
require "anyway/dynamic_config"
|
5
6
|
|
6
7
|
module Anyway # :nodoc:
|
7
|
-
using RubyNext
|
8
8
|
using Anyway::Ext::DeepDup
|
9
9
|
using Anyway::Ext::DeepFreeze
|
10
10
|
using Anyway::Ext::Hash
|
@@ -12,7 +12,7 @@ module Anyway # :nodoc:
|
|
12
12
|
|
13
13
|
using(Module.new do
|
14
14
|
refine Object do
|
15
|
-
def vm_object_id
|
15
|
+
def vm_object_id = (object_id << 1).to_s(16)
|
16
16
|
end
|
17
17
|
end)
|
18
18
|
|
@@ -185,7 +185,7 @@ module Anyway # :nodoc:
|
|
185
185
|
end
|
186
186
|
end
|
187
187
|
|
188
|
-
def explicit_config_name?
|
188
|
+
def explicit_config_name? = !explicit_config_name.nil?
|
189
189
|
|
190
190
|
def env_prefix(val = nil)
|
191
191
|
return (@env_prefix = val.to_s.upcase) unless val.nil?
|
@@ -211,7 +211,7 @@ module Anyway # :nodoc:
|
|
211
211
|
end
|
212
212
|
end
|
213
213
|
|
214
|
-
def new_empty_config
|
214
|
+
def new_empty_config = {}
|
215
215
|
|
216
216
|
def coerce_types(mapping)
|
217
217
|
Utils.deep_merge!(coercion_mapping, mapping)
|
@@ -292,16 +292,12 @@ module Anyway # :nodoc:
|
|
292
292
|
"via `config_name :my_config`"
|
293
293
|
end
|
294
294
|
|
295
|
-
|
296
|
-
# - SomeModule::Config => "some_module"
|
297
|
-
# - SomeConfig => "some"
|
298
|
-
unless name =~ /^(\w+)(::)?Config$/
|
295
|
+
unless name.underscore.gsub("/", "_") =~ /(\w+)_config\z/
|
299
296
|
raise "Couldn't infer config name, please, specify it explicitly " \
|
300
297
|
"via `config_name :my_config`"
|
301
298
|
end
|
302
299
|
|
303
|
-
|
304
|
-
Regexp.last_match[1].tap(&:downcase!)
|
300
|
+
Regexp.last_match[1].delete_suffix("_config").tap(&:downcase!)
|
305
301
|
end
|
306
302
|
|
307
303
|
def validate_param_names!(names)
|
@@ -389,16 +385,16 @@ module Anyway # :nodoc:
|
|
389
385
|
self
|
390
386
|
end
|
391
387
|
|
392
|
-
def load_from_sources(base_config, **
|
388
|
+
def load_from_sources(base_config, **)
|
393
389
|
Anyway.loaders.each do |(_id, loader)|
|
394
|
-
Utils.deep_merge!(base_config, loader.call(**
|
390
|
+
Utils.deep_merge!(base_config, loader.call(**))
|
395
391
|
end
|
396
392
|
base_config
|
397
393
|
end
|
398
394
|
|
399
|
-
def dig(*
|
395
|
+
def dig(*) = values.dig(*)
|
400
396
|
|
401
|
-
def to_h
|
397
|
+
def to_h = values.deep_dup.deep_freeze
|
402
398
|
|
403
399
|
def dup
|
404
400
|
self.class.allocate.tap do |new_config|
|
@@ -415,7 +411,7 @@ module Anyway # :nodoc:
|
|
415
411
|
|
416
412
|
def deconstruct_keys(keys) = values.deconstruct_keys(keys)
|
417
413
|
|
418
|
-
def to_source_trace
|
414
|
+
def to_source_trace = __trace__&.to_h
|
419
415
|
|
420
416
|
def inspect
|
421
417
|
"#<#{self.class}:0x#{vm_object_id.rjust(16, "0")} config_name=\"#{config_name}\" env_prefix=\"#{env_prefix}\" " \
|
data/lib/anyway/env.rb
CHANGED
data/lib/anyway/loaders/base.rb
CHANGED
@@ -6,8 +6,8 @@ module Anyway
|
|
6
6
|
include Tracing
|
7
7
|
|
8
8
|
class << self
|
9
|
-
def call(local: Anyway::Settings.use_local_files, **
|
10
|
-
new(local:).call(**
|
9
|
+
def call(local: Anyway::Settings.use_local_files, **)
|
10
|
+
new(local:).call(**)
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
@@ -15,7 +15,7 @@ module Anyway
|
|
15
15
|
@local = local
|
16
16
|
end
|
17
17
|
|
18
|
-
def use_local?
|
18
|
+
def use_local? = @local == true
|
19
19
|
end
|
20
20
|
end
|
21
21
|
end
|
data/lib/anyway/loaders/env.rb
CHANGED
data/lib/anyway/loaders/yaml.rb
CHANGED
data/lib/anyway/loaders.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Anyway
|
4
|
-
using RubyNext
|
5
|
-
|
6
4
|
module Loaders
|
7
5
|
class Registry
|
8
6
|
attr_reader :registry
|
@@ -55,7 +53,7 @@ module Anyway
|
|
55
53
|
registry.each(&block)
|
56
54
|
end
|
57
55
|
|
58
|
-
def freeze
|
56
|
+
def freeze = registry.freeze
|
59
57
|
|
60
58
|
private
|
61
59
|
|
data/lib/anyway/tracing.rb
CHANGED
@@ -7,7 +7,7 @@ module Anyway
|
|
7
7
|
|
8
8
|
using(Module.new do
|
9
9
|
refine Thread::Backtrace::Location do
|
10
|
-
def path_lineno
|
10
|
+
def path_lineno = "#{path}:#{lineno}"
|
11
11
|
end
|
12
12
|
end)
|
13
13
|
|
@@ -26,12 +26,12 @@ module Anyway
|
|
26
26
|
value.dig(...)
|
27
27
|
end
|
28
28
|
|
29
|
-
def record_value(val, *path, **
|
29
|
+
def record_value(val, *path, **)
|
30
30
|
key = path.pop
|
31
31
|
trace = if val.is_a?(Hash)
|
32
|
-
Trace.new.tap { _1.merge_values(val, **
|
32
|
+
Trace.new.tap { _1.merge_values(val, **) }
|
33
33
|
else
|
34
|
-
Trace.new(:value, val, **
|
34
|
+
Trace.new(:value, val, **)
|
35
35
|
end
|
36
36
|
|
37
37
|
target_trace = path.empty? ? self : value.dig(*path)
|
@@ -40,14 +40,14 @@ module Anyway
|
|
40
40
|
val
|
41
41
|
end
|
42
42
|
|
43
|
-
def merge_values(hash, **
|
43
|
+
def merge_values(hash, **)
|
44
44
|
return hash unless hash
|
45
45
|
|
46
46
|
hash.each do |key, val|
|
47
47
|
if val.is_a?(Hash)
|
48
|
-
value[key.to_s].merge_values(val, **
|
48
|
+
value[key.to_s].merge_values(val, **)
|
49
49
|
else
|
50
|
-
value[key.to_s] = Trace.new(:value, val, **
|
50
|
+
value[key.to_s] = Trace.new(:value, val, **)
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
@@ -78,9 +78,9 @@ module Anyway
|
|
78
78
|
value.keep_if(...)
|
79
79
|
end
|
80
80
|
|
81
|
-
def clear
|
81
|
+
def clear = value.clear
|
82
82
|
|
83
|
-
def trace?
|
83
|
+
def trace? = type == :trace
|
84
84
|
|
85
85
|
def to_h
|
86
86
|
if trace?
|
@@ -90,7 +90,7 @@ module Anyway
|
|
90
90
|
end
|
91
91
|
end
|
92
92
|
|
93
|
-
def dup
|
93
|
+
def dup = self.class.new(type, value.dup, **source)
|
94
94
|
|
95
95
|
def pretty_print(q)
|
96
96
|
if trace?
|
@@ -146,7 +146,7 @@ module Anyway
|
|
146
146
|
(Thread.current[:__anyway__trace_stack__] ||= [])
|
147
147
|
end
|
148
148
|
|
149
|
-
def current_trace
|
149
|
+
def current_trace = trace_stack.last
|
150
150
|
|
151
151
|
alias_method :tracing?, :current_trace
|
152
152
|
|
@@ -174,13 +174,13 @@ module Anyway
|
|
174
174
|
|
175
175
|
module_function
|
176
176
|
|
177
|
-
def trace!(type, *path, **
|
177
|
+
def trace!(type, *path, **)
|
178
178
|
return yield unless Tracing.tracing?
|
179
179
|
val = yield
|
180
180
|
if val.is_a?(Hash)
|
181
|
-
Tracing.current_trace.merge_values(val, type:, **
|
181
|
+
Tracing.current_trace.merge_values(val, type:, **)
|
182
182
|
elsif !path.empty?
|
183
|
-
Tracing.current_trace.record_value(val, *path, type:, **
|
183
|
+
Tracing.current_trace.record_value(val, *path, type:, **)
|
184
184
|
end
|
185
185
|
val
|
186
186
|
end
|
data/lib/anyway/version.rb
CHANGED
data/lib/anyway_config.rb
CHANGED
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: runger_config
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vladimir Dementyev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-11-
|
11
|
+
date: 2023-11-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: activesupport
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 7.1.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 7.1.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: ammeter
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,20 +66,6 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '3.8'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: ruby-next
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 0.14.0
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 0.14.0
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: webmock
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -169,16 +155,16 @@ files:
|
|
169
155
|
- lib/generators/anyway/install/templates/application_config.rb.tt
|
170
156
|
- sig/anyway_config.rbs
|
171
157
|
- sig/manifest.yml
|
172
|
-
homepage: http://github.com/davidrunger/
|
158
|
+
homepage: http://github.com/davidrunger/runger_config
|
173
159
|
licenses:
|
174
160
|
- MIT
|
175
161
|
metadata:
|
176
|
-
bug_tracker_uri: http://github.com/davidrunger/
|
177
|
-
changelog_uri: https://github.com/davidrunger/
|
178
|
-
documentation_uri: http://github.com/davidrunger/
|
162
|
+
bug_tracker_uri: http://github.com/davidrunger/runger_config/issues
|
163
|
+
changelog_uri: https://github.com/davidrunger/runger_config/blob/master/CHANGELOG.md
|
164
|
+
documentation_uri: http://github.com/davidrunger/runger_config
|
179
165
|
funding_uri: https://github.com/sponsors/davidrunger
|
180
|
-
homepage_uri: http://github.com/davidrunger/
|
181
|
-
source_code_uri: http://github.com/davidrunger/
|
166
|
+
homepage_uri: http://github.com/davidrunger/runger_config
|
167
|
+
source_code_uri: http://github.com/davidrunger/runger_config
|
182
168
|
rubygems_mfa_required: 'true'
|
183
169
|
post_install_message:
|
184
170
|
rdoc_options: []
|
@@ -188,7 +174,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
188
174
|
requirements:
|
189
175
|
- - ">="
|
190
176
|
- !ruby/object:Gem::Version
|
191
|
-
version:
|
177
|
+
version: 3.2.2
|
192
178
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
193
179
|
requirements:
|
194
180
|
- - ">="
|