dry-initializer 3.0.2 → 3.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/---bug-report.md +1 -5
  3. data/.github/workflows/custom_ci.yml +31 -47
  4. data/.github/workflows/sync_configs.yml +29 -7
  5. data/.rspec +1 -1
  6. data/.rubocop.yml +19 -6
  7. data/CHANGELOG.md +6 -0
  8. data/Gemfile +27 -29
  9. data/Gemfile.devtools +16 -0
  10. data/Guardfile +3 -3
  11. data/LICENSE +1 -1
  12. data/README.md +17 -77
  13. data/Rakefile +4 -4
  14. data/benchmarks/compare_several_defaults.rb +27 -27
  15. data/benchmarks/plain_options.rb +14 -14
  16. data/benchmarks/plain_params.rb +22 -22
  17. data/benchmarks/with_coercion.rb +14 -14
  18. data/benchmarks/with_defaults.rb +17 -17
  19. data/benchmarks/with_defaults_and_coercion.rb +14 -14
  20. data/bin/.gitkeep +0 -0
  21. data/dry-initializer.gemspec +13 -13
  22. data/lib/dry-initializer.rb +1 -1
  23. data/lib/dry/initializer.rb +9 -9
  24. data/lib/dry/initializer/builders.rb +2 -2
  25. data/lib/dry/initializer/builders/attribute.rb +12 -7
  26. data/lib/dry/initializer/builders/initializer.rb +9 -13
  27. data/lib/dry/initializer/builders/reader.rb +3 -1
  28. data/lib/dry/initializer/builders/signature.rb +3 -3
  29. data/lib/dry/initializer/config.rb +6 -4
  30. data/lib/dry/initializer/definition.rb +9 -9
  31. data/lib/dry/initializer/dispatchers.rb +10 -10
  32. data/lib/dry/initializer/dispatchers/prepare_default.rb +2 -2
  33. data/lib/dry/initializer/dispatchers/prepare_ivar.rb +1 -1
  34. data/lib/dry/initializer/dispatchers/prepare_reader.rb +3 -3
  35. data/lib/dry/initializer/dispatchers/wrap_type.rb +1 -0
  36. data/lib/dry/initializer/mixin.rb +4 -4
  37. data/lib/dry/initializer/version.rb +5 -0
  38. data/lib/tasks/benchmark.rake +13 -13
  39. data/lib/tasks/profile.rake +16 -16
  40. data/project.yml +2 -0
  41. data/spec/attributes_spec.rb +7 -7
  42. data/spec/coercion_of_nil_spec.rb +3 -3
  43. data/spec/custom_dispatchers_spec.rb +6 -6
  44. data/spec/custom_initializer_spec.rb +2 -2
  45. data/spec/default_values_spec.rb +9 -9
  46. data/spec/definition_spec.rb +10 -10
  47. data/spec/invalid_default_spec.rb +2 -2
  48. data/spec/list_type_spec.rb +8 -8
  49. data/spec/missed_default_spec.rb +2 -2
  50. data/spec/nested_type_spec.rb +10 -10
  51. data/spec/optional_spec.rb +16 -16
  52. data/spec/options_tolerance_spec.rb +2 -2
  53. data/spec/public_attributes_utility_spec.rb +5 -5
  54. data/spec/reader_spec.rb +13 -13
  55. data/spec/repetitive_definitions_spec.rb +9 -9
  56. data/spec/several_assignments_spec.rb +9 -9
  57. data/spec/spec_helper.rb +3 -8
  58. data/spec/subclassing_spec.rb +5 -5
  59. data/spec/support/coverage.rb +7 -0
  60. data/spec/support/warnings.rb +7 -0
  61. data/spec/type_argument_spec.rb +13 -13
  62. data/spec/type_constraint_spec.rb +44 -26
  63. data/spec/value_coercion_via_dry_types_spec.rb +7 -7
  64. metadata +11 -31
@@ -1,6 +1,6 @@
1
- require "dry-types"
1
+ require 'dry-types'
2
2
 
3
- describe "value coercion via dry-types" do
3
+ describe 'value coercion via dry-types' do
4
4
  before do
5
5
  module Test::Types
6
6
  include Dry.Types
@@ -10,18 +10,18 @@ describe "value coercion via dry-types" do
10
10
  extend Dry::Initializer
11
11
 
12
12
  param :foo, type: Test::Types::Coercible::String
