dry-struct-setters 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9be6dcfd547bbf58a7fd2e1efc695bf7d1da0098a8e5c7638ff489455526db1c
4
- data.tar.gz: f3e99d04c1e0371ab8bd0ad6e3cf17da7d9ec87eb1fe93882d9b0c49a49b8abe
3
+ metadata.gz: 9e01a70140710199eba2fdbc8fe8ad072bf0d9550c44e6ecf9096b155ec130ca
4
+ data.tar.gz: 2b3d5eb7885d613ca73368a398cf9f8ab40880062d40ec2745f40f4de0c3f7f8
5
5
  SHA512:
6
- metadata.gz: 60a444f059f3955436e8b9d812d5b0243c14c64e83e5ff2d29a59a68edaae459fed1679719d1a5e02fd4c5b1b09c81cc27a243df278eae02a7c0d451fb02b1e9
7
- data.tar.gz: da3acded3ea2bbf26ca93457feae1404258c1b1e8e7775e988715c09367fe2f010849e9b9c64266224c19001ac4536faf6ee2c3f9a65c59af0dfdc381773fdbd
6
+ metadata.gz: 985107b024ed611f0d1b2895c7a1632e78aef45be39e586a449be92b81ed7fc660b2aac5f8ec641b5888cc3d8beebcbda9cb6ce48ba539cb7dcee524d3f201fc
7
+ data.tar.gz: 65fc4d3b1c3b3dac69ba61c27c40f8561a9ed2f6e332c6b78a700ad36354477de58afc1a967e42c155d9963748b5c46c149242c7a1471407a0225c2f7065d85c
@@ -1,10 +1,10 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.1
5
4
  - 2.2
6
5
  - 2.3
7
6
  - 2.4
7
+ - 2.5
8
8
  - ruby-head
9
9
  matrix:
10
10
  allow_failures:
@@ -21,10 +21,10 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.required_ruby_version = '>= 2.1'
23
23
 
24
- spec.add_runtime_dependency 'dry-struct', '>= 0.5.0'
24
+ spec.add_runtime_dependency 'dry-struct', '>= 1.0.0'
25
25
 
26
- spec.add_development_dependency 'bundler', '~> 1.15'
27
- spec.add_development_dependency 'pry', '~> 0.10'
28
- spec.add_development_dependency 'rake', '~> 12.0'
29
- spec.add_development_dependency 'rspec', '~> 3.6'
26
+ spec.add_development_dependency 'bundler'
27
+ spec.add_development_dependency 'pry'
28
+ spec.add_development_dependency 'rake'
29
+ spec.add_development_dependency 'rspec'
30
30
  end
@@ -11,8 +11,8 @@ module Dry
11
11
  def self.included(struct)
12
12
  struct.extend(ClassMethods)
13
13
 
14
- struct.schema.each do |attribute, type|
15
- Dry::Struct::Setters.define_setter_for(struct: struct, attribute: attribute, type: type)
14
+ struct.schema.each do |key|
15
+ Dry::Struct::Setters.define_setter_for(struct: struct, attribute: key.name, type: key.type)
16
16
  end
17
17
  end
18
18
 
@@ -27,6 +27,7 @@ module Dry
27
27
  end
28
28
 
29
29
  def self.define_setter_for(struct:, attribute:, type:)
30
+ attribute = remove_trailing_question_mark(attribute)
30
31
  setter = "#{attribute}=".to_sym
31
32
 
32
33
  struct.class_eval do
@@ -39,6 +40,11 @@ module Dry
39
40
  end
40
41
  end
41
42
  end
43
+
44
+ def self.remove_trailing_question_mark(attribute)
45
+ # See https://github.com/tbuehlmann/dry-struct-setters/issues/2
46
+ attribute.to_s.chomp('?').to_sym
47
+ end
42
48
  end
43
49
  end
44
50
  end
@@ -3,7 +3,7 @@
3
3
  module Dry
4
4
  class Struct
5
5
  module Setters
6
- VERSION = '0.2.0'
6
+ VERSION = '0.3.0'
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dry-struct-setters
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Bühlmann
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-06-08 00:00:00.000000000 Z
11
+ date: 2020-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-struct
@@ -16,70 +16,70 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.5.0
19
+ version: 1.0.0
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: 0.5.0
26
+ version: 1.0.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '1.15'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '1.15'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: pry
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '0.10'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '0.10'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '12.0'
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '12.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '3.6'
75
+ version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '3.6'
82
+ version: '0'
83
83
  description: This gem adds the ability to add setter methods to otherwise setter-method-less
84
84
  Dry::Struct subclasses.
85
85
  email:
@@ -121,8 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  - !ruby/object:Gem::Version
122
122
  version: '0'
123
123
  requirements: []
124
- rubyforge_project:
125
- rubygems_version: 2.7.6
124
+ rubygems_version: 3.1.2
126
125
  signing_key:
127
126
  specification_version: 4
128
127
  summary: Setter methods for Dry::Struct subclasses