uniqueness 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/.travis.yml +67 -15
- data/Appraisals +14 -0
- data/README.md +2 -0
- data/gemfiles/4.0.gemfile +8 -0
- data/gemfiles/4.0.gemfile.lock +123 -0
- data/gemfiles/4.1.gemfile +5 -0
- data/gemfiles/4.1.gemfile.lock +127 -0
- data/gemfiles/4.2.gemfile +7 -0
- data/gemfiles/4.2.gemfile.lock +153 -0
- data/gemfiles/5.0.gemfile +1 -0
- data/gemfiles/5.0.gemfile.lock +2 -2
- data/gemfiles/5.1.gemfile +1 -0
- data/gemfiles/5.1.gemfile.lock +2 -2
- data/gemfiles/5.2.gemfile +1 -0
- data/gemfiles/5.2.gemfile.lock +2 -2
- data/gemfiles/6.0.gemfile +1 -0
- data/gemfiles/6.0.gemfile.lock +2 -2
- data/lib/uniqueness/generator.rb +2 -1
- data/lib/uniqueness/model.rb +14 -2
- data/lib/uniqueness/version.rb +1 -1
- data/uniqueness.gemspec +1 -1
- metadata +10 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 15c21bdccc3be6418bd7790452453a6c21428c7a0baa02c21a14b646d8b7e4e5
|
4
|
+
data.tar.gz: 1ea759808248b3e347ebb65daee328938a440253fb7dfa5706e00b1010c86478
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 38b11ec667ff10cc9b29da7ec365a9576f76f53dbfa156efca7abf9285ece34292692cd04abe1e736f756317f520c12b4880005d08a847feebaea8e69787ba64
|
7
|
+
data.tar.gz: bedea48d8fd12243b897e6d12ab57db13f140b88aec58def96d301bbd1bea69a5aa19cabcffda93acb63c7ec139fc2f60350fed21d1eb882bbbc1ceaae64fe3c
|
data/.gitignore
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.3.0
|
data/.travis.yml
CHANGED
@@ -1,21 +1,73 @@
|
|
1
1
|
language: ruby
|
2
|
-
|
3
|
-
-
|
4
|
-
|
5
|
-
- 2.4.0
|
6
|
-
- 2.3.0
|
7
|
-
before_install:
|
8
|
-
- gem install bundler -v '~> 2'
|
9
|
-
gemfile:
|
10
|
-
- gemfiles/5.0.gemfile
|
11
|
-
- gemfiles/5.1.gemfile
|
12
|
-
- gemfiles/5.2.gemfile
|
13
|
-
- gemfiles/6.0.gemfile
|
2
|
+
|
3
|
+
before_install: gem install bundler -v '~> 1.17'
|
4
|
+
|
14
5
|
matrix:
|
15
|
-
|
16
|
-
|
6
|
+
include:
|
7
|
+
# Rails 4.0
|
8
|
+
- rvm: 2.0.0
|
9
|
+
gemfile: gemfiles/4.0.gemfile
|
10
|
+
- rvm: 2.1.10
|
11
|
+
gemfile: gemfiles/4.0.gemfile
|
12
|
+
- rvm: 2.2.10
|
13
|
+
gemfile: gemfiles/4.0.gemfile
|
14
|
+
|
15
|
+
# Rails 4.1
|
16
|
+
- rvm: 2.0.0
|
17
|
+
gemfile: gemfiles/4.1.gemfile
|
18
|
+
- rvm: 2.1.10
|
19
|
+
gemfile: gemfiles/4.1.gemfile
|
20
|
+
- rvm: 2.2.10
|
21
|
+
gemfile: gemfiles/4.1.gemfile
|
22
|
+
- rvm: 2.3.8
|
23
|
+
gemfile: gemfiles/4.1.gemfile
|
24
|
+
|
25
|
+
# Rails 4.2
|
26
|
+
- rvm: 2.1.10
|
27
|
+
gemfile: gemfiles/4.2.gemfile
|
28
|
+
- rvm: 2.2.10
|
29
|
+
gemfile: gemfiles/4.2.gemfile
|
30
|
+
- rvm: 2.3.8
|
31
|
+
gemfile: gemfiles/4.2.gemfile
|
32
|
+
- rvm: 2.4.5
|
33
|
+
gemfile: gemfiles/4.2.gemfile
|
34
|
+
|
35
|
+
# Rails 5.0
|
36
|
+
- rvm: 2.3.8
|
37
|
+
gemfile: gemfiles/5.0.gemfile
|
38
|
+
before_install: gem install bundler -v '~> 2.0'
|
39
|
+
- rvm: 2.4.5
|
40
|
+
gemfile: gemfiles/5.0.gemfile
|
41
|
+
before_install: gem install bundler -v '~> 2.0'
|
42
|
+
|
43
|
+
# Rails 5.1
|
44
|
+
- rvm: 2.3.8
|
45
|
+
gemfile: gemfiles/5.1.gemfile
|
46
|
+
before_install: gem install bundler -v '~> 2.0'
|
47
|
+
- rvm: 2.4.5
|
48
|
+
gemfile: gemfiles/5.1.gemfile
|
49
|
+
before_install: gem install bundler -v '~> 2.0'
|
50
|
+
- rvm: 2.5.3
|
51
|
+
gemfile: gemfiles/5.1.gemfile
|
52
|
+
before_install: gem install bundler -v '~> 2.0'
|
53
|
+
|
54
|
+
# Rails 5.2
|
55
|
+
- rvm: 2.3.8
|
56
|
+
gemfile: gemfiles/5.2.gemfile
|
57
|
+
before_install: gem install bundler -v '~> 2.0'
|
58
|
+
- rvm: 2.4.5
|
59
|
+
gemfile: gemfiles/5.2.gemfile
|
60
|
+
before_install: gem install bundler -v '~> 2.0'
|
61
|
+
- rvm: 2.5.3
|
62
|
+
gemfile: gemfiles/5.2.gemfile
|
63
|
+
before_install: gem install bundler -v '~> 2.0'
|
64
|
+
|
65
|
+
# Rails 6.0
|
66
|
+
- rvm: 2.5.3
|
17
67
|
gemfile: gemfiles/6.0.gemfile
|
18
|
-
|
68
|
+
before_install: gem install bundler -v '~> 2.0'
|
69
|
+
- rvm: 2.6.0
|
19
70
|
gemfile: gemfiles/6.0.gemfile
|
71
|
+
before_install: gem install bundler -v '~> 2.0'
|
20
72
|
cache:
|
21
73
|
- bundler
|
data/Appraisals
CHANGED
data/README.md
CHANGED
@@ -51,6 +51,8 @@ To auto-generate a new random string for field `foo`:
|
|
51
51
|
You can customize the generated string by
|
52
52
|
passing an options hash. The following keys are supported:
|
53
53
|
|
54
|
+
`:trigger_on` when to be generated, can be one of ActiveRecord callbacks (`before_validation`, `before_create`, `before_save`, `after_initialize`), default to __:before_validation__
|
55
|
+
|
54
56
|
`:length` number of characters, defaults to __32__
|
55
57
|
|
56
58
|
`:type` type of string, can be one of: `:human`, `:auto`, defaults to __:auto__
|
@@ -0,0 +1,123 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ..
|
3
|
+
specs:
|
4
|
+
uniqueness (1.1.0)
|
5
|
+
activerecord (>= 4.0.0)
|
6
|
+
railties (>= 4.0.0)
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
actionmailer (4.0.13)
|
12
|
+
actionpack (= 4.0.13)
|
13
|
+
mail (~> 2.5, >= 2.5.4)
|
14
|
+
actionpack (4.0.13)
|
15
|
+
activesupport (= 4.0.13)
|
16
|
+
builder (~> 3.1.0)
|
17
|
+
erubis (~> 2.7.0)
|
18
|
+
rack (~> 1.5.2)
|
19
|
+
rack-test (~> 0.6.2)
|
20
|
+
activemodel (4.0.13)
|
21
|
+
activesupport (= 4.0.13)
|
22
|
+
builder (~> 3.1.0)
|
23
|
+
activerecord (4.0.13)
|
24
|
+
activemodel (= 4.0.13)
|
25
|
+
activerecord-deprecated_finders (~> 1.0.2)
|
26
|
+
activesupport (= 4.0.13)
|
27
|
+
arel (~> 4.0.0)
|
28
|
+
activerecord-deprecated_finders (1.0.4)
|
29
|
+
activesupport (4.0.13)
|
30
|
+
i18n (~> 0.6, >= 0.6.9)
|
31
|
+
minitest (~> 4.2)
|
32
|
+
multi_json (~> 1.3)
|
33
|
+
thread_safe (~> 0.1)
|
34
|
+
tzinfo (~> 0.3.37)
|
35
|
+
appraisal (2.2.0)
|
36
|
+
bundler
|
37
|
+
rake
|
38
|
+
thor (>= 0.14.0)
|
39
|
+
arel (4.0.2)
|
40
|
+
builder (3.1.4)
|
41
|
+
concurrent-ruby (1.1.5)
|
42
|
+
coveralls (0.8.22)
|
43
|
+
json (>= 1.8, < 3)
|
44
|
+
simplecov (~> 0.16.1)
|
45
|
+
term-ansicolor (~> 1.3)
|
46
|
+
thor (~> 0.19.4)
|
47
|
+
tins (~> 1.6)
|
48
|
+
diff-lcs (1.3)
|
49
|
+
docile (1.3.1)
|
50
|
+
erubis (2.7.0)
|
51
|
+
i18n (0.9.5)
|
52
|
+
concurrent-ruby (~> 1.0)
|
53
|
+
json (2.2.0)
|
54
|
+
mail (2.7.1)
|
55
|
+
mini_mime (>= 0.1.1)
|
56
|
+
mini_mime (1.0.1)
|
57
|
+
minitest (4.7.5)
|
58
|
+
multi_json (1.13.1)
|
59
|
+
rack (1.5.5)
|
60
|
+
rack-test (0.6.3)
|
61
|
+
rack (>= 1.0)
|
62
|
+
rails (4.0.13)
|
63
|
+
actionmailer (= 4.0.13)
|
64
|
+
actionpack (= 4.0.13)
|
65
|
+
activerecord (= 4.0.13)
|
66
|
+
activesupport (= 4.0.13)
|
67
|
+
bundler (>= 1.3.0, < 2.0)
|
68
|
+
railties (= 4.0.13)
|
69
|
+
sprockets-rails (~> 2.0)
|
70
|
+
railties (4.0.13)
|
71
|
+
actionpack (= 4.0.13)
|
72
|
+
activesupport (= 4.0.13)
|
73
|
+
rake (>= 0.8.7)
|
74
|
+
thor (>= 0.18.1, < 2.0)
|
75
|
+
rake (12.3.2)
|
76
|
+
rspec (3.8.0)
|
77
|
+
rspec-core (~> 3.8.0)
|
78
|
+
rspec-expectations (~> 3.8.0)
|
79
|
+
rspec-mocks (~> 3.8.0)
|
80
|
+
rspec-core (3.8.0)
|
81
|
+
rspec-support (~> 3.8.0)
|
82
|
+
rspec-expectations (3.8.2)
|
83
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
84
|
+
rspec-support (~> 3.8.0)
|
85
|
+
rspec-mocks (3.8.0)
|
86
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
87
|
+
rspec-support (~> 3.8.0)
|
88
|
+
rspec-support (3.8.0)
|
89
|
+
simplecov (0.16.1)
|
90
|
+
docile (~> 1.1)
|
91
|
+
json (>= 1.8, < 3)
|
92
|
+
simplecov-html (~> 0.10.0)
|
93
|
+
simplecov-html (0.10.2)
|
94
|
+
sprockets (3.7.2)
|
95
|
+
concurrent-ruby (~> 1.0)
|
96
|
+
rack (> 1, < 3)
|
97
|
+
sprockets-rails (2.3.3)
|
98
|
+
actionpack (>= 3.0)
|
99
|
+
activesupport (>= 3.0)
|
100
|
+
sprockets (>= 2.8, < 4.0)
|
101
|
+
sqlite3 (1.3.13)
|
102
|
+
term-ansicolor (1.7.1)
|
103
|
+
tins (~> 1.0)
|
104
|
+
thor (0.19.4)
|
105
|
+
thread_safe (0.3.6)
|
106
|
+
tins (1.20.2)
|
107
|
+
tzinfo (0.3.55)
|
108
|
+
|
109
|
+
PLATFORMS
|
110
|
+
ruby
|
111
|
+
|
112
|
+
DEPENDENCIES
|
113
|
+
appraisal
|
114
|
+
bundler (~> 1.11)
|
115
|
+
coveralls
|
116
|
+
rails (~> 4.0.0)
|
117
|
+
rake (~> 12.0)
|
118
|
+
rspec
|
119
|
+
sqlite3 (~> 1.3, < 1.4)
|
120
|
+
uniqueness!
|
121
|
+
|
122
|
+
BUNDLED WITH
|
123
|
+
1.16.6
|
@@ -0,0 +1,127 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ..
|
3
|
+
specs:
|
4
|
+
uniqueness (1.1.0)
|
5
|
+
activerecord (>= 4.0.0)
|
6
|
+
railties (>= 4.0.0)
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
actionmailer (4.1.16)
|
12
|
+
actionpack (= 4.1.16)
|
13
|
+
actionview (= 4.1.16)
|
14
|
+
mail (~> 2.5, >= 2.5.4)
|
15
|
+
actionpack (4.1.16)
|
16
|
+
actionview (= 4.1.16)
|
17
|
+
activesupport (= 4.1.16)
|
18
|
+
rack (~> 1.5.2)
|
19
|
+
rack-test (~> 0.6.2)
|
20
|
+
actionview (4.1.16)
|
21
|
+
activesupport (= 4.1.16)
|
22
|
+
builder (~> 3.1)
|
23
|
+
erubis (~> 2.7.0)
|
24
|
+
activemodel (4.1.16)
|
25
|
+
activesupport (= 4.1.16)
|
26
|
+
builder (~> 3.1)
|
27
|
+
activerecord (4.1.16)
|
28
|
+
activemodel (= 4.1.16)
|
29
|
+
activesupport (= 4.1.16)
|
30
|
+
arel (~> 5.0.0)
|
31
|
+
activesupport (4.1.16)
|
32
|
+
i18n (~> 0.6, >= 0.6.9)
|
33
|
+
json (~> 1.7, >= 1.7.7)
|
34
|
+
minitest (~> 5.1)
|
35
|
+
thread_safe (~> 0.1)
|
36
|
+
tzinfo (~> 1.1)
|
37
|
+
appraisal (2.2.0)
|
38
|
+
bundler
|
39
|
+
rake
|
40
|
+
thor (>= 0.14.0)
|
41
|
+
arel (5.0.1.20140414130214)
|
42
|
+
builder (3.2.3)
|
43
|
+
concurrent-ruby (1.1.5)
|
44
|
+
coveralls (0.8.22)
|
45
|
+
json (>= 1.8, < 3)
|
46
|
+
simplecov (~> 0.16.1)
|
47
|
+
term-ansicolor (~> 1.3)
|
48
|
+
thor (~> 0.19.4)
|
49
|
+
tins (~> 1.6)
|
50
|
+
diff-lcs (1.3)
|
51
|
+
docile (1.3.1)
|
52
|
+
erubis (2.7.0)
|
53
|
+
i18n (0.9.5)
|
54
|
+
concurrent-ruby (~> 1.0)
|
55
|
+
json (1.8.6)
|
56
|
+
mail (2.7.1)
|
57
|
+
mini_mime (>= 0.1.1)
|
58
|
+
mini_mime (1.0.1)
|
59
|
+
minitest (5.11.3)
|
60
|
+
rack (1.5.5)
|
61
|
+
rack-test (0.6.3)
|
62
|
+
rack (>= 1.0)
|
63
|
+
rails (4.1.16)
|
64
|
+
actionmailer (= 4.1.16)
|
65
|
+
actionpack (= 4.1.16)
|
66
|
+
actionview (= 4.1.16)
|
67
|
+
activemodel (= 4.1.16)
|
68
|
+
activerecord (= 4.1.16)
|
69
|
+
activesupport (= 4.1.16)
|
70
|
+
bundler (>= 1.3.0, < 2.0)
|
71
|
+
railties (= 4.1.16)
|
72
|
+
sprockets-rails (~> 2.0)
|
73
|
+
railties (4.1.16)
|
74
|
+
actionpack (= 4.1.16)
|
75
|
+
activesupport (= 4.1.16)
|
76
|
+
rake (>= 0.8.7)
|
77
|
+
thor (>= 0.18.1, < 2.0)
|
78
|
+
rake (12.3.2)
|
79
|
+
rspec (3.8.0)
|
80
|
+
rspec-core (~> 3.8.0)
|
81
|
+
rspec-expectations (~> 3.8.0)
|
82
|
+
rspec-mocks (~> 3.8.0)
|
83
|
+
rspec-core (3.8.0)
|
84
|
+
rspec-support (~> 3.8.0)
|
85
|
+
rspec-expectations (3.8.2)
|
86
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
87
|
+
rspec-support (~> 3.8.0)
|
88
|
+
rspec-mocks (3.8.0)
|
89
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
90
|
+
rspec-support (~> 3.8.0)
|
91
|
+
rspec-support (3.8.0)
|
92
|
+
simplecov (0.16.1)
|
93
|
+
docile (~> 1.1)
|
94
|
+
json (>= 1.8, < 3)
|
95
|
+
simplecov-html (~> 0.10.0)
|
96
|
+
simplecov-html (0.10.2)
|
97
|
+
sprockets (3.7.2)
|
98
|
+
concurrent-ruby (~> 1.0)
|
99
|
+
rack (> 1, < 3)
|
100
|
+
sprockets-rails (2.3.3)
|
101
|
+
actionpack (>= 3.0)
|
102
|
+
activesupport (>= 3.0)
|
103
|
+
sprockets (>= 2.8, < 4.0)
|
104
|
+
sqlite3 (1.3.13)
|
105
|
+
term-ansicolor (1.7.1)
|
106
|
+
tins (~> 1.0)
|
107
|
+
thor (0.19.4)
|
108
|
+
thread_safe (0.3.6)
|
109
|
+
tins (1.20.2)
|
110
|
+
tzinfo (1.2.5)
|
111
|
+
thread_safe (~> 0.1)
|
112
|
+
|
113
|
+
PLATFORMS
|
114
|
+
ruby
|
115
|
+
|
116
|
+
DEPENDENCIES
|
117
|
+
appraisal
|
118
|
+
bundler (~> 1.17)
|
119
|
+
coveralls
|
120
|
+
rails (~> 4.1.0)
|
121
|
+
rake (~> 12.0)
|
122
|
+
rspec
|
123
|
+
sqlite3 (~> 1.3, < 1.4)
|
124
|
+
uniqueness!
|
125
|
+
|
126
|
+
BUNDLED WITH
|
127
|
+
1.17.3
|
@@ -0,0 +1,153 @@
|
|
1
|
+
PATH
|
2
|
+
remote: ..
|
3
|
+
specs:
|
4
|
+
uniqueness (1.1.0)
|
5
|
+
activerecord (>= 4.0.0)
|
6
|
+
railties (>= 4.0.0)
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
actionmailer (4.2.11.1)
|
12
|
+
actionpack (= 4.2.11.1)
|
13
|
+
actionview (= 4.2.11.1)
|
14
|
+
activejob (= 4.2.11.1)
|
15
|
+
mail (~> 2.5, >= 2.5.4)
|
16
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
17
|
+
actionpack (4.2.11.1)
|
18
|
+
actionview (= 4.2.11.1)
|
19
|
+
activesupport (= 4.2.11.1)
|
20
|
+
rack (~> 1.6)
|
21
|
+
rack-test (~> 0.6.2)
|
22
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
23
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
24
|
+
actionview (4.2.11.1)
|
25
|
+
activesupport (= 4.2.11.1)
|
26
|
+
builder (~> 3.1)
|
27
|
+
erubis (~> 2.7.0)
|
28
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
29
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
30
|
+
activejob (4.2.11.1)
|
31
|
+
activesupport (= 4.2.11.1)
|
32
|
+
globalid (>= 0.3.0)
|
33
|
+
activemodel (4.2.11.1)
|
34
|
+
activesupport (= 4.2.11.1)
|
35
|
+
builder (~> 3.1)
|
36
|
+
activerecord (4.2.11.1)
|
37
|
+
activemodel (= 4.2.11.1)
|
38
|
+
activesupport (= 4.2.11.1)
|
39
|
+
arel (~> 6.0)
|
40
|
+
activesupport (4.2.11.1)
|
41
|
+
i18n (~> 0.7)
|
42
|
+
minitest (~> 5.1)
|
43
|
+
thread_safe (~> 0.3, >= 0.3.4)
|
44
|
+
tzinfo (~> 1.1)
|
45
|
+
appraisal (2.2.0)
|
46
|
+
bundler
|
47
|
+
rake
|
48
|
+
thor (>= 0.14.0)
|
49
|
+
arel (6.0.4)
|
50
|
+
builder (3.2.3)
|
51
|
+
concurrent-ruby (1.1.5)
|
52
|
+
coveralls (0.8.22)
|
53
|
+
json (>= 1.8, < 3)
|
54
|
+
simplecov (~> 0.16.1)
|
55
|
+
term-ansicolor (~> 1.3)
|
56
|
+
thor (~> 0.19.4)
|
57
|
+
tins (~> 1.6)
|
58
|
+
crass (1.0.4)
|
59
|
+
diff-lcs (1.3)
|
60
|
+
docile (1.3.1)
|
61
|
+
erubis (2.7.0)
|
62
|
+
globalid (0.4.2)
|
63
|
+
activesupport (>= 4.2.0)
|
64
|
+
i18n (0.9.5)
|
65
|
+
concurrent-ruby (~> 1.0)
|
66
|
+
json (2.2.0)
|
67
|
+
loofah (2.2.3)
|
68
|
+
crass (~> 1.0.2)
|
69
|
+
nokogiri (>= 1.5.9)
|
70
|
+
mail (2.7.1)
|
71
|
+
mini_mime (>= 0.1.1)
|
72
|
+
mini_mime (1.0.1)
|
73
|
+
mini_portile2 (2.4.0)
|
74
|
+
minitest (5.11.3)
|
75
|
+
nokogiri (1.9.1)
|
76
|
+
mini_portile2 (~> 2.4.0)
|
77
|
+
rack (1.6.11)
|
78
|
+
rack-test (0.6.3)
|
79
|
+
rack (>= 1.0)
|
80
|
+
rails (4.2.11.1)
|
81
|
+
actionmailer (= 4.2.11.1)
|
82
|
+
actionpack (= 4.2.11.1)
|
83
|
+
actionview (= 4.2.11.1)
|
84
|
+
activejob (= 4.2.11.1)
|
85
|
+
activemodel (= 4.2.11.1)
|
86
|
+
activerecord (= 4.2.11.1)
|
87
|
+
activesupport (= 4.2.11.1)
|
88
|
+
bundler (>= 1.3.0, < 2.0)
|
89
|
+
railties (= 4.2.11.1)
|
90
|
+
sprockets-rails
|
91
|
+
rails-deprecated_sanitizer (1.0.3)
|
92
|
+
activesupport (>= 4.2.0.alpha)
|
93
|
+
rails-dom-testing (1.0.9)
|
94
|
+
activesupport (>= 4.2.0, < 5.0)
|
95
|
+
nokogiri (~> 1.6)
|
96
|
+
rails-deprecated_sanitizer (>= 1.0.1)
|
97
|
+
rails-html-sanitizer (1.0.4)
|
98
|
+
loofah (~> 2.2, >= 2.2.2)
|
99
|
+
railties (4.2.11.1)
|
100
|
+
actionpack (= 4.2.11.1)
|
101
|
+
activesupport (= 4.2.11.1)
|
102
|
+
rake (>= 0.8.7)
|
103
|
+
thor (>= 0.18.1, < 2.0)
|
104
|
+
rake (12.3.2)
|
105
|
+
rspec (3.8.0)
|
106
|
+
rspec-core (~> 3.8.0)
|
107
|
+
rspec-expectations (~> 3.8.0)
|
108
|
+
rspec-mocks (~> 3.8.0)
|
109
|
+
rspec-core (3.8.0)
|
110
|
+
rspec-support (~> 3.8.0)
|
111
|
+
rspec-expectations (3.8.2)
|
112
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
113
|
+
rspec-support (~> 3.8.0)
|
114
|
+
rspec-mocks (3.8.0)
|
115
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
116
|
+
rspec-support (~> 3.8.0)
|
117
|
+
rspec-support (3.8.0)
|
118
|
+
simplecov (0.16.1)
|
119
|
+
docile (~> 1.1)
|
120
|
+
json (>= 1.8, < 3)
|
121
|
+
simplecov-html (~> 0.10.0)
|
122
|
+
simplecov-html (0.10.2)
|
123
|
+
sprockets (3.7.2)
|
124
|
+
concurrent-ruby (~> 1.0)
|
125
|
+
rack (> 1, < 3)
|
126
|
+
sprockets-rails (3.2.1)
|
127
|
+
actionpack (>= 4.0)
|
128
|
+
activesupport (>= 4.0)
|
129
|
+
sprockets (>= 3.0.0)
|
130
|
+
sqlite3 (1.3.13)
|
131
|
+
term-ansicolor (1.7.1)
|
132
|
+
tins (~> 1.0)
|
133
|
+
thor (0.19.4)
|
134
|
+
thread_safe (0.3.6)
|
135
|
+
tins (1.20.2)
|
136
|
+
tzinfo (1.2.5)
|
137
|
+
thread_safe (~> 0.1)
|
138
|
+
|
139
|
+
PLATFORMS
|
140
|
+
ruby
|
141
|
+
|
142
|
+
DEPENDENCIES
|
143
|
+
appraisal
|
144
|
+
bundler (~> 1.17)
|
145
|
+
coveralls
|
146
|
+
rails (~> 4.2.0)
|
147
|
+
rake (~> 12.0)
|
148
|
+
rspec
|
149
|
+
sqlite3 (~> 1.3, < 1.4)
|
150
|
+
uniqueness!
|
151
|
+
|
152
|
+
BUNDLED WITH
|
153
|
+
1.17.3
|
data/gemfiles/5.0.gemfile
CHANGED
data/gemfiles/5.0.gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
uniqueness (
|
4
|
+
uniqueness (1.1.0)
|
5
5
|
activerecord (>= 4.0.0)
|
6
6
|
railties (>= 4.0.0)
|
7
7
|
|
@@ -148,7 +148,7 @@ PLATFORMS
|
|
148
148
|
|
149
149
|
DEPENDENCIES
|
150
150
|
appraisal
|
151
|
-
bundler (~> 2)
|
151
|
+
bundler (~> 2.0)
|
152
152
|
coveralls
|
153
153
|
rails (~> 5.0.0)
|
154
154
|
rake (~> 12.0)
|
data/gemfiles/5.1.gemfile
CHANGED
data/gemfiles/5.1.gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
uniqueness (
|
4
|
+
uniqueness (1.1.0)
|
5
5
|
activerecord (>= 4.0.0)
|
6
6
|
railties (>= 4.0.0)
|
7
7
|
|
@@ -148,7 +148,7 @@ PLATFORMS
|
|
148
148
|
|
149
149
|
DEPENDENCIES
|
150
150
|
appraisal
|
151
|
-
bundler (~> 2)
|
151
|
+
bundler (~> 2.0)
|
152
152
|
coveralls
|
153
153
|
rails (~> 5.1.0)
|
154
154
|
rake (~> 12.0)
|
data/gemfiles/5.2.gemfile
CHANGED
data/gemfiles/5.2.gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
uniqueness (
|
4
|
+
uniqueness (1.1.0)
|
5
5
|
activerecord (>= 4.0.0)
|
6
6
|
railties (>= 4.0.0)
|
7
7
|
|
@@ -156,7 +156,7 @@ PLATFORMS
|
|
156
156
|
|
157
157
|
DEPENDENCIES
|
158
158
|
appraisal
|
159
|
-
bundler (~> 2)
|
159
|
+
bundler (~> 2.0)
|
160
160
|
coveralls
|
161
161
|
rails (~> 5.2.0)
|
162
162
|
rake (~> 12.0)
|
data/gemfiles/6.0.gemfile
CHANGED
data/gemfiles/6.0.gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
uniqueness (
|
4
|
+
uniqueness (1.1.0)
|
5
5
|
activerecord (>= 4.0.0)
|
6
6
|
railties (>= 4.0.0)
|
7
7
|
|
@@ -187,7 +187,7 @@ PLATFORMS
|
|
187
187
|
|
188
188
|
DEPENDENCIES
|
189
189
|
appraisal
|
190
|
-
bundler (~> 2)
|
190
|
+
bundler (~> 2.0)
|
191
191
|
coveralls
|
192
192
|
rails (= 6.0.0.beta3)
|
193
193
|
rake (~> 12.0)
|
data/lib/uniqueness/generator.rb
CHANGED
data/lib/uniqueness/model.rb
CHANGED
@@ -16,6 +16,7 @@ module Uniqueness
|
|
16
16
|
# You can customize the generated string by
|
17
17
|
# passing an options hash. The following keys are supported:
|
18
18
|
#
|
19
|
+
# +:trigger_on+ when to be generated, can be one of ActiveRecord callbacks (<tt>before_validation</tt>, <tt>before_create</tt>, <tt>before_save</tt>, <tt>after_initialize</tt>), default to <tt>:before_validation</tt>
|
19
20
|
# +:length+ number of characters, defaults to <tt>32</tt>
|
20
21
|
#
|
21
22
|
# +:case_sensitive+ defaults to <tt>true</tt>
|
@@ -32,9 +33,20 @@ module Uniqueness
|
|
32
33
|
def has_unique_field(name, options = {})
|
33
34
|
self.uniqueness_options ||= {}
|
34
35
|
self.uniqueness_options[name] = Uniqueness.uniqueness_default_options.merge(options)
|
35
|
-
|
36
|
+
|
37
|
+
case options[:trigger_on]
|
38
|
+
when :before_create
|
39
|
+
before_create :uniqueness_generate
|
40
|
+
when :before_save
|
41
|
+
before_save :uniqueness_generate
|
42
|
+
when :after_initialize
|
43
|
+
after_initialize :uniqueness_generate
|
44
|
+
else
|
45
|
+
before_validation :uniqueness_generate
|
46
|
+
end
|
47
|
+
|
36
48
|
validate :uniqueness_validation
|
37
|
-
define_method("regenerate_#{name}") {
|
49
|
+
define_method("regenerate_#{name}") { update(name => Uniqueness.generate(self.uniqueness_options[name])) }
|
38
50
|
end
|
39
51
|
end
|
40
52
|
|
data/lib/uniqueness/version.rb
CHANGED
data/uniqueness.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.require_paths = ['lib']
|
18
18
|
spec.license = 'MIT'
|
19
19
|
|
20
|
-
spec.add_development_dependency 'bundler', '~>
|
20
|
+
spec.add_development_dependency 'bundler', '~> 1.17'
|
21
21
|
spec.add_development_dependency 'rake', '~> 12.0'
|
22
22
|
spec.add_development_dependency 'rspec'
|
23
23
|
spec.add_development_dependency 'sqlite3', '~> 1.3', '< 1.4'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uniqueness
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Omar Abdel-Wahab
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-04-
|
11
|
+
date: 2019-04-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '1.17'
|
20
20
|
type: :development
|
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: '
|
26
|
+
version: '1.17'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -149,6 +149,12 @@ files:
|
|
149
149
|
- Rakefile
|
150
150
|
- bin/console
|
151
151
|
- bin/setup
|
152
|
+
- gemfiles/4.0.gemfile
|
153
|
+
- gemfiles/4.0.gemfile.lock
|
154
|
+
- gemfiles/4.1.gemfile
|
155
|
+
- gemfiles/4.1.gemfile.lock
|
156
|
+
- gemfiles/4.2.gemfile
|
157
|
+
- gemfiles/4.2.gemfile.lock
|
152
158
|
- gemfiles/5.0.gemfile
|
153
159
|
- gemfiles/5.0.gemfile.lock
|
154
160
|
- gemfiles/5.1.gemfile
|