13
- option :bar, proc(&:to_i), default: proc { "16" }
13
+ option :bar, proc(&:to_i), default: proc { '16' }
14
14
  end
15
15
  end
16
16
 
17
- it "coerces assigned values" do
18
- subject = Test::Foo.new :foo, bar: "13"
17
+ it 'coerces assigned values' do
18
+ subject = Test::Foo.new :foo, bar: '13'
19
19
 
20
- expect(subject.foo).to eql "foo"
20
+ expect(subject.foo).to eql 'foo'
21
21
  expect(subject.bar).to eql 13
22
22
  end
23
23
 
24
- it "coerces defaults as well" do
24
+ it 'coerces defaults as well' do
25
25
  subject = Test::Foo.new :foo
26
26
 
27
27
  expect(subject.bar).to eql 16
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.2
4
+ version: 3.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vladimir Kochnev (marshall-lee)
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-11-06 00:00:00.000000000 Z
12
+ date: 2020-01-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
@@ -39,34 +39,6 @@ dependencies:
39
39
  - - ">"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '10'
42
- - !ruby/object:Gem::Dependency
43
- name: dry-types
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - ">"
47
- - !ruby/object:Gem::Version
48
- version: 0.5.1
49
- type: :development
50
- prerelease: false
51
- version_requirements: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - ">"
54
- - !ruby/object:Gem::Version
55
- version: 0.5.1
56
- - !ruby/object:Gem::Dependency
57
- name: rubocop
58
- requirement: !ruby/object:Gem::Requirement
59
- requirements:
60
- - - "~>"
61
- - !ruby/object:Gem::Version
62
- version: 0.49.0
63
- type: :development
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - "~>"
68
- - !ruby/object:Gem::Version
69
- version: 0.49.0
70
42
  description:
71
43
  email: andrew.kozin@gmail.com
72
44
  executables: []
@@ -90,6 +62,7 @@ files:
90
62
  - CODE_OF_CONDUCT.md
91
63
  - CONTRIBUTING.md
92
64
  - Gemfile
65
+ - Gemfile.devtools
93
66
  - Guardfile
94
67
  - LICENSE
95
68
  - LICENSE.txt
@@ -101,6 +74,7 @@ files:
101
74
  - benchmarks/with_coercion.rb
102
75
  - benchmarks/with_defaults.rb
103
76
  - benchmarks/with_defaults_and_coercion.rb
77
+ - bin/.gitkeep
104
78
  - docsite/source/attributes.html.md
105
79
  - docsite/source/container-version.html.md
106
80
  - docsite/source/index.html.md
@@ -139,8 +113,10 @@ files:
139
113
  - lib/dry/initializer/mixin/root.rb
140
114
  - lib/dry/initializer/struct.rb
141
115
  - lib/dry/initializer/undefined.rb
116
+ - lib/dry/initializer/version.rb
142
117
  - lib/tasks/benchmark.rake
143
118
  - lib/tasks/profile.rake
119
+ - project.yml
144
120
  - spec/attributes_spec.rb
145
121
  - spec/coercion_of_nil_spec.rb
146
122
  - spec/custom_dispatchers_spec.rb
@@ -159,6 +135,8 @@ files:
159
135
  - spec/several_assignments_spec.rb
160
136
  - spec/spec_helper.rb
161
137
  - spec/subclassing_spec.rb
138
+ - spec/support/coverage.rb
139
+ - spec/support/warnings.rb
162
140
  - spec/type_argument_spec.rb
163
141
  - spec/type_constraint_spec.rb
164
142
  - spec/value_coercion_via_dry_types_spec.rb
@@ -181,7 +159,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
181
159
  - !ruby/object:Gem::Version
182
160
  version: '0'
183
161
  requirements: []
184
- rubygems_version: 3.0.6
162
+ rubygems_version: 3.0.3
185
163
  signing_key:
186
164
  specification_version: 4
187
165
  summary: DSL for declaring params and options of the initializer
@@ -204,6 +182,8 @@ test_files:
204
182
  - spec/several_assignments_spec.rb
205
183
  - spec/spec_helper.rb
206
184
  - spec/subclassing_spec.rb
185
+ - spec/support/coverage.rb
186
+ - spec/support/warnings.rb
207
187
  - spec/type_argument_spec.rb
208
188
  - spec/type_constraint_spec.rb
209
189
  - spec/value_coercion_via_dry_types_spec.rb