genderize 0.0.8 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +109 -11
- data/config/locales/genderize.en.yml +5 -0
- data/lib/genderize.rb +3 -7
- data/lib/genderize/gender.rb +6 -2
- data/lib/genderize/version.rb +1 -1
- data/spec/dummy/spec/models/user_spec.rb +55 -11
- data/spec/lib/gender_spec.rb +74 -12
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2ee1ba31da4da138caff5ae82d75060bc9b7a65e
|
4
|
+
data.tar.gz: 02a6a2d5a0894b28b546db7fdedee478c9fe2a1d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 949548a45ebe65219d834b7d9f8e3a92f3ed525ac67cb38570d8580d0d97fd474cc832c71f5e8af49e3fb7b46b480af53f52ba29c0b18fe291850992a9cff94d
|
7
|
+
data.tar.gz: 1b8c9cac5895dd580e0ab0733c45ed77d7be7c085be9e8bf9f22ce03e4ee0ce46de3fea67c02309802860152d4f3f5665d93a510ea2b81dd82a2389f859467ab
|
data/README.md
CHANGED
@@ -2,28 +2,126 @@
|
|
2
2
|
|
3
3
|
Genderize is a simple Rails gem for adding gender helper methods to Rails models.
|
4
4
|
|
5
|
+
_New:_ we now have non-binary as an option
|
6
|
+
|
5
7
|
## Example
|
6
8
|
|
7
9
|
|
8
|
-
|
10
|
+
### Feminine
|
11
|
+
|
12
|
+
# Setting the gender is simple - just set the attribute value to "m", "n", or "f"
|
9
13
|
@user = User.new(gender: "f")
|
10
14
|
|
15
|
+
# This also works
|
16
|
+
@user = User.new(gender: "female")
|
17
|
+
|
11
18
|
# This gives us a few helper methods to add gender specific text to our views
|
12
|
-
@user.gender.male? # => false
|
19
|
+
@user.gender.male? # => false
|
20
|
+
@user.gender.non_binary? # => false
|
13
21
|
@user.gender.name # => "female"
|
14
22
|
@user.gender.to_s # => "f"
|
15
23
|
@user.gender.abbr # => "f"
|
16
|
-
|
24
|
+
|
17
25
|
# gender pronouns
|
18
26
|
# As the subject of a sentence
|
19
27
|
@user.gender.subject # => 'she'
|
28
|
+
|
20
29
|
# As the object of a sentence
|
21
30
|
@user.gender.object # => 'her'
|
31
|
+
|
22
32
|
# Showing possession
|
23
33
|
@user.gender.possessive # => 'her'
|
34
|
+
|
35
|
+
# Writing a casual form of the gender
|
36
|
+
@user.gender.casual # => "girl"
|
37
|
+
|
38
|
+
### Masculine
|
39
|
+
|
40
|
+
# Setting the gender is simple - just set the attribute value to "m", "n", or "f"
|
41
|
+
@user = User.new(gender: "m")
|
42
|
+
|
43
|
+
# This also works
|
44
|
+
@user = User.new(gender: "male")
|
45
|
+
|
46
|
+
# This gives us a few helper methods to add gender specific text to our views
|
47
|
+
@user.gender.female? # => false
|
48
|
+
@user.gender.non_binary? # => false
|
49
|
+
@user.gender.name # => "male"
|
50
|
+
@user.gender.to_s # => "m"
|
51
|
+
@user.gender.abbr # => "m"
|
52
|
+
|
53
|
+
# gender pronouns
|
54
|
+
# As the subject of a sentence
|
55
|
+
@user.gender.subject # => 'he'
|
56
|
+
|
57
|
+
# As the object of a sentence
|
58
|
+
@user.gender.object # => 'him'
|
59
|
+
|
60
|
+
# Showing possession
|
61
|
+
@user.gender.possessive # => 'his'
|
62
|
+
|
63
|
+
# Writing a casual form of the gender
|
64
|
+
@user.gender.casual # => "guy"
|
65
|
+
|
66
|
+
### Non-binary
|
67
|
+
|
68
|
+
# Setting the gender is simple - just set the attribute value to "m", "n", or "f"
|
69
|
+
@user = User.new(gender: "n")
|
70
|
+
|
71
|
+
# This also works
|
72
|
+
@user = User.new(gender: "non-binary")
|
73
|
+
@user = User.new(gender: "non_binary")
|
74
|
+
@user = User.new(gender: "non binary")
|
75
|
+
|
76
|
+
# This gives us a few helper methods to add gender specific text to our views
|
77
|
+
@user.gender.female? # => false
|
78
|
+
@user.gender.male? # => false
|
79
|
+
@user.gender.non_binary? # => true
|
80
|
+
@user.gender.name # => "non_binary"
|
81
|
+
@user.gender.to_s # => "n"
|
82
|
+
@user.gender.abbr # => "n"
|
83
|
+
|
84
|
+
# gender pronouns
|
85
|
+
# As the subject of a sentence
|
86
|
+
@user.gender.subject # => 'they'
|
87
|
+
|
88
|
+
# As the object of a sentence
|
89
|
+
@user.gender.object # => 'them'
|
90
|
+
|
91
|
+
# Showing possession
|
92
|
+
@user.gender.possessive # => 'their'
|
93
|
+
|
94
|
+
# Writing a casual form of the gender
|
95
|
+
@user.gender.casual # => "person"
|
96
|
+
|
97
|
+
### Blank (no gender specified)
|
98
|
+
|
99
|
+
@user = User.new(gender: "")
|
100
|
+
|
101
|
+
# This gives us a few helper methods to add gender specific text to our views
|
102
|
+
@user.gender.female? # => false
|
103
|
+
@user.gender.male? # => false
|
104
|
+
@user.gender.name # => ""
|
105
|
+
@user.gender.to_s # => ""
|
106
|
+
@user.gender.abbr # => ""
|
107
|
+
|
108
|
+
# gender pronouns
|
109
|
+
# As the subject of a sentence
|
110
|
+
@user.gender.subject # => 'they'
|
111
|
+
|
112
|
+
# As the object of a sentence
|
113
|
+
@user.gender.object # => 'them'
|
114
|
+
|
115
|
+
# Showing possession
|
116
|
+
@user.gender.possessive # => 'their'
|
117
|
+
|
24
118
|
# Writing a casual form of the gender
|
25
|
-
@user.gender.casual # => "
|
26
|
-
|
119
|
+
@user.gender.casual # => "person"
|
120
|
+
|
121
|
+
## Changing these values
|
122
|
+
|
123
|
+
You can change the values for each of the methods described above by modifying your locales file. See [config/locales/en.yml](config/locales/genderize.en.yml) for more info.
|
124
|
+
|
27
125
|
## Installation
|
28
126
|
|
29
127
|
Add this to your Gemfile:
|
@@ -45,7 +143,7 @@ Finally, to *genderize* a model attribute:
|
|
45
143
|
class User < ActiveRecord::Base
|
46
144
|
|
47
145
|
genderize
|
48
|
-
|
146
|
+
|
49
147
|
# ... or, if your db column isn't named `gender`
|
50
148
|
genderize(:user_gender)
|
51
149
|
|
@@ -61,7 +159,7 @@ by another Githuber
|
|
61
159
|
|
62
160
|
## Documentation
|
63
161
|
|
64
|
-
Full documentation is available here: http://rubydoc.info/gems/
|
162
|
+
Full documentation is available here: http://rubydoc.info/gems/genderize
|
65
163
|
|
66
164
|
## Contributing
|
67
165
|
|
@@ -71,12 +169,12 @@ You're welcome to contribute to Genderize.
|
|
71
169
|
|
72
170
|
Copyright 2013 [Katana Code Ltd.](http://katanacode.com)
|
73
171
|
|
74
|
-
See
|
172
|
+
See [LEGAL](MIT-LICENSE) for full details.
|
75
173
|
|
76
174
|
## Credits
|
77
175
|
|
78
|
-
Developed by [Katana
|
176
|
+
Developed by [Katana](http://katanacode.com)
|
79
177
|
|
80
|
-
## About Katana
|
178
|
+
## About Katana
|
81
179
|
|
82
|
-
Katana
|
180
|
+
Katana are [mobile and web app developers based in Edinburgh, Scotland](http://katanacode.com/ "Katana").
|
@@ -3,26 +3,31 @@ en:
|
|
3
3
|
name:
|
4
4
|
masculine: "male"
|
5
5
|
feminine: "female"
|
6
|
+
non_binary: "non_binary"
|
6
7
|
blank: ""
|
7
8
|
|
8
9
|
# pronouns
|
9
10
|
subject:
|
10
11
|
masculine: 'he'
|
11
12
|
feminine: 'she'
|
13
|
+
non_binary: they
|
12
14
|
blank: "they"
|
13
15
|
|
14
16
|
object:
|
15
17
|
masculine: 'him'
|
16
18
|
feminine: 'her'
|
19
|
+
non_binary: them
|
17
20
|
blank: "them"
|
18
21
|
|
19
22
|
possessive:
|
20
23
|
masculine: 'his'
|
21
24
|
feminine: 'her'
|
25
|
+
non_binary: their
|
22
26
|
blank: "their"
|
23
27
|
|
24
28
|
# Other forms
|
25
29
|
casual:
|
26
30
|
masculine: guy
|
27
31
|
feminine: girl
|
32
|
+
non_binary: person
|
28
33
|
blank: person
|
data/lib/genderize.rb
CHANGED
@@ -35,16 +35,12 @@ module Genderize
|
|
35
35
|
# Raises ArgumentError if gender is not a single alphanumeric character "m" or "f"
|
36
36
|
define_method "#{col_name}=" do |string|
|
37
37
|
string = string.to_s.first
|
38
|
-
unless string.to_s =~ /\A(m|f|)\Z/i
|
39
|
-
raise ArgumentError, "Gender must be one of '', 'm', or 'f'"
|
38
|
+
unless string.to_s =~ /\A(m|f|n|)\Z/i
|
39
|
+
raise ArgumentError, "Gender must be one of '', 'n', 'm', or 'f'"
|
40
40
|
end
|
41
41
|
write_attribute(col_name, string)
|
42
42
|
|
43
|
-
|
44
|
-
instance_variable_set("@#{col_name}", string)
|
45
|
-
else
|
46
|
-
instance_variable_set("@#{col_name}", Genderize::Gender.new(read_attribute(col_name)))
|
47
|
-
end
|
43
|
+
instance_variable_set("@#{col_name}", Genderize::Gender.new(read_attribute(col_name)))
|
48
44
|
end
|
49
45
|
|
50
46
|
end
|
data/lib/genderize/gender.rb
CHANGED
@@ -4,13 +4,13 @@ module Genderize
|
|
4
4
|
include I18n
|
5
5
|
|
6
6
|
# Maps the gender abbreviation name to the full name for translation keys
|
7
|
-
ABR_KEY_NAME_MAPPING = { "" => "blank", "m" => "masculine", "f" => "feminine" }
|
7
|
+
ABR_KEY_NAME_MAPPING = { "" => "blank", "m" => "masculine", "f" => "feminine", "n" => "non_binary" }
|
8
8
|
|
9
9
|
|
10
10
|
attr_reader :abbr
|
11
11
|
|
12
12
|
def initialize(abbr)
|
13
|
-
unless abbr.blank? or abbr.to_s =~ /\A(f|m|female|male)\Z/i
|
13
|
+
unless abbr.blank? or abbr.to_s =~ /\A(f|m|n|female|male|non[ -_]?binary)\Z/i
|
14
14
|
raise "Invalid abbreviation: '#{abbr}'"
|
15
15
|
end
|
16
16
|
@abbr = abbr.blank? ? '' : abbr.to_s.first.downcase
|
@@ -48,6 +48,10 @@ module Genderize
|
|
48
48
|
abbr == 'f'
|
49
49
|
end
|
50
50
|
|
51
|
+
def non_binary?
|
52
|
+
abbr == 'n'
|
53
|
+
end
|
54
|
+
|
51
55
|
def blank?
|
52
56
|
abbr == ""
|
53
57
|
end
|
data/lib/genderize/version.rb
CHANGED
@@ -4,26 +4,69 @@ describe User, type: :model do
|
|
4
4
|
|
5
5
|
describe "gender" do
|
6
6
|
|
7
|
-
let(:user) { User.new(gender:
|
7
|
+
let(:user) { User.new(gender: gender) }
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
context "when female" do
|
10
|
+
let(:gender) { "f" }
|
11
|
+
|
12
|
+
it "should return a Gender object" do
|
13
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should be female?" do
|
17
|
+
expect(user.gender).to be_female
|
18
|
+
end
|
11
19
|
end
|
12
20
|
|
13
|
-
|
14
|
-
|
21
|
+
context "when male" do
|
22
|
+
let(:gender) { "m" }
|
23
|
+
|
24
|
+
it "should return a Gender object" do
|
25
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should be male?" do
|
29
|
+
expect(user.gender).to be_male
|
30
|
+
end
|
15
31
|
end
|
16
32
|
|
17
|
-
|
18
|
-
|
19
|
-
|
33
|
+
context "when non-binary" do
|
34
|
+
let(:gender) { "n" }
|
35
|
+
|
36
|
+
it "should return a Gender object" do
|
37
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
38
|
+
end
|
39
|
+
|
40
|
+
it "should be non_binary?" do
|
41
|
+
expect(user.gender).to be_non_binary
|
42
|
+
end
|
20
43
|
end
|
21
44
|
|
22
|
-
|
23
|
-
|
24
|
-
|
45
|
+
context "when blank" do
|
46
|
+
let(:gender) { "" }
|
47
|
+
|
48
|
+
it "should return a Gender object" do
|
49
|
+
expect(user.gender).to be_an_instance_of(Genderize::Gender)
|
50
|
+
end
|
51
|
+
|
52
|
+
it "should be blank?" do
|
53
|
+
expect(user.gender).to be_blank
|
54
|
+
end
|
25
55
|
end
|
26
56
|
|
57
|
+
context "when changed" do
|
58
|
+
let(:gender) { "f" }
|
59
|
+
|
60
|
+
it "should be male when changed" do
|
61
|
+
user.gender = "m"
|
62
|
+
expect(user.gender).to be_male
|
63
|
+
end
|
64
|
+
|
65
|
+
it "should be blank when changed" do
|
66
|
+
user.gender = ""
|
67
|
+
expect(user.gender).to be_blank
|
68
|
+
end
|
69
|
+
end
|
27
70
|
end
|
28
71
|
|
29
72
|
describe "full gender names" do
|
@@ -31,6 +74,7 @@ describe User, type: :model do
|
|
31
74
|
it 'should set the gender as the abbreviation' do
|
32
75
|
expect(User.new(gender: "female").gender).to be_female
|
33
76
|
expect(User.new(gender: "male").gender).to be_male
|
77
|
+
expect(User.new(gender: "non-binary").gender).to be_non_binary
|
34
78
|
expect(User.new(gender: "").gender).to be_blank
|
35
79
|
end
|
36
80
|
|
data/spec/lib/gender_spec.rb
CHANGED
@@ -2,18 +2,27 @@ require "spec_helper"
|
|
2
2
|
|
3
3
|
describe Genderize::Gender do
|
4
4
|
|
5
|
-
let(:female)
|
6
|
-
let(:male)
|
7
|
-
let(:
|
5
|
+
let(:female) { Gender.new("f") }
|
6
|
+
let(:male) { Gender.new("M") }
|
7
|
+
let(:non_binary) { Gender.new("n") }
|
8
|
+
let(:blank) { Gender.new('') }
|
8
9
|
|
9
10
|
context "when full gender name is used" do
|
10
11
|
|
11
12
|
it "should find the correct abbreviation" do
|
12
13
|
expect(Gender.new("female").abbr).to eql('f')
|
13
14
|
expect(Gender.new("male").abbr).to eql('m')
|
15
|
+
expect(Gender.new("non_binary").abbr).to eql('n')
|
14
16
|
expect(Gender.new("").abbr).to eql('')
|
15
17
|
end
|
16
18
|
|
19
|
+
it "can match a dash, underscore, space, or no separator for non_binary" do
|
20
|
+
separators = ["-", "_", " ", ''].each do |separator|
|
21
|
+
name = "non#{separator}binary"
|
22
|
+
expect(Gender.new(name).abbr).to eql('n')
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
17
26
|
end
|
18
27
|
|
19
28
|
|
@@ -35,6 +44,14 @@ describe Genderize::Gender do
|
|
35
44
|
|
36
45
|
end
|
37
46
|
|
47
|
+
context "when non_binary" do
|
48
|
+
|
49
|
+
it "should be 'non_binary" do
|
50
|
+
expect(non_binary.name).to eql("non_binary")
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
|
38
55
|
context "when blank" do
|
39
56
|
|
40
57
|
it "should be ''" do
|
@@ -64,6 +81,14 @@ describe Genderize::Gender do
|
|
64
81
|
|
65
82
|
end
|
66
83
|
|
84
|
+
context "when non_binary" do
|
85
|
+
|
86
|
+
it "should be 'n'" do
|
87
|
+
expect(non_binary.abbr).to eql("n")
|
88
|
+
end
|
89
|
+
|
90
|
+
end
|
91
|
+
|
67
92
|
context "when blank" do
|
68
93
|
|
69
94
|
it "should be ''" do
|
@@ -93,6 +118,14 @@ describe Genderize::Gender do
|
|
93
118
|
|
94
119
|
end
|
95
120
|
|
121
|
+
context "when non_binary" do
|
122
|
+
|
123
|
+
it "should be 'they'" do
|
124
|
+
expect(non_binary.subject).to eql("they")
|
125
|
+
end
|
126
|
+
|
127
|
+
end
|
128
|
+
|
96
129
|
context "when blank" do
|
97
130
|
|
98
131
|
it "should be 'they'" do
|
@@ -121,6 +154,14 @@ describe Genderize::Gender do
|
|
121
154
|
|
122
155
|
end
|
123
156
|
|
157
|
+
context "when non_binary" do
|
158
|
+
|
159
|
+
it "should be 'them'" do
|
160
|
+
expect(non_binary.object).to eql("them")
|
161
|
+
end
|
162
|
+
|
163
|
+
end
|
164
|
+
|
124
165
|
context "when blank" do
|
125
166
|
|
126
167
|
it "should be 'them'" do
|
@@ -150,6 +191,14 @@ describe Genderize::Gender do
|
|
150
191
|
|
151
192
|
end
|
152
193
|
|
194
|
+
context "when non_binary" do
|
195
|
+
|
196
|
+
it "should be 'their'" do
|
197
|
+
expect(non_binary.possessive).to eql("their")
|
198
|
+
end
|
199
|
+
|
200
|
+
end
|
201
|
+
|
153
202
|
context "when blank" do
|
154
203
|
|
155
204
|
it "should be 'their'" do
|
@@ -180,6 +229,14 @@ describe Genderize::Gender do
|
|
180
229
|
|
181
230
|
end
|
182
231
|
|
232
|
+
context "when non_binary" do
|
233
|
+
|
234
|
+
it "should be 'person'" do
|
235
|
+
expect(non_binary.casual).to eql("person")
|
236
|
+
end
|
237
|
+
|
238
|
+
end
|
239
|
+
|
183
240
|
context "when blank" do
|
184
241
|
|
185
242
|
it "should be 'person'" do
|
@@ -194,15 +251,17 @@ describe Genderize::Gender do
|
|
194
251
|
describe :to_s do
|
195
252
|
|
196
253
|
it "should equal the abbr value" do
|
197
|
-
expect(male.to_s).to
|
198
|
-
expect(female.to_s).to
|
199
|
-
expect(
|
254
|
+
expect(male.to_s).to eql(male.abbr)
|
255
|
+
expect(female.to_s).to eql(female.abbr)
|
256
|
+
expect(non_binary.to_s).to eql(non_binary.abbr)
|
257
|
+
expect(blank.to_s).to eql(blank.abbr)
|
200
258
|
end
|
201
259
|
|
202
260
|
it "returns a string" do
|
203
|
-
expect(male.to_s).to
|
204
|
-
expect(female.to_s).to
|
205
|
-
expect(
|
261
|
+
expect(male.to_s).to be_an_instance_of(String)
|
262
|
+
expect(female.to_s).to be_an_instance_of(String)
|
263
|
+
expect(non_binary.to_s).to be_an_instance_of(String)
|
264
|
+
expect(blank.to_s).to be_an_instance_of(String)
|
206
265
|
end
|
207
266
|
|
208
267
|
end
|
@@ -210,9 +269,10 @@ describe Genderize::Gender do
|
|
210
269
|
describe :capital_abbr do
|
211
270
|
|
212
271
|
it "should equal the abbr value capitalized" do
|
213
|
-
expect(male.capital_abbr).to
|
214
|
-
expect(female.capital_abbr).to
|
215
|
-
expect(
|
272
|
+
expect(male.capital_abbr).to eql(male.abbr.capitalize)
|
273
|
+
expect(female.capital_abbr).to eql(female.abbr.capitalize)
|
274
|
+
expect(non_binary.capital_abbr).to eql(non_binary.abbr.capitalize)
|
275
|
+
expect(blank.capital_abbr).to eql(blank.abbr.capitalize)
|
216
276
|
end
|
217
277
|
|
218
278
|
end
|
@@ -222,6 +282,7 @@ describe Genderize::Gender do
|
|
222
282
|
it "should return true if passed abbr value" do
|
223
283
|
expect(male == "m").to be_truthy
|
224
284
|
expect(female == "f").to be_truthy
|
285
|
+
expect(non_binary == "n").to be_truthy
|
225
286
|
expect(blank == nil).to be_truthy
|
226
287
|
expect(blank == '').to be_truthy
|
227
288
|
end
|
@@ -229,6 +290,7 @@ describe Genderize::Gender do
|
|
229
290
|
it "should return false if not passed abbr value" do
|
230
291
|
expect(male == "f").to be_falsey
|
231
292
|
expect(female == 1).to be_falsey
|
293
|
+
expect(non_binary == "").to be_falsey
|
232
294
|
expect(blank == "$").to be_falsey
|
233
295
|
end
|
234
296
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: genderize
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bodacious
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-08-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rdoc
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
55
69
|
description: A helpful class for gender-specific models in Ruby applications. Genderize
|
56
70
|
adds useful helper methods for various pronouns and other written forms of male
|
57
71
|
and female genders.
|
@@ -131,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
131
145
|
version: '0'
|
132
146
|
requirements: []
|
133
147
|
rubyforge_project:
|
134
|
-
rubygems_version: 2.6.
|
148
|
+
rubygems_version: 2.6.11
|
135
149
|
signing_key:
|
136
150
|
specification_version: 4
|
137
151
|
summary: A helpful class for gender-specific models in Ruby applications
|