dry-initializer 3.0.1 → 3.1.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/CHANGELOG.md +259 -242
- data/LICENSE +20 -0
- data/README.md +18 -78
- data/dry-initializer.gemspec +34 -19
- data/lib/dry/initializer/builders/attribute.rb +84 -69
- data/lib/dry/initializer/builders/initializer.rb +56 -58
- data/lib/dry/initializer/builders/reader.rb +55 -47
- data/lib/dry/initializer/builders/signature.rb +29 -23
- data/lib/dry/initializer/builders.rb +9 -5
- data/lib/dry/initializer/config.rb +162 -158
- data/lib/dry/initializer/definition.rb +58 -54
- data/lib/dry/initializer/dispatchers/build_nested_type.rb +54 -40
- data/lib/dry/initializer/dispatchers/check_type.rb +45 -39
- data/lib/dry/initializer/dispatchers/prepare_default.rb +32 -25
- data/lib/dry/initializer/dispatchers/prepare_ivar.rb +13 -6
- data/lib/dry/initializer/dispatchers/prepare_optional.rb +14 -7
- data/lib/dry/initializer/dispatchers/prepare_reader.rb +29 -22
- data/lib/dry/initializer/dispatchers/prepare_source.rb +12 -5
- data/lib/dry/initializer/dispatchers/prepare_target.rb +44 -37
- data/lib/dry/initializer/dispatchers/unwrap_type.rb +21 -10
- data/lib/dry/initializer/dispatchers/wrap_type.rb +25 -17
- data/lib/dry/initializer/dispatchers.rb +48 -43
- data/lib/dry/initializer/dsl.rb +42 -34
- data/lib/dry/initializer/errors.rb +22 -0
- data/lib/dry/initializer/mixin/local.rb +19 -13
- data/lib/dry/initializer/mixin/root.rb +12 -6
- data/lib/dry/initializer/mixin.rb +17 -12
- data/lib/dry/initializer/struct.rb +34 -30
- data/lib/dry/initializer/undefined.rb +7 -1
- data/lib/dry/initializer/version.rb +7 -0
- data/lib/dry/initializer.rb +3 -0
- data/lib/dry-initializer.rb +2 -0
- data/lib/tasks/benchmark.rake +2 -0
- data/lib/tasks/profile.rake +4 -0
- metadata +27 -106
- data/.codeclimate.yml +0 -23
- data/.gitignore +0 -10
- data/.rspec +0 -4
- data/.rubocop.yml +0 -51
- data/.travis.yml +0 -28
- data/Gemfile +0 -29
- data/Guardfile +0 -5
- data/LICENSE.txt +0 -21
- data/Rakefile +0 -8
- data/benchmarks/compare_several_defaults.rb +0 -82
- data/benchmarks/plain_options.rb +0 -63
- data/benchmarks/plain_params.rb +0 -84
- data/benchmarks/with_coercion.rb +0 -71
- data/benchmarks/with_defaults.rb +0 -66
- data/benchmarks/with_defaults_and_coercion.rb +0 -59
- data/spec/attributes_spec.rb +0 -38
- data/spec/coercion_of_nil_spec.rb +0 -25
- data/spec/custom_dispatchers_spec.rb +0 -35
- data/spec/custom_initializer_spec.rb +0 -30
- data/spec/default_values_spec.rb +0 -83
- data/spec/definition_spec.rb +0 -111
- data/spec/invalid_default_spec.rb +0 -13
- data/spec/list_type_spec.rb +0 -32
- data/spec/missed_default_spec.rb +0 -14
- data/spec/nested_type_spec.rb +0 -44
- data/spec/optional_spec.rb +0 -71
- data/spec/options_tolerance_spec.rb +0 -11
- data/spec/public_attributes_utility_spec.rb +0 -22
- data/spec/reader_spec.rb +0 -87
- data/spec/repetitive_definitions_spec.rb +0 -69
- data/spec/several_assignments_spec.rb +0 -41
- data/spec/spec_helper.rb +0 -22
- data/spec/subclassing_spec.rb +0 -49
- data/spec/type_argument_spec.rb +0 -35
- data/spec/type_constraint_spec.rb +0 -78
- data/spec/value_coercion_via_dry_types_spec.rb +0 -29
data/lib/dry/initializer/dsl.rb
CHANGED
|
@@ -1,43 +1,51 @@
|
|
|
1
|
-
|
|
2
|
-
# Module-level DSL
|
|
3
|
-
module DSL
|
|
4
|
-
# Setting for null (undefined value)
|
|
5
|
-
# @return [nil, Dry::Initializer::UNDEFINED]
|
|
6
|
-
attr_reader :null
|
|
1
|
+
# frozen_string_literal: true
|
|
7
2
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
#
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
3
|
+
module Dry
|
|
4
|
+
module Initializer
|
|
5
|
+
# Module-level DSL
|
|
6
|
+
module DSL
|
|
7
|
+
# Setting for null (undefined value)
|
|
8
|
+
# @return [nil, Dry::Initializer::UNDEFINED]
|
|
9
|
+
attr_reader :null
|
|
10
|
+
|
|
11
|
+
# Returns a version of the module with custom settings
|
|
12
|
+
# @option settings [Boolean] :undefined
|
|
13
|
+
# If unassigned params and options should be treated different from nil
|
|
14
|
+
# @return [Dry::Initializer]
|
|
15
|
+
def [](undefined: true, **)
|
|
16
|
+
null = undefined == false ? nil : UNDEFINED
|
|
17
|
+
Module.new.tap do |mod|
|
|
18
|
+
mod.extend DSL
|
|
19
|
+
mod.include self
|
|
20
|
+
mod.send(:instance_variable_set, :@null, null)
|
|
21
|
+
end
|
|
18
22
|
end
|
|
19
|
-
end
|
|
20
23
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
# Returns mixin module to be included to target class by hand
|
|
25
|
+
# @return [Module]
|
|
26
|
+
# @yield proc defining params and options
|
|
27
|
+
def define(procedure = nil, &block)
|
|
28
|
+
config = Config.new(null: null)
|
|
29
|
+
config.instance_exec(&(procedure || block))
|
|
30
|
+
config.mixin.include Mixin::Root
|
|
31
|
+
config.mixin
|
|
32
|
+
end
|
|
30
33
|
|
|
31
|
-
|
|
34
|
+
private
|
|
32
35
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
def extended(klass)
|
|
37
|
+
config = Config.new(klass, null: null)
|
|
38
|
+
klass.send :instance_variable_set, :@dry_initializer, config
|
|
39
|
+
klass.include Mixin::Root
|
|
40
|
+
end
|
|
38
41
|
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
class << self
|
|
43
|
+
private
|
|
44
|
+
|
|
45
|
+
def extended(mod)
|
|
46
|
+
mod.instance_variable_set :@null, UNDEFINED
|
|
47
|
+
end
|
|
48
|
+
end
|
|
41
49
|
end
|
|
42
50
|
end
|
|
43
51
|
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dry
|
|
4
|
+
module Initializer
|
|
5
|
+
class CoercionError < ::StandardError
|
|
6
|
+
def initialize(constraint_error, field)
|
|
7
|
+
@constraint_error = constraint_error
|
|
8
|
+
@field = field
|
|
9
|
+
super(message)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Ensure that the field name is in the error message
|
|
13
|
+
def message
|
|
14
|
+
if @constraint_error.message =~ /#{@field}/
|
|
15
|
+
@constraint_error.message
|
|
16
|
+
else
|
|
17
|
+
"#{@constraint_error.message} for field :#{@field}"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -1,19 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
# @private
|
|
3
|
-
module Local
|
|
4
|
-
attr_reader :klass
|
|
1
|
+
# frozen_string_literal: true
|
|
5
2
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
module Dry
|
|
4
|
+
module Initializer
|
|
5
|
+
module Mixin
|
|
6
|
+
# @private
|
|
7
|
+
module Local
|
|
8
|
+
attr_reader :klass
|
|
9
|
+
|
|
10
|
+
def inspect
|
|
11
|
+
"Dry::Initializer::Mixin::Local[#{klass}]"
|
|
12
|
+
end
|
|
13
|
+
alias_method :to_s, :inspect
|
|
14
|
+
alias_method :to_str, :inspect
|
|
11
15
|
|
|
12
|
-
|
|
16
|
+
private
|
|
13
17
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
18
|
+
def included(klass)
|
|
19
|
+
@klass = klass
|
|
20
|
+
super
|
|
21
|
+
end
|
|
22
|
+
end
|
|
17
23
|
end
|
|
18
24
|
end
|
|
19
25
|
end
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
# @private
|
|
3
|
-
module Root
|
|
4
|
-
private
|
|
1
|
+
# frozen_string_literal: true
|
|
5
2
|
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
module Dry
|
|
4
|
+
module Initializer
|
|
5
|
+
module Mixin
|
|
6
|
+
# @private
|
|
7
|
+
module Root
|
|
8
|
+
private
|
|
9
|
+
|
|
10
|
+
def initialize(...)
|
|
11
|
+
__dry_initializer_initialize__(...)
|
|
12
|
+
end
|
|
13
|
+
end
|
|
8
14
|
end
|
|
9
15
|
end
|
|
10
16
|
end
|
|
@@ -1,15 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Dry
|
|
4
|
+
module Initializer
|
|
5
|
+
# @private
|
|
6
|
+
module Mixin
|
|
7
|
+
extend DSL # @deprecated
|
|
8
|
+
include Dry::Initializer # @deprecated
|
|
9
|
+
# @deprecated
|
|
10
|
+
def self.extended(klass)
|
|
11
|
+
warn "[DEPRECATED] Use Dry::Initializer instead of its alias" \
|
|
12
|
+
" Dry::Initializer::Mixin. The later will be removed in v2.1.0"
|
|
13
|
+
super
|
|
14
|
+
end
|
|
11
15
|
|
|
12
|
-
|
|
13
|
-
|
|
16
|
+
require_relative "mixin/root"
|
|
17
|
+
require_relative "mixin/local"
|
|
18
|
+
end
|
|
14
19
|
end
|
|
15
20
|
end
|
|
@@ -1,40 +1,44 @@
|
|
|
1
|
-
#
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
2
3
|
# The nested structure that takes nested hashes with indifferent access
|
|
3
4
|
#
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
module Dry
|
|
6
|
+
module Initializer
|
|
7
|
+
class Struct
|
|
8
|
+
extend ::Dry::Initializer
|
|
6
9
|
|
|
7
|
-
|
|
8
|
-
|
|
10
|
+
class << self
|
|
11
|
+
undef_method :param
|
|
9
12
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
def new(options)
|
|
14
|
+
super(**Hash(options).each_with_object({}) { |(k, v), h| h[k.to_sym] = v })
|
|
15
|
+
end
|
|
16
|
+
alias_method :call, :new
|
|
17
|
+
end
|
|
15
18
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
end
|
|
19
|
+
#
|
|
20
|
+
# Represents event data as a nested hash with deeply stringified keys
|
|
21
|
+
# @return [Hash<String, ...>]
|
|
22
|
+
#
|
|
23
|
+
def to_h
|
|
24
|
+
self
|
|
25
|
+
.class
|
|
26
|
+
.dry_initializer
|
|
27
|
+
.attributes(self)
|
|
28
|
+
.each_with_object({}) { |(k, v), h| h[k.to_s] = __hashify(v) }
|
|
29
|
+
end
|
|
28
30
|
|
|
29
|
-
|
|
31
|
+
private
|
|
30
32
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
def __hashify(value)
|
|
34
|
+
case value
|
|
35
|
+
when Hash
|
|
36
|
+
value.each_with_object({}) { |(k, v), obj| obj[k.to_s] = __hashify(v) }
|
|
37
|
+
when Array then value.map { |v| __hashify(v) }
|
|
38
|
+
when Dry::Initializer::Struct then value.to_h
|
|
39
|
+
else value
|
|
40
|
+
end
|
|
41
|
+
end
|
|
38
42
|
end
|
|
39
43
|
end
|
|
40
44
|
end
|
data/lib/dry/initializer.rb
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
require "set"
|
|
2
4
|
|
|
3
5
|
# Namespace for gems in a dry-rb community
|
|
@@ -13,6 +15,7 @@ module Dry
|
|
|
13
15
|
require_relative "initializer/config"
|
|
14
16
|
require_relative "initializer/mixin"
|
|
15
17
|
require_relative "initializer/dispatchers"
|
|
18
|
+
require_relative "initializer/errors"
|
|
16
19
|
|
|
17
20
|
# Adds methods [.[]] and [.define]
|
|
18
21
|
extend DSL
|
data/lib/dry-initializer.rb
CHANGED
data/lib/tasks/benchmark.rake
CHANGED
data/lib/tasks/profile.rake
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# rubocop: disable Lint/ConstantDefinitionInBlock
|
|
1
4
|
namespace :profile do
|
|
2
5
|
def profile(name, execution, &definition)
|
|
3
6
|
require "dry-initializer"
|
|
@@ -76,3 +79,4 @@ task profile: %i[
|
|
|
76
79
|
profile:coercion
|
|
77
80
|
profile:default_coercion
|
|
78
81
|
]
|
|
82
|
+
# rubocop: enable Lint/ConstantDefinitionInBlock
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dry-initializer
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.0
|
|
4
|
+
version: 3.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Vladimir Kochnev (marshall-lee)
|
|
@@ -9,89 +9,46 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2022-01-16 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
|
-
- !ruby/object:Gem::Dependency
|
|
15
|
-
name: rspec
|
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
|
17
|
-
requirements:
|
|
18
|
-
- - "~>"
|
|
19
|
-
- !ruby/object:Gem::Version
|
|
20
|
-
version: '3.0'
|
|
21
|
-
type: :development
|
|
22
|
-
prerelease: false
|
|
23
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
24
|
-
requirements:
|
|
25
|
-
- - "~>"
|
|
26
|
-
- !ruby/object:Gem::Version
|
|
27
|
-
version: '3.0'
|
|
28
14
|
- !ruby/object:Gem::Dependency
|
|
29
15
|
name: rake
|
|
30
16
|
requirement: !ruby/object:Gem::Requirement
|
|
31
17
|
requirements:
|
|
32
|
-
- - "
|
|
33
|
-
- !ruby/object:Gem::Version
|
|
34
|
-
version: '10'
|
|
35
|
-
type: :development
|
|
36
|
-
prerelease: false
|
|
37
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
38
|
-
requirements:
|
|
39
|
-
- - ">"
|
|
40
|
-
- !ruby/object:Gem::Version
|
|
41
|
-
version: '10'
|
|
42
|
-
- !ruby/object:Gem::Dependency
|
|
43
|
-
name: dry-types
|
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
|
45
|
-
requirements:
|
|
46
|
-
- - ">"
|
|
18
|
+
- - ">="
|
|
47
19
|
- !ruby/object:Gem::Version
|
|
48
|
-
version: 0
|
|
20
|
+
version: '0'
|
|
49
21
|
type: :development
|
|
50
22
|
prerelease: false
|
|
51
23
|
version_requirements: !ruby/object:Gem::Requirement
|
|
52
24
|
requirements:
|
|
53
|
-
- - "
|
|
25
|
+
- - ">="
|
|
54
26
|
- !ruby/object:Gem::Version
|
|
55
|
-
version: 0
|
|
27
|
+
version: '0'
|
|
56
28
|
- !ruby/object:Gem::Dependency
|
|
57
|
-
name:
|
|
29
|
+
name: rspec
|
|
58
30
|
requirement: !ruby/object:Gem::Requirement
|
|
59
31
|
requirements:
|
|
60
|
-
- - "
|
|
32
|
+
- - ">="
|
|
61
33
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: 0
|
|
34
|
+
version: '0'
|
|
63
35
|
type: :development
|
|
64
36
|
prerelease: false
|
|
65
37
|
version_requirements: !ruby/object:Gem::Requirement
|
|
66
38
|
requirements:
|
|
67
|
-
- - "
|
|
39
|
+
- - ">="
|
|
68
40
|
- !ruby/object:Gem::Version
|
|
69
|
-
version: 0
|
|
70
|
-
description:
|
|
71
|
-
email:
|
|
41
|
+
version: '0'
|
|
42
|
+
description: DSL for declaring params and options of the initializer
|
|
43
|
+
email:
|
|
44
|
+
- andrew.kozin@gmail.com
|
|
72
45
|
executables: []
|
|
73
46
|
extensions: []
|
|
74
|
-
extra_rdoc_files:
|
|
75
|
-
- README.md
|
|
76
|
-
- CHANGELOG.md
|
|
47
|
+
extra_rdoc_files: []
|
|
77
48
|
files:
|
|
78
|
-
- ".codeclimate.yml"
|
|
79
|
-
- ".gitignore"
|
|
80
|
-
- ".rspec"
|
|
81
|
-
- ".rubocop.yml"
|
|
82
|
-
- ".travis.yml"
|
|
83
49
|
- CHANGELOG.md
|
|
84
|
-
-
|
|
85
|
-
- Guardfile
|
|
86
|
-
- LICENSE.txt
|
|
50
|
+
- LICENSE
|
|
87
51
|
- README.md
|
|
88
|
-
- Rakefile
|
|
89
|
-
- benchmarks/compare_several_defaults.rb
|
|
90
|
-
- benchmarks/plain_options.rb
|
|
91
|
-
- benchmarks/plain_params.rb
|
|
92
|
-
- benchmarks/with_coercion.rb
|
|
93
|
-
- benchmarks/with_defaults.rb
|
|
94
|
-
- benchmarks/with_defaults_and_coercion.rb
|
|
95
52
|
- dry-initializer.gemspec
|
|
96
53
|
- lib/dry-initializer.rb
|
|
97
54
|
- lib/dry/initializer.rb
|
|
@@ -114,38 +71,23 @@ files:
|
|
|
114
71
|
- lib/dry/initializer/dispatchers/unwrap_type.rb
|
|
115
72
|
- lib/dry/initializer/dispatchers/wrap_type.rb
|
|
116
73
|
- lib/dry/initializer/dsl.rb
|
|
74
|
+
- lib/dry/initializer/errors.rb
|
|
117
75
|
- lib/dry/initializer/mixin.rb
|
|
118
76
|
- lib/dry/initializer/mixin/local.rb
|
|
119
77
|
- lib/dry/initializer/mixin/root.rb
|
|
120
78
|
- lib/dry/initializer/struct.rb
|
|
121
79
|
- lib/dry/initializer/undefined.rb
|
|
80
|
+
- lib/dry/initializer/version.rb
|
|
122
81
|
- lib/tasks/benchmark.rake
|
|
123
82
|
- lib/tasks/profile.rake
|
|
124
|
-
-
|
|
125
|
-
- spec/coercion_of_nil_spec.rb
|
|
126
|
-
- spec/custom_dispatchers_spec.rb
|
|
127
|
-
- spec/custom_initializer_spec.rb
|
|
128
|
-
- spec/default_values_spec.rb
|
|
129
|
-
- spec/definition_spec.rb
|
|
130
|
-
- spec/invalid_default_spec.rb
|
|
131
|
-
- spec/list_type_spec.rb
|
|
132
|
-
- spec/missed_default_spec.rb
|
|
133
|
-
- spec/nested_type_spec.rb
|
|
134
|
-
- spec/optional_spec.rb
|
|
135
|
-
- spec/options_tolerance_spec.rb
|
|
136
|
-
- spec/public_attributes_utility_spec.rb
|
|
137
|
-
- spec/reader_spec.rb
|
|
138
|
-
- spec/repetitive_definitions_spec.rb
|
|
139
|
-
- spec/several_assignments_spec.rb
|
|
140
|
-
- spec/spec_helper.rb
|
|
141
|
-
- spec/subclassing_spec.rb
|
|
142
|
-
- spec/type_argument_spec.rb
|
|
143
|
-
- spec/type_constraint_spec.rb
|
|
144
|
-
- spec/value_coercion_via_dry_types_spec.rb
|
|
145
|
-
homepage: https://github.com/dry-rb/dry-initializer
|
|
83
|
+
homepage: https://dry-rb.org/gems/dry-initializer
|
|
146
84
|
licenses:
|
|
147
85
|
- MIT
|
|
148
|
-
metadata:
|
|
86
|
+
metadata:
|
|
87
|
+
allowed_push_host: https://rubygems.org
|
|
88
|
+
changelog_uri: https://github.com/dry-rb/dry-initializer/blob/master/CHANGELOG.md
|
|
89
|
+
source_code_uri: https://github.com/dry-rb/dry-initializer
|
|
90
|
+
bug_tracker_uri: https://github.com/dry-rb/dry-initializer/issues
|
|
149
91
|
post_install_message:
|
|
150
92
|
rdoc_options: []
|
|
151
93
|
require_paths:
|
|
@@ -154,36 +96,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
154
96
|
requirements:
|
|
155
97
|
- - ">="
|
|
156
98
|
- !ruby/object:Gem::Version
|
|
157
|
-
version:
|
|
99
|
+
version: 2.7.0
|
|
158
100
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
159
101
|
requirements:
|
|
160
102
|
- - ">="
|
|
161
103
|
- !ruby/object:Gem::Version
|
|
162
104
|
version: '0'
|
|
163
105
|
requirements: []
|
|
164
|
-
rubygems_version: 3.
|
|
106
|
+
rubygems_version: 3.1.6
|
|
165
107
|
signing_key:
|
|
166
108
|
specification_version: 4
|
|
167
109
|
summary: DSL for declaring params and options of the initializer
|
|
168
|
-
test_files:
|
|
169
|
-
- spec/attributes_spec.rb
|
|
170
|
-
- spec/coercion_of_nil_spec.rb
|
|
171
|
-
- spec/custom_dispatchers_spec.rb
|
|
172
|
-
- spec/custom_initializer_spec.rb
|
|
173
|
-
- spec/default_values_spec.rb
|
|
174
|
-
- spec/definition_spec.rb
|
|
175
|
-
- spec/invalid_default_spec.rb
|
|
176
|
-
- spec/list_type_spec.rb
|
|
177
|
-
- spec/missed_default_spec.rb
|
|
178
|
-
- spec/nested_type_spec.rb
|
|
179
|
-
- spec/optional_spec.rb
|
|
180
|
-
- spec/options_tolerance_spec.rb
|
|
181
|
-
- spec/public_attributes_utility_spec.rb
|
|
182
|
-
- spec/reader_spec.rb
|
|
183
|
-
- spec/repetitive_definitions_spec.rb
|
|
184
|
-
- spec/several_assignments_spec.rb
|
|
185
|
-
- spec/spec_helper.rb
|
|
186
|
-
- spec/subclassing_spec.rb
|
|
187
|
-
- spec/type_argument_spec.rb
|
|
188
|
-
- spec/type_constraint_spec.rb
|
|
189
|
-
- spec/value_coercion_via_dry_types_spec.rb
|
|
110
|
+
test_files: []
|
data/.codeclimate.yml
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
engines:
|
|
3
|
-
rubocop:
|
|
4
|
-
enabled: true
|
|
5
|
-
checks:
|
|
6
|
-
Rubocop/Style/FrozenStringLiteralComment:
|
|
7
|
-
enabled: false
|
|
8
|
-
Rubocop/Style/PercentLiteralDelimiters:
|
|
9
|
-
enabled: false
|
|
10
|
-
Rubocop/Lint/UnderscorePrefixedVariableName:
|
|
11
|
-
enabled: false
|
|
12
|
-
duplication:
|
|
13
|
-
enabled: true
|
|
14
|
-
config:
|
|
15
|
-
languages:
|
|
16
|
-
- ruby
|
|
17
|
-
exclude_paths:
|
|
18
|
-
- "benchmarks/**/*"
|
|
19
|
-
- "spec/**/*"
|
|
20
|
-
- "lib/tasks/**/*"
|
|
21
|
-
ratings:
|
|
22
|
-
paths:
|
|
23
|
-
- "lib/**/*"
|
data/.gitignore
DELETED
data/.rspec
DELETED
data/.rubocop.yml
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
AllCops:
|
|
3
|
-
DisplayCopNames: true
|
|
4
|
-
DisplayStyleGuide: true
|
|
5
|
-
StyleGuideCopsOnly: true
|
|
6
|
-
TargetRubyVersion: 2.3
|
|
7
|
-
Exclude:
|
|
8
|
-
- lib/tasks/*.rake
|
|
9
|
-
|
|
10
|
-
Bundler/DuplicatedGem:
|
|
11
|
-
Enabled: false
|
|
12
|
-
|
|
13
|
-
Naming/FileName:
|
|
14
|
-
Exclude:
|
|
15
|
-
- lib/dry-initializer.rb
|
|
16
|
-
|
|
17
|
-
Style/CaseEquality:
|
|
18
|
-
Enabled: false
|
|
19
|
-
|
|
20
|
-
Style/ClassAndModuleChildren:
|
|
21
|
-
Enabled: false
|
|
22
|
-
|
|
23
|
-
Style/ClassVars:
|
|
24
|
-
Enabled: false
|
|
25
|
-
|
|
26
|
-
Style/Documentation:
|
|
27
|
-
Enabled: false
|
|
28
|
-
|
|
29
|
-
Style/DoubleNegation:
|
|
30
|
-
Enabled: false
|
|
31
|
-
|
|
32
|
-
Style/Lambda:
|
|
33
|
-
Exclude:
|
|
34
|
-
- spec/**/*.rb
|
|
35
|
-
|
|
36
|
-
Style/LambdaCall:
|
|
37
|
-
Enabled: false
|
|
38
|
-
|
|
39
|
-
Style/RescueModifier:
|
|
40
|
-
Exclude:
|
|
41
|
-
- spec/**/*.rb
|
|
42
|
-
|
|
43
|
-
Style/Semicolon:
|
|
44
|
-
Exclude:
|
|
45
|
-
- spec/**/*.rb
|
|
46
|
-
|
|
47
|
-
Style/StringLiterals:
|
|
48
|
-
EnforcedStyle: double_quotes
|
|
49
|
-
|
|
50
|
-
Style/StringLiteralsInInterpolation:
|
|
51
|
-
EnforcedStyle: double_quotes
|
data/.travis.yml
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
language: ruby
|
|
3
|
-
cache: bundler
|
|
4
|
-
bundler_args: --without benchmarks tools
|
|
5
|
-
script:
|
|
6
|
-
- bundle exec rake spec
|
|
7
|
-
rvm:
|
|
8
|
-
- 2.3.8
|
|
9
|
-
- 2.4.6
|
|
10
|
-
- 2.5.5
|
|
11
|
-
- 2.6.2
|
|
12
|
-
- jruby-9.2.7.0
|
|
13
|
-
- jruby-9000
|
|
14
|
-
- rbx-3
|
|
15
|
-
- ruby-head
|
|
16
|
-
- truffleruby
|
|
17
|
-
env:
|
|
18
|
-
global:
|
|
19
|
-
- JRUBY_OPTS='--dev -J-Xmx1024M'
|
|
20
|
-
matrix:
|
|
21
|
-
allow_failures:
|
|
22
|
-
- rvm: rbx-3
|
|
23
|
-
- rvm: ruby-head
|
|
24
|
-
- rvm: jruby-head
|
|
25
|
-
- rvm: truffleruby
|
|
26
|
-
include:
|
|
27
|
-
- rvm: jruby-head
|
|
28
|
-
before_install: gem install bundler --no-document
|