runger_config 3.0.0 → 4.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.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -36
  3. data/README.md +83 -83
  4. data/lib/generators/{anyway → runger}/app_config/app_config_generator.rb +2 -2
  5. data/lib/generators/{anyway → runger}/config/config_generator.rb +3 -8
  6. data/lib/generators/{anyway → runger}/config/templates/config.rb.tt +0 -3
  7. data/lib/generators/{anyway → runger}/install/install_generator.rb +4 -4
  8. data/lib/generators/{anyway → runger}/install/templates/application_config.rb.tt +1 -1
  9. data/lib/{anyway → runger}/auto_cast.rb +1 -1
  10. data/lib/{anyway → runger}/config.rb +22 -22
  11. data/lib/{anyway → runger}/dynamic_config.rb +2 -2
  12. data/lib/{anyway → runger}/ejson_parser.rb +3 -3
  13. data/lib/{anyway → runger}/env.rb +3 -3
  14. data/lib/{anyway → runger}/ext/deep_dup.rb +1 -1
  15. data/lib/{anyway → runger}/ext/deep_freeze.rb +1 -1
  16. data/lib/{anyway → runger}/ext/flatten_names.rb +1 -1
  17. data/lib/{anyway → runger}/ext/hash.rb +1 -1
  18. data/lib/{anyway → runger}/ext/string_constantize.rb +1 -1
  19. data/lib/{anyway → runger}/loaders/base.rb +2 -2
  20. data/lib/{anyway → runger}/loaders/doppler.rb +2 -2
  21. data/lib/{anyway → runger}/loaders/ejson.rb +3 -3
  22. data/lib/{anyway → runger}/loaders/env.rb +2 -2
  23. data/lib/{anyway → runger}/loaders/yaml.rb +3 -3
  24. data/lib/{anyway → runger}/loaders.rb +6 -6
  25. data/lib/{anyway → runger}/option_parser_builder.rb +1 -1
  26. data/lib/{anyway → runger}/optparse_config.rb +6 -6
  27. data/lib/{anyway → runger}/rails/autoload.rb +5 -5
  28. data/lib/{anyway → runger}/rails/config.rb +3 -3
  29. data/lib/{anyway → runger}/rails/loaders/credentials.rb +2 -2
  30. data/lib/{anyway → runger}/rails/loaders/secrets.rb +3 -3
  31. data/lib/{anyway → runger}/rails/loaders/yaml.rb +2 -2
  32. data/lib/runger/rails/loaders.rb +5 -0
  33. data/lib/{anyway → runger}/rails/settings.rb +2 -2
  34. data/lib/runger/rails.rb +24 -0
  35. data/lib/{anyway → runger}/railtie.rb +7 -7
  36. data/lib/{anyway → runger}/rbs.rb +1 -1
  37. data/lib/{anyway → runger}/settings.rb +4 -4
  38. data/lib/{anyway → runger}/testing/helpers.rb +4 -4
  39. data/lib/{anyway → runger}/testing.rb +2 -2
  40. data/lib/{anyway → runger}/tracing.rb +4 -4
  41. data/lib/{anyway → runger}/type_casting.rb +4 -4
  42. data/lib/{anyway → runger}/utils/deep_merge.rb +2 -2
  43. data/lib/{anyway → runger}/utils/which.rb +1 -1
  44. data/lib/runger/version.rb +5 -0
  45. data/lib/{anyway.rb → runger.rb} +1 -1
  46. data/lib/runger_config.rb +49 -0
  47. data/sig/{anyway_config.rbs → runger_config.rbs} +1 -1
  48. metadata +51 -51
  49. data/lib/anyway/rails/loaders.rb +0 -5
  50. data/lib/anyway/rails.rb +0 -24
  51. data/lib/anyway/version.rb +0 -5
  52. data/lib/anyway_config.rb +0 -49
  53. /data/lib/generators/{anyway → runger}/app_config/USAGE +0 -0
  54. /data/lib/generators/{anyway → runger}/config/USAGE +0 -0
  55. /data/lib/generators/{anyway → runger}/config/templates/config.yml.tt +0 -0
  56. /data/lib/generators/{anyway → runger}/install/USAGE +0 -0
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Anyway
3
+ module Runger
4
4
  # Provides method to trace values association
5
5
  module Tracing
6
- using Anyway::Ext::DeepDup
6
+ using Runger::Ext::DeepDup
7
7
 
8
8
  using(Module.new do
9
9
  refine Thread::Backtrace::Location do
@@ -143,7 +143,7 @@ module Anyway
143
143
  end
144
144
 
145
145
  def trace_stack
146
- (Thread.current[:__anyway__trace_stack__] ||= [])
146
+ (Thread.current[:__runger__trace_stack__] ||= [])
147
147
  end
148
148
 
149
149
  def current_trace = trace_stack.last
@@ -151,7 +151,7 @@ module Anyway
151
151
  alias_method :tracing?, :current_trace
152
152
 
153
153
  def source_stack
154
- (Thread.current[:__anyway__trace_source_stack__] ||= [])
154
+ (Thread.current[:__runger__trace_source_stack__] ||= [])
155
155
  end
156
156
 
157
157
  def current_trace_source
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Anyway
3
+ module Runger
4
4
  # Contains a mapping between type IDs/names and deserializers
5
5
  class TypeRegistry
6
6
  class << self
@@ -91,8 +91,8 @@ module Anyway
91
91
  end
92
92
 
93
93
  unless "".respond_to?(:safe_constantize)
94
- require "anyway/ext/string_constantize"
95
- using Anyway::Ext::StringConstantize
94
+ require "runger/ext/string_constantize"
95
+ using Runger::Ext::StringConstantize
96
96
  end
97
97
 
98
98
  # TypeCaster is an object responsible for type-casting.
@@ -102,7 +102,7 @@ module Anyway
102
102
  using Ext::DeepDup
103
103
  using Ext::Hash
104
104
 
105
- def initialize(mapping, registry: TypeRegistry.default, fallback: ::Anyway::AutoCast)
105
+ def initialize(mapping, registry: TypeRegistry.default, fallback: ::Runger::AutoCast)
106
106
  @mapping = mapping.deep_dup
107
107
  @registry = registry
108
108
  @fallback = fallback
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Anyway
4
- using Anyway::Ext::DeepDup
3
+ module Runger
4
+ using Runger::Ext::DeepDup
5
5
 
6
6
  module Utils
7
7
  def self.deep_merge!(source, other)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Anyway
3
+ module Runger
4
4
  module Utils
5
5
  # Cross-platform solution
6
6
  # taken from https://stackoverflow.com/a/5471032
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Runger # :nodoc:
4
+ VERSION = "4.0.0"
5
+ end
@@ -1,3 +1,3 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "anyway_config"
3
+ require "runger_config"
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "runger/version"
4
+
5
+ require "runger/ext/deep_dup"
6
+ require "runger/ext/deep_freeze"
7
+ require "runger/ext/hash"
8
+ require "runger/ext/flatten_names"
9
+
10
+ require "runger/utils/deep_merge"
11
+ require "runger/utils/which"
12
+
13
+ require "runger/settings"
14
+ require "runger/tracing"
15
+ require "runger/config"
16
+ require "runger/auto_cast"
17
+ require "runger/type_casting"
18
+ require "runger/env"
19
+ require "runger/loaders"
20
+ require "runger/rbs"
21
+
22
+ module Runger # :nodoc:
23
+ class << self
24
+ def env
25
+ @env ||= ::Runger::Env.new
26
+ end
27
+
28
+ def loaders
29
+ @loaders ||= ::Runger::Loaders::Registry.new
30
+ end
31
+ end
32
+
33
+ # Configure default loaders
34
+ loaders.append :yml, Loaders::YAML
35
+ loaders.append :ejson, Loaders::EJSON if Utils.which("ejson")
36
+ loaders.append :env, Loaders::Env
37
+
38
+ if ENV.key?("DOPPLER_TOKEN") && ENV["RUNGER_CONFIG_DISABLE_DOPPLER"] != "true"
39
+ loaders.append :doppler, Loaders::Doppler
40
+ end
41
+ end
42
+
43
+ if defined?(::Rails::VERSION)
44
+ require "runger/rails"
45
+ else
46
+ require "runger/rails/autoload"
47
+ end
48
+
49
+ require "runger/testing" if ENV["RACK_ENV"] == "test" || ENV["RAILS_ENV"] == "test"
@@ -1,4 +1,4 @@
1
- module Anyway
1
+ module Runger
2
2
  def self.env: -> Env
3
3
  def self.loaders: -> Loaders::Registry
4
4
 
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runger_config
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
- - Vladimir Dementyev
7
+ - David Runger
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
@@ -98,7 +98,7 @@ description: "\n Configuration DSL for Ruby libraries and applications.\n
98
98
  you to easily follow the twelve-factor application principles (https://12factor.net/config).\n
99
99
  \ "
100
100
  email:
101
- - dementiev.vm@gmail.com
101
+ - davidjrunger@gmail.com
102
102
  executables: []
103
103
  extensions: []
104
104
  extra_rdoc_files: []
@@ -106,55 +106,55 @@ files:
106
106
  - CHANGELOG.md
107
107
  - LICENSE.txt
108
108
  - README.md
109
- - lib/anyway.rb
110
- - lib/anyway/auto_cast.rb
111
- - lib/anyway/config.rb
112
- - lib/anyway/dynamic_config.rb
113
- - lib/anyway/ejson_parser.rb
114
- - lib/anyway/env.rb
115
- - lib/anyway/ext/deep_dup.rb
116
- - lib/anyway/ext/deep_freeze.rb
117
- - lib/anyway/ext/flatten_names.rb
118
- - lib/anyway/ext/hash.rb
119
- - lib/anyway/ext/string_constantize.rb
120
- - lib/anyway/loaders.rb
121
- - lib/anyway/loaders/base.rb
122
- - lib/anyway/loaders/doppler.rb
123
- - lib/anyway/loaders/ejson.rb
124
- - lib/anyway/loaders/env.rb
125
- - lib/anyway/loaders/yaml.rb
126
- - lib/anyway/option_parser_builder.rb
127
- - lib/anyway/optparse_config.rb
128
- - lib/anyway/rails.rb
129
- - lib/anyway/rails/autoload.rb
130
- - lib/anyway/rails/config.rb
131
- - lib/anyway/rails/loaders.rb
132
- - lib/anyway/rails/loaders/credentials.rb
133
- - lib/anyway/rails/loaders/secrets.rb
134
- - lib/anyway/rails/loaders/yaml.rb
135
- - lib/anyway/rails/settings.rb
136
- - lib/anyway/railtie.rb
137
- - lib/anyway/rbs.rb
138
- - lib/anyway/settings.rb
139
- - lib/anyway/testing.rb
140
- - lib/anyway/testing/helpers.rb
141
- - lib/anyway/tracing.rb
142
- - lib/anyway/type_casting.rb
143
- - lib/anyway/utils/deep_merge.rb
144
- - lib/anyway/utils/which.rb
145
- - lib/anyway/version.rb
146
- - lib/anyway_config.rb
147
- - lib/generators/anyway/app_config/USAGE
148
- - lib/generators/anyway/app_config/app_config_generator.rb
149
- - lib/generators/anyway/config/USAGE
150
- - lib/generators/anyway/config/config_generator.rb
151
- - lib/generators/anyway/config/templates/config.rb.tt
152
- - lib/generators/anyway/config/templates/config.yml.tt
153
- - lib/generators/anyway/install/USAGE
154
- - lib/generators/anyway/install/install_generator.rb
155
- - lib/generators/anyway/install/templates/application_config.rb.tt
156
- - sig/anyway_config.rbs
109
+ - lib/generators/runger/app_config/USAGE
110
+ - lib/generators/runger/app_config/app_config_generator.rb
111
+ - lib/generators/runger/config/USAGE
112
+ - lib/generators/runger/config/config_generator.rb
113
+ - lib/generators/runger/config/templates/config.rb.tt
114
+ - lib/generators/runger/config/templates/config.yml.tt
115
+ - lib/generators/runger/install/USAGE
116
+ - lib/generators/runger/install/install_generator.rb
117
+ - lib/generators/runger/install/templates/application_config.rb.tt
118
+ - lib/runger.rb
119
+ - lib/runger/auto_cast.rb
120
+ - lib/runger/config.rb
121
+ - lib/runger/dynamic_config.rb
122
+ - lib/runger/ejson_parser.rb
123
+ - lib/runger/env.rb
124
+ - lib/runger/ext/deep_dup.rb
125
+ - lib/runger/ext/deep_freeze.rb
126
+ - lib/runger/ext/flatten_names.rb
127
+ - lib/runger/ext/hash.rb
128
+ - lib/runger/ext/string_constantize.rb
129
+ - lib/runger/loaders.rb
130
+ - lib/runger/loaders/base.rb
131
+ - lib/runger/loaders/doppler.rb
132
+ - lib/runger/loaders/ejson.rb
133
+ - lib/runger/loaders/env.rb
134
+ - lib/runger/loaders/yaml.rb
135
+ - lib/runger/option_parser_builder.rb
136
+ - lib/runger/optparse_config.rb
137
+ - lib/runger/rails.rb
138
+ - lib/runger/rails/autoload.rb
139
+ - lib/runger/rails/config.rb
140
+ - lib/runger/rails/loaders.rb
141
+ - lib/runger/rails/loaders/credentials.rb
142
+ - lib/runger/rails/loaders/secrets.rb
143
+ - lib/runger/rails/loaders/yaml.rb
144
+ - lib/runger/rails/settings.rb
145
+ - lib/runger/railtie.rb
146
+ - lib/runger/rbs.rb
147
+ - lib/runger/settings.rb
148
+ - lib/runger/testing.rb
149
+ - lib/runger/testing/helpers.rb
150
+ - lib/runger/tracing.rb
151
+ - lib/runger/type_casting.rb
152
+ - lib/runger/utils/deep_merge.rb
153
+ - lib/runger/utils/which.rb
154
+ - lib/runger/version.rb
155
+ - lib/runger_config.rb
157
156
  - sig/manifest.yml
157
+ - sig/runger_config.rbs
158
158
  homepage: http://github.com/davidrunger/runger_config
159
159
  licenses:
160
160
  - MIT
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "anyway/rails/loaders/yaml"
4
- require "anyway/rails/loaders/secrets"
5
- require "anyway/rails/loaders/credentials"
data/lib/anyway/rails.rb DELETED
@@ -1,24 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Anyway
4
- module Rails
5
- end
6
- end
7
-
8
- require "anyway/rails/settings"
9
- require "anyway/rails/config"
10
- require "anyway/rails/loaders"
11
-
12
- # Configure Rails loaders
13
- Anyway.loaders.override :yml, Anyway::Rails::Loaders::YAML
14
-
15
- if Rails::VERSION::MAJOR >= 7 && Rails::VERSION::MINOR >= 1
16
- Anyway.loaders.insert_after :yml, :credentials, Anyway::Rails::Loaders::Credentials
17
- else
18
- Anyway.loaders.insert_after :yml, :secrets, Anyway::Rails::Loaders::Secrets
19
- Anyway.loaders.insert_after :secrets, :credentials, Anyway::Rails::Loaders::Credentials
20
- end
21
-
22
- # Load Railties after configuring loaders.
23
- # The application could be already initialized, and that would make `Anyway.loaders` frozen
24
- require "anyway/railtie"
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Anyway # :nodoc:
4
- VERSION = "3.0.0"
5
- end
data/lib/anyway_config.rb DELETED
@@ -1,49 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "anyway/version"
4
-
5
- require "anyway/ext/deep_dup"
6
- require "anyway/ext/deep_freeze"
7
- require "anyway/ext/hash"
8
- require "anyway/ext/flatten_names"
9
-
10
- require "anyway/utils/deep_merge"
11
- require "anyway/utils/which"
12
-
13
- require "anyway/settings"
14
- require "anyway/tracing"
15
- require "anyway/config"
16
- require "anyway/auto_cast"
17
- require "anyway/type_casting"
18
- require "anyway/env"
19
- require "anyway/loaders"
20
- require "anyway/rbs"
21
-
22
- module Anyway # :nodoc:
23
- class << self
24
- def env
25
- @env ||= ::Anyway::Env.new
26
- end
27
-
28
- def loaders
29
- @loaders ||= ::Anyway::Loaders::Registry.new
30
- end
31
- end
32
-
33
- # Configure default loaders
34
- loaders.append :yml, Loaders::YAML
35
- loaders.append :ejson, Loaders::EJSON if Utils.which("ejson")
36
- loaders.append :env, Loaders::Env
37
-
38
- if ENV.key?("DOPPLER_TOKEN") && ENV["ANYWAY_CONFIG_DISABLE_DOPPLER"] != "true"
39
- loaders.append :doppler, Loaders::Doppler
40
- end
41
- end
42
-
43
- if defined?(::Rails::VERSION)
44
- require "anyway/rails"
45
- else
46
- require "anyway/rails/autoload"
47
- end
48
-
49
- require "anyway/testing" if ENV["RACK_ENV"] == "test" || ENV["RAILS_ENV"] == "test"
File without changes
File without changes
File without changes