crypt_keeper 0.18.0 → 0.18.1

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
  SHA1:
3
- metadata.gz: ad20b829cfe76208db3c0bc6cf992a278bbd9659
4
- data.tar.gz: 15c42c4227ed3505c4eb0af0c511d81b258ba937
3
+ metadata.gz: 546bb7aa3367ddbf34fd11da51b3b36532eb7486
4
+ data.tar.gz: 175bc48b58322dd5a59b04ab885dde2f907d40a0
5
5
  SHA512:
6
- metadata.gz: df0c80648cd1bf39b88b81b5fd2e5b6fb404d01bbf529452453ab1bbd4c1654b578f274fc35a82f36d66014c62804c88363c2762af6383127e8ecc437c8b02ff
7
- data.tar.gz: aa457783481ed45731f0d1191907044a4904ec702365c6b9325e7219678329c86632ccf20e16cc2f9e7ff9008218741114d2a3fe0f8de57eea72baaf0c6baf64
6
+ metadata.gz: e76ab7631ea88e368017c1c33239f65a9a3f15edb84618134f776e4d8b947def43109f990cfff8d150adc313a39ddee0246be680c32a2aa924d4292cf3f343a4
7
+ data.tar.gz: ce6e2576f67345a2922e72cc65fd4e03f80c1bc4b620fe45dabaef2f1305ed7754204b6b485fca675c88ef8c294bbb921669fc316773def314b2be06422ebb01
@@ -21,13 +21,13 @@ Gem::Specification.new do |gem|
21
21
  gem.add_runtime_dependency 'aes', '~> 0.5.0'
22
22
  gem.add_runtime_dependency 'armor', '~> 0.0.2'
23
23
 
24
- gem.add_development_dependency 'rspec', '~> 2.13.0'
25
- gem.add_development_dependency 'guard', '~> 1.8.0'
26
- gem.add_development_dependency 'guard-rspec', '~> 2.5.4'
27
- gem.add_development_dependency 'rake', '~> 10.0.3'
24
+ gem.add_development_dependency 'rspec', '~> 2.14.0'
25
+ gem.add_development_dependency 'guard', '~> 2.6.1'
26
+ gem.add_development_dependency 'guard-rspec', '~> 4.2.9'
27
+ gem.add_development_dependency 'rake', '~> 10.3.1'
28
28
  gem.add_development_dependency 'rb-fsevent', '~> 0.9.1'
29
29
  gem.add_development_dependency 'coveralls'
30
- gem.add_development_dependency 'appraisal', '~> 0.5.2'
30
+ gem.add_development_dependency 'appraisal', '~> 1.0.0'
31
31
 
32
32
  if RUBY_PLATFORM == 'java'
33
33
  gem.add_development_dependency 'jruby-openssl', '~> 0.7.7'
@@ -36,7 +36,7 @@ Gem::Specification.new do |gem|
36
36
  gem.add_development_dependency 'activerecord-jdbcmysql-adapter'
37
37
  else
38
38
  gem.add_development_dependency 'sqlite3'
39
- gem.add_development_dependency 'pg', '~> 0.15.1'
39
+ gem.add_development_dependency 'pg', '~> 0.17.1'
40
40
  gem.add_development_dependency 'mysql2', '~> 0.3.11'
41
41
  end
42
42
  end
@@ -5,4 +5,4 @@ source "https://rubygems.org"
5
5
  gem "activerecord", "~> 3.1.10"
6
6
  gem "activesupport", "~> 3.1.10"
7
7
 
8
- gemspec :path=>"../"
8
+ gemspec :path => "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
- remote: /Users/justin/work/jmazzi/crypt_keeper
2
+ remote: ../
3
3
  specs:
4
- crypt_keeper (0.17.0)
4
+ crypt_keeper (0.18.0)
5
5
  activerecord (>= 3.1, < 4.2)
6
6
  activesupport (>= 3.1, < 4.2)
7
7
  aes (~> 0.5.0)
@@ -22,73 +22,82 @@ GEM
22
22
  activesupport (3.1.12)
23
23
  multi_json (~> 1.0)
24
24
  aes (0.5.0)
25
- appraisal (0.5.2)
25
+ appraisal (1.0.0)
26
26
  bundler
27
27
  rake
28
+ thor (>= 0.14.0)
28
29
  arel (2.2.3)
29
30
  armor (0.0.3)
30
31
  builder (3.0.4)
31
- coderay (1.0.9)
32
+ celluloid (0.15.2)
33
+ timers (~> 1.1.0)
34
+ celluloid-io (0.15.0)
35
+ celluloid (>= 0.15.0)
36
+ nio4r (>= 0.5.0)
37
+ coderay (1.1.0)
32
38
  coveralls (0.7.0)
33
39
  multi_json (~> 1.3)
34
40
  rest-client
35
41
  simplecov (>= 0.7)
36
42
  term-ansicolor
37
43
  thor
38
- diff-lcs (1.2.4)
39
- ffi (1.9.0)
44
+ diff-lcs (1.2.5)
45
+ docile (1.1.3)
46
+ ffi (1.9.3)
40
47
  formatador (0.2.4)
41
- guard (1.8.3)
48
+ guard (2.6.1)
42
49
  formatador (>= 0.2.4)
43
- listen (~> 1.3)
44
- lumberjack (>= 1.0.2)
45
- pry (>= 0.9.10)
46
- thor (>= 0.14.6)
47
- guard-rspec (2.5.4)
48
- guard (>= 1.1)
49
- rspec (~> 2.11)
50
- i18n (0.6.5)
51
- listen (1.3.1)
50
+ listen (~> 2.7)
51
+ lumberjack (~> 1.0)
52
+ pry (>= 0.9.12)
53
+ thor (>= 0.18.1)
54
+ guard-rspec (4.2.9)
55
+ guard (~> 2.1)
56
+ rspec (>= 2.14, < 4.0)
57
+ i18n (0.6.9)
58
+ listen (2.7.4)
59
+ celluloid (>= 0.15.2)
60
+ celluloid-io (>= 0.15.0)
52
61
  rb-fsevent (>= 0.9.3)
53
62
  rb-inotify (>= 0.9)
54
- rb-kqueue (>= 0.2)
55
- lumberjack (1.0.4)
63
+ lumberjack (1.0.5)
56
64
  method_source (0.8.2)
57
- mime-types (1.25)
58
- multi_json (1.8.2)
59
- mysql2 (0.3.13)
60
- pg (0.15.1)
61
- pry (0.9.12.2)
62
- coderay (~> 1.0.5)
65
+ mime-types (2.2)
66
+ multi_json (1.10.0)
67
+ mysql2 (0.3.15)
68
+ nio4r (1.0.0)
69
+ pg (0.17.1)
70
+ pry (0.9.12.6)
71
+ coderay (~> 1.0)
63
72
  method_source (~> 0.8)
64
73
  slop (~> 3.4)
65
- rake (10.0.4)
66
- rb-fsevent (0.9.3)
67
- rb-inotify (0.9.2)
68
- ffi (>= 0.5.0)
69
- rb-kqueue (0.2.0)
74
+ rake (10.3.1)
75
+ rb-fsevent (0.9.4)
76
+ rb-inotify (0.9.4)
70
77
  ffi (>= 0.5.0)
71
78
  rest-client (1.6.7)
72
79
  mime-types (>= 1.16)
73
- rspec (2.13.0)
74
- rspec-core (~> 2.13.0)
75
- rspec-expectations (~> 2.13.0)
76
- rspec-mocks (~> 2.13.0)
77
- rspec-core (2.13.1)
78
- rspec-expectations (2.13.0)
80
+ rspec (2.14.1)
81
+ rspec-core (~> 2.14.0)
82
+ rspec-expectations (~> 2.14.0)
83
+ rspec-mocks (~> 2.14.0)
84
+ rspec-core (2.14.8)
85
+ rspec-expectations (2.14.5)
79
86
  diff-lcs (>= 1.1.3, < 2.0)
80
- rspec-mocks (2.13.1)
81
- simplecov (0.7.1)
82
- multi_json (~> 1.0)
83
- simplecov-html (~> 0.7.1)
84
- simplecov-html (0.7.1)
85
- slop (3.4.6)
86
- sqlite3 (1.3.8)
87
- term-ansicolor (1.2.2)
88
- tins (~> 0.8)
89
- thor (0.18.1)
90
- tins (0.12.0)
91
- tzinfo (0.3.38)
87
+ rspec-mocks (2.14.6)
88
+ simplecov (0.8.2)
89
+ docile (~> 1.1.0)
90
+ multi_json
91
+ simplecov-html (~> 0.8.0)
92
+ simplecov-html (0.8.0)
93
+ slop (3.5.0)
94
+ sqlite3 (1.3.9)
95
+ term-ansicolor (1.3.0)
96
+ tins (~> 1.0)
97
+ thor (0.19.1)
98
+ timers (1.1.0)
99
+ tins (1.3.0)
100
+ tzinfo (0.3.39)
92
101
 
93
102
  PLATFORMS
94
103
  ruby
@@ -96,14 +105,14 @@ PLATFORMS
96
105
  DEPENDENCIES
97
106
  activerecord (~> 3.1.10)
98
107
  activesupport (~> 3.1.10)
99
- appraisal (~> 0.5.2)
108
+ appraisal (~> 1.0.0)
100
109
  coveralls
101
110
  crypt_keeper!
102
- guard (~> 1.8.0)
103
- guard-rspec (~> 2.5.4)
111
+ guard (~> 2.6.1)
112
+ guard-rspec (~> 4.2.9)
104
113
  mysql2 (~> 0.3.11)
105
- pg (~> 0.15.1)
106
- rake (~> 10.0.3)
114
+ pg (~> 0.17.1)
115
+ rake (~> 10.3.1)
107
116
  rb-fsevent (~> 0.9.1)
108
- rspec (~> 2.13.0)
117
+ rspec (~> 2.14.0)
109
118
  sqlite3
@@ -5,4 +5,4 @@ source "https://rubygems.org"
5
5
  gem "activerecord", "~> 3.2.14"
6
6
  gem "activesupport", "~> 3.2.14"
7
7
 
8
- gemspec :path=>"../"
8
+ gemspec :path => "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
- remote: /Users/justin/work/jmazzi/crypt_keeper
2
+ remote: ../
3
3
  specs:
4
- crypt_keeper (0.17.0)
4
+ crypt_keeper (0.18.0)
5
5
  activerecord (>= 3.1, < 4.2)
6
6
  activesupport (>= 3.1, < 4.2)
7
7
  aes (~> 0.5.0)
@@ -10,85 +10,94 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activemodel (3.2.14)
14
- activesupport (= 3.2.14)
13
+ activemodel (3.2.18)
14
+ activesupport (= 3.2.18)
15
15
  builder (~> 3.0.0)
16
- activerecord (3.2.14)
17
- activemodel (= 3.2.14)
18
- activesupport (= 3.2.14)
16
+ activerecord (3.2.18)
17
+ activemodel (= 3.2.18)
18
+ activesupport (= 3.2.18)
19
19
  arel (~> 3.0.2)
20
20
  tzinfo (~> 0.3.29)
21
- activesupport (3.2.14)
21
+ activesupport (3.2.18)
22
22
  i18n (~> 0.6, >= 0.6.4)
23
23
  multi_json (~> 1.0)
24
24
  aes (0.5.0)
25
- appraisal (0.5.2)
25
+ appraisal (1.0.0)
26
26
  bundler
27
27
  rake
28
- arel (3.0.2)
28
+ thor (>= 0.14.0)
29
+ arel (3.0.3)
29
30
  armor (0.0.3)
30
31
  builder (3.0.4)
31
- coderay (1.0.9)
32
+ celluloid (0.15.2)
33
+ timers (~> 1.1.0)
34
+ celluloid-io (0.15.0)
35
+ celluloid (>= 0.15.0)
36
+ nio4r (>= 0.5.0)
37
+ coderay (1.1.0)
32
38
  coveralls (0.7.0)
33
39
  multi_json (~> 1.3)
34
40
  rest-client
35
41
  simplecov (>= 0.7)
36
42
  term-ansicolor
37
43
  thor
38
- diff-lcs (1.2.4)
39
- ffi (1.9.0)
44
+ diff-lcs (1.2.5)
45
+ docile (1.1.3)
46
+ ffi (1.9.3)
40
47
  formatador (0.2.4)
41
- guard (1.8.3)
48
+ guard (2.6.1)
42
49
  formatador (>= 0.2.4)
43
- listen (~> 1.3)
44
- lumberjack (>= 1.0.2)
45
- pry (>= 0.9.10)
46
- thor (>= 0.14.6)
47
- guard-rspec (2.5.4)
48
- guard (>= 1.1)
49
- rspec (~> 2.11)
50
- i18n (0.6.5)
51
- listen (1.3.1)
50
+ listen (~> 2.7)
51
+ lumberjack (~> 1.0)
52
+ pry (>= 0.9.12)
53
+ thor (>= 0.18.1)
54
+ guard-rspec (4.2.9)
55
+ guard (~> 2.1)
56
+ rspec (>= 2.14, < 4.0)
57
+ i18n (0.6.9)
58
+ listen (2.7.4)
59
+ celluloid (>= 0.15.2)
60
+ celluloid-io (>= 0.15.0)
52
61
  rb-fsevent (>= 0.9.3)
53
62
  rb-inotify (>= 0.9)
54
- rb-kqueue (>= 0.2)
55
- lumberjack (1.0.4)
63
+ lumberjack (1.0.5)
56
64
  method_source (0.8.2)
57
- mime-types (1.25)
58
- multi_json (1.8.2)
59
- mysql2 (0.3.13)
60
- pg (0.15.1)
61
- pry (0.9.12.2)
62
- coderay (~> 1.0.5)
65
+ mime-types (2.2)
66
+ multi_json (1.10.0)
67
+ mysql2 (0.3.15)
68
+ nio4r (1.0.0)
69
+ pg (0.17.1)
70
+ pry (0.9.12.6)
71
+ coderay (~> 1.0)
63
72
  method_source (~> 0.8)
64
73
  slop (~> 3.4)
65
- rake (10.0.4)
66
- rb-fsevent (0.9.3)
67
- rb-inotify (0.9.2)
68
- ffi (>= 0.5.0)
69
- rb-kqueue (0.2.0)
74
+ rake (10.3.1)
75
+ rb-fsevent (0.9.4)
76
+ rb-inotify (0.9.4)
70
77
  ffi (>= 0.5.0)
71
78
  rest-client (1.6.7)
72
79
  mime-types (>= 1.16)
73
- rspec (2.13.0)
74
- rspec-core (~> 2.13.0)
75
- rspec-expectations (~> 2.13.0)
76
- rspec-mocks (~> 2.13.0)
77
- rspec-core (2.13.1)
78
- rspec-expectations (2.13.0)
80
+ rspec (2.14.1)
81
+ rspec-core (~> 2.14.0)
82
+ rspec-expectations (~> 2.14.0)
83
+ rspec-mocks (~> 2.14.0)
84
+ rspec-core (2.14.8)
85
+ rspec-expectations (2.14.5)
79
86
  diff-lcs (>= 1.1.3, < 2.0)
80
- rspec-mocks (2.13.1)
81
- simplecov (0.7.1)
82
- multi_json (~> 1.0)
83
- simplecov-html (~> 0.7.1)
84
- simplecov-html (0.7.1)
85
- slop (3.4.6)
86
- sqlite3 (1.3.8)
87
- term-ansicolor (1.2.2)
88
- tins (~> 0.8)
89
- thor (0.18.1)
90
- tins (0.12.0)
91
- tzinfo (0.3.38)
87
+ rspec-mocks (2.14.6)
88
+ simplecov (0.8.2)
89
+ docile (~> 1.1.0)
90
+ multi_json
91
+ simplecov-html (~> 0.8.0)
92
+ simplecov-html (0.8.0)
93
+ slop (3.5.0)
94
+ sqlite3 (1.3.9)
95
+ term-ansicolor (1.3.0)
96
+ tins (~> 1.0)
97
+ thor (0.19.1)
98
+ timers (1.1.0)
99
+ tins (1.3.0)
100
+ tzinfo (0.3.39)
92
101
 
93
102
  PLATFORMS
94
103
  ruby
@@ -96,14 +105,14 @@ PLATFORMS
96
105
  DEPENDENCIES
97
106
  activerecord (~> 3.2.14)
98
107
  activesupport (~> 3.2.14)
99
- appraisal (~> 0.5.2)
108
+ appraisal (~> 1.0.0)
100
109
  coveralls
101
110
  crypt_keeper!
102
- guard (~> 1.8.0)
103
- guard-rspec (~> 2.5.4)
111
+ guard (~> 2.6.1)
112
+ guard-rspec (~> 4.2.9)
104
113
  mysql2 (~> 0.3.11)
105
- pg (~> 0.15.1)
106
- rake (~> 10.0.3)
114
+ pg (~> 0.17.1)
115
+ rake (~> 10.3.1)
107
116
  rb-fsevent (~> 0.9.1)
108
- rspec (~> 2.13.0)
117
+ rspec (~> 2.14.0)
109
118
  sqlite3
@@ -5,4 +5,4 @@ source "https://rubygems.org"
5
5
  gem "activerecord", "~> 4.0.0"
6
6
  gem "activesupport", "~> 4.0.0"
7
7
 
8
- gemspec :path=>"../"
8
+ gemspec :path => "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
- remote: /Users/justin/work/jmazzi/crypt_keeper
2
+ remote: ../
3
3
  specs:
4
- crypt_keeper (0.17.0)
4
+ crypt_keeper (0.18.0)
5
5
  activerecord (>= 3.1, < 4.2)
6
6
  activesupport (>= 3.1, < 4.2)
7
7
  aes (~> 0.5.0)
@@ -10,93 +10,100 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activemodel (4.0.0)
14
- activesupport (= 4.0.0)
13
+ activemodel (4.0.5)
14
+ activesupport (= 4.0.5)
15
15
  builder (~> 3.1.0)
16
- activerecord (4.0.0)
17
- activemodel (= 4.0.0)
16
+ activerecord (4.0.5)
17
+ activemodel (= 4.0.5)
18
18
  activerecord-deprecated_finders (~> 1.0.2)
19
- activesupport (= 4.0.0)
19
+ activesupport (= 4.0.5)
20
20
  arel (~> 4.0.0)
21
21
  activerecord-deprecated_finders (1.0.3)
22
- activesupport (4.0.0)
23
- i18n (~> 0.6, >= 0.6.4)
22
+ activesupport (4.0.5)
23
+ i18n (~> 0.6, >= 0.6.9)
24
24
  minitest (~> 4.2)
25
25
  multi_json (~> 1.3)
26
26
  thread_safe (~> 0.1)
27
27
  tzinfo (~> 0.3.37)
28
28
  aes (0.5.0)
29
- appraisal (0.5.2)
29
+ appraisal (1.0.0)
30
30
  bundler
31
31
  rake
32
- arel (4.0.0)
32
+ thor (>= 0.14.0)
33
+ arel (4.0.2)
33
34
  armor (0.0.3)
34
- atomic (1.1.14)
35
35
  builder (3.1.4)
36
- coderay (1.0.9)
36
+ celluloid (0.15.2)
37
+ timers (~> 1.1.0)
38
+ celluloid-io (0.15.0)
39
+ celluloid (>= 0.15.0)
40
+ nio4r (>= 0.5.0)
41
+ coderay (1.1.0)
37
42
  coveralls (0.7.0)
38
43
  multi_json (~> 1.3)
39
44
  rest-client
40
45
  simplecov (>= 0.7)
41
46
  term-ansicolor
42
47
  thor
43
- diff-lcs (1.2.4)
44
- ffi (1.9.0)
48
+ diff-lcs (1.2.5)
49
+ docile (1.1.3)
50
+ ffi (1.9.3)
45
51
  formatador (0.2.4)
46
- guard (1.8.3)
52
+ guard (2.6.1)
47
53
  formatador (>= 0.2.4)
48
- listen (~> 1.3)
49
- lumberjack (>= 1.0.2)
50
- pry (>= 0.9.10)
51
- thor (>= 0.14.6)
52
- guard-rspec (2.5.4)
53
- guard (>= 1.1)
54
- rspec (~> 2.11)
55
- i18n (0.6.5)
56
- listen (1.3.1)
54
+ listen (~> 2.7)
55
+ lumberjack (~> 1.0)
56
+ pry (>= 0.9.12)
57
+ thor (>= 0.18.1)
58
+ guard-rspec (4.2.9)
59
+ guard (~> 2.1)
60
+ rspec (>= 2.14, < 4.0)
61
+ i18n (0.6.9)
62
+ listen (2.7.4)
63
+ celluloid (>= 0.15.2)
64
+ celluloid-io (>= 0.15.0)
57
65
  rb-fsevent (>= 0.9.3)
58
66
  rb-inotify (>= 0.9)
59
- rb-kqueue (>= 0.2)
60
- lumberjack (1.0.4)
67
+ lumberjack (1.0.5)
61
68
  method_source (0.8.2)
62
- mime-types (1.25)
69
+ mime-types (2.2)
63
70
  minitest (4.7.5)
64
- multi_json (1.8.2)
65
- mysql2 (0.3.13)
66
- pg (0.15.1)
67
- pry (0.9.12.2)
68
- coderay (~> 1.0.5)
71
+ multi_json (1.10.0)
72
+ mysql2 (0.3.15)
73
+ nio4r (1.0.0)
74
+ pg (0.17.1)
75
+ pry (0.9.12.6)
76
+ coderay (~> 1.0)
69
77
  method_source (~> 0.8)
70
78
  slop (~> 3.4)
71
- rake (10.0.4)
72
- rb-fsevent (0.9.3)
73
- rb-inotify (0.9.2)
74
- ffi (>= 0.5.0)
75
- rb-kqueue (0.2.0)
79
+ rake (10.3.1)
80
+ rb-fsevent (0.9.4)
81
+ rb-inotify (0.9.4)
76
82
  ffi (>= 0.5.0)
77
83
  rest-client (1.6.7)
78
84
  mime-types (>= 1.16)
79
- rspec (2.13.0)
80
- rspec-core (~> 2.13.0)
81
- rspec-expectations (~> 2.13.0)
82
- rspec-mocks (~> 2.13.0)
83
- rspec-core (2.13.1)
84
- rspec-expectations (2.13.0)
85
+ rspec (2.14.1)
86
+ rspec-core (~> 2.14.0)
87
+ rspec-expectations (~> 2.14.0)
88
+ rspec-mocks (~> 2.14.0)
89
+ rspec-core (2.14.8)
90
+ rspec-expectations (2.14.5)
85
91
  diff-lcs (>= 1.1.3, < 2.0)
86
- rspec-mocks (2.13.1)
87
- simplecov (0.7.1)
88
- multi_json (~> 1.0)
89
- simplecov-html (~> 0.7.1)
90
- simplecov-html (0.7.1)
91
- slop (3.4.6)
92
- sqlite3 (1.3.8)
93
- term-ansicolor (1.2.2)
94
- tins (~> 0.8)
95
- thor (0.18.1)
96
- thread_safe (0.1.3)
97
- atomic
98
- tins (0.12.0)
99
- tzinfo (0.3.38)
92
+ rspec-mocks (2.14.6)
93
+ simplecov (0.8.2)
94
+ docile (~> 1.1.0)
95
+ multi_json
96
+ simplecov-html (~> 0.8.0)
97
+ simplecov-html (0.8.0)
98
+ slop (3.5.0)
99
+ sqlite3 (1.3.9)
100
+ term-ansicolor (1.3.0)
101
+ tins (~> 1.0)
102
+ thor (0.19.1)
103
+ thread_safe (0.3.3)
104
+ timers (1.1.0)
105
+ tins (1.3.0)
106
+ tzinfo (0.3.39)
100
107
 
101
108
  PLATFORMS
102
109
  ruby
@@ -104,14 +111,14 @@ PLATFORMS
104
111
  DEPENDENCIES
105
112
  activerecord (~> 4.0.0)
106
113
  activesupport (~> 4.0.0)
107
- appraisal (~> 0.5.2)
114
+ appraisal (~> 1.0.0)
108
115
  coveralls
109
116
  crypt_keeper!
110
- guard (~> 1.8.0)
111
- guard-rspec (~> 2.5.4)
117
+ guard (~> 2.6.1)
118
+ guard-rspec (~> 4.2.9)
112
119
  mysql2 (~> 0.3.11)
113
- pg (~> 0.15.1)
114
- rake (~> 10.0.3)
120
+ pg (~> 0.17.1)
121
+ rake (~> 10.3.1)
115
122
  rb-fsevent (~> 0.9.1)
116
- rspec (~> 2.13.0)
123
+ rspec (~> 2.14.0)
117
124
  sqlite3
@@ -5,4 +5,4 @@ source "https://rubygems.org"
5
5
  gem "activerecord", "~> 4.1.0"
6
6
  gem "activesupport", "~> 4.1.0"
7
7
 
8
- gemspec :path=>"../"
8
+ gemspec :path => "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
- remote: /Users/justin/work/jmazzi/crypt_keeper
2
+ remote: ../
3
3
  specs:
4
- crypt_keeper (0.17.0)
4
+ crypt_keeper (0.18.0)
5
5
  activerecord (>= 3.1, < 4.2)
6
6
  activesupport (>= 3.1, < 4.2)
7
7
  aes (~> 0.5.0)
@@ -10,26 +10,32 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activemodel (4.1.0)
14
- activesupport (= 4.1.0)
13
+ activemodel (4.1.1)
14
+ activesupport (= 4.1.1)
15
15
  builder (~> 3.1)
16
- activerecord (4.1.0)
17
- activemodel (= 4.1.0)
18
- activesupport (= 4.1.0)
16
+ activerecord (4.1.1)
17
+ activemodel (= 4.1.1)
18
+ activesupport (= 4.1.1)
19
19
  arel (~> 5.0.0)
20
- activesupport (4.1.0)
20
+ activesupport (4.1.1)
21
21
  i18n (~> 0.6, >= 0.6.9)
22
22
  json (~> 1.7, >= 1.7.7)
23
23
  minitest (~> 5.1)
24
24
  thread_safe (~> 0.1)
25
25
  tzinfo (~> 1.1)
26
26
  aes (0.5.0)
27
- appraisal (0.5.2)
27
+ appraisal (1.0.0)
28
28
  bundler
29
29
  rake
30
+ thor (>= 0.14.0)
30
31
  arel (5.0.1.20140414130214)
31
32
  armor (0.0.3)
32
33
  builder (3.2.2)
34
+ celluloid (0.15.2)
35
+ timers (~> 1.1.0)
36
+ celluloid-io (0.15.0)
37
+ celluloid (>= 0.15.0)
38
+ nio4r (>= 0.5.0)
33
39
  coderay (1.1.0)
34
40
  coveralls (0.7.0)
35
41
  multi_json (~> 1.3)
@@ -41,48 +47,48 @@ GEM
41
47
  docile (1.1.3)
42
48
  ffi (1.9.3)
43
49
  formatador (0.2.4)
44
- guard (1.8.3)
50
+ guard (2.6.1)
45
51
  formatador (>= 0.2.4)
46
- listen (~> 1.3)
47
- lumberjack (>= 1.0.2)
48
- pry (>= 0.9.10)
49
- thor (>= 0.14.6)
50
- guard-rspec (2.5.4)
51
- guard (>= 1.1)
52
- rspec (~> 2.11)
52
+ listen (~> 2.7)
53
+ lumberjack (~> 1.0)
54
+ pry (>= 0.9.12)
55
+ thor (>= 0.18.1)
56
+ guard-rspec (4.2.9)
57
+ guard (~> 2.1)
58
+ rspec (>= 2.14, < 4.0)
53
59
  i18n (0.6.9)
54
60
  json (1.8.1)
55
- listen (1.3.1)
61
+ listen (2.7.4)
62
+ celluloid (>= 0.15.2)
63
+ celluloid-io (>= 0.15.0)
56
64
  rb-fsevent (>= 0.9.3)
57
65
  rb-inotify (>= 0.9)
58
- rb-kqueue (>= 0.2)
59
66
  lumberjack (1.0.5)
60
67
  method_source (0.8.2)
61
68
  mime-types (2.2)
62
69
  minitest (5.3.3)
63
- multi_json (1.9.2)
70
+ multi_json (1.10.0)
64
71
  mysql2 (0.3.15)
65
- pg (0.15.1)
72
+ nio4r (1.0.0)
73
+ pg (0.17.1)
66
74
  pry (0.9.12.6)
67
75
  coderay (~> 1.0)
68
76
  method_source (~> 0.8)
69
77
  slop (~> 3.4)
70
- rake (10.0.4)
78
+ rake (10.3.1)
71
79
  rb-fsevent (0.9.4)
72
- rb-inotify (0.9.3)
73
- ffi (>= 0.5.0)
74
- rb-kqueue (0.2.2)
80
+ rb-inotify (0.9.4)
75
81
  ffi (>= 0.5.0)
76
82
  rest-client (1.6.7)
77
83
  mime-types (>= 1.16)
78
- rspec (2.13.0)
79
- rspec-core (~> 2.13.0)
80
- rspec-expectations (~> 2.13.0)
81
- rspec-mocks (~> 2.13.0)
82
- rspec-core (2.13.1)
83
- rspec-expectations (2.13.0)
84
+ rspec (2.14.1)
85
+ rspec-core (~> 2.14.0)
86
+ rspec-expectations (~> 2.14.0)
87
+ rspec-mocks (~> 2.14.0)
88
+ rspec-core (2.14.8)
89
+ rspec-expectations (2.14.5)
84
90
  diff-lcs (>= 1.1.3, < 2.0)
85
- rspec-mocks (2.13.1)
91
+ rspec-mocks (2.14.6)
86
92
  simplecov (0.8.2)
87
93
  docile (~> 1.1.0)
88
94
  multi_json
@@ -94,7 +100,8 @@ GEM
94
100
  tins (~> 1.0)
95
101
  thor (0.19.1)
96
102
  thread_safe (0.3.3)
97
- tins (1.1.0)
103
+ timers (1.1.0)
104
+ tins (1.3.0)
98
105
  tzinfo (1.1.0)
99
106
  thread_safe (~> 0.1)
100
107
 
@@ -104,14 +111,14 @@ PLATFORMS
104
111
  DEPENDENCIES
105
112
  activerecord (~> 4.1.0)
106
113
  activesupport (~> 4.1.0)
107
- appraisal (~> 0.5.2)
114
+ appraisal (~> 1.0.0)
108
115
  coveralls
109
116
  crypt_keeper!
110
- guard (~> 1.8.0)
111
- guard-rspec (~> 2.5.4)
117
+ guard (~> 2.6.1)
118
+ guard-rspec (~> 4.2.9)
112
119
  mysql2 (~> 0.3.11)
113
- pg (~> 0.15.1)
114
- rake (~> 10.0.3)
120
+ pg (~> 0.17.1)
121
+ rake (~> 10.3.1)
115
122
  rb-fsevent (~> 0.9.1)
116
- rspec (~> 2.13.0)
123
+ rspec (~> 2.14.0)
117
124
  sqlite3
@@ -23,7 +23,7 @@ module CryptKeeper
23
23
  if value.blank?
24
24
  value
25
25
  else
26
- encrypt(value)
26
+ encrypt(value.to_s)
27
27
  end
28
28
  end
29
29
 
@@ -1,3 +1,3 @@
1
1
  module CryptKeeper
2
- VERSION = "0.18.0"
2
+ VERSION = "0.18.1"
3
3
  end
@@ -6,11 +6,7 @@ module CryptKeeper
6
6
  describe Model do
7
7
  use_sqlite
8
8
 
9
- before do
10
- SensitiveData.instance_variable_set('@encryptor_klass', nil)
11
- end
12
-
13
- subject { SensitiveData }
9
+ subject { create_model }
14
10
 
15
11
  describe "#crypt_keeper" do
16
12
  context "Fields" do
@@ -49,82 +45,82 @@ module CryptKeeper
49
45
  let(:plain_text) { 'plain_text' }
50
46
  let(:cipher_text) { 'tooltxet_nialp' }
51
47
 
52
- before do
53
- SensitiveData.crypt_keeper :storage, passphrase: 'tool', encryptor: :encryptor
54
- end
48
+ subject { create_encrypted_model :storage, passphrase: 'tool', encryptor: :encryptor }
55
49
 
56
50
  it "encrypts the data" do
57
51
  CryptKeeper::Provider::Encryptor.any_instance.should_receive(:encrypt).with('testing')
58
- SensitiveData.create!(storage: 'testing')
52
+ subject.create!(storage: 'testing')
59
53
  end
60
54
 
61
55
  it "decrypts the data" do
62
- record = SensitiveData.create!(storage: 'testing')
56
+ record = subject.create!(storage: 'testing')
63
57
  CryptKeeper::Provider::Encryptor.any_instance.should_receive(:decrypt).at_least(1).times.with('toolgnitset')
64
- SensitiveData.find(record).storage
58
+ subject.find(record).storage
65
59
  end
66
60
 
67
61
  it "returns the plaintext on decrypt" do
68
- record = SensitiveData.create!(storage: 'testing')
69
- SensitiveData.find(record).storage.should == 'testing'
62
+ record = subject.create!(storage: 'testing')
63
+ subject.find(record).storage.should == 'testing'
70
64
  end
71
65
 
72
66
  it "does not encrypt or decrypt nil" do
73
- data = SensitiveData.create!(storage: nil)
67
+ data = subject.create!(storage: nil)
74
68
  data.storage.should be_nil
75
69
  end
76
70
 
77
71
  it "does not encrypt or decrypt empty strings" do
78
- data = SensitiveData.create!(storage: "")
72
+ data = subject.create!(storage: "")
79
73
  data.storage.should be_empty
80
74
  end
75
+
76
+ it "converts numbers to strings" do
77
+ data = subject.create!(storage: 1)
78
+ data.reload.storage.should == "1"
79
+ end
81
80
  end
82
81
 
83
82
  context "Search" do
84
- before do
85
- SensitiveData.crypt_keeper :storage, passphrase: 'tool', encryptor: :search_encryptor
86
- end
83
+ subject { create_encrypted_model :storage, passphrase: 'tool', encryptor: :search_encryptor }
87
84
 
88
85
  it "searches if supported" do
89
- expect { SensitiveData.search_by_plaintext(:storage, 'test1') }.to_not raise_error
86
+ expect { subject.search_by_plaintext(:storage, 'test1') }.to_not raise_error
90
87
  end
91
88
 
92
89
  it "complains about bad columns" do
93
- expect { SensitiveData.search_by_plaintext(:what, 'test1') }.to raise_error(/what is not a crypt_keeper field/)
90
+ expect { subject.search_by_plaintext(:what, 'test1') }.to raise_error(/what is not a crypt_keeper field/)
94
91
  end
95
92
  end
96
93
 
97
94
  context "Encodings" do
98
- before do
99
- SensitiveData.crypt_keeper :storage, key: 'tool', salt: 'salt', encryptor: :aes_new, encoding: 'utf-8'
100
- end
95
+ subject { create_encrypted_model :storage, key: 'tool', salt: 'salt', encryptor: :aes_new, encoding: 'utf-8' }
101
96
 
102
97
  it "forces the encoding on decrypt" do
103
- record = SensitiveData.create!(storage: 'Tromsø')
98
+ record = subject.create!(storage: 'Tromsø')
104
99
  record.reload
105
100
  expect(record.storage).to eql('Tromsø')
106
101
  end
107
102
 
108
103
  it "converts from other encodings" do
109
104
  plaintext = "\xC2\xA92011 AACR".force_encoding('ASCII-8BIT')
110
- record = SensitiveData.create!(storage: plaintext)
105
+ record = subject.create!(storage: plaintext)
111
106
  record.reload
112
107
  expect(record.storage.encoding.name).to eql('UTF-8')
113
108
  end
114
109
  end
115
110
 
116
111
  context "Initial Table Encryption" do
112
+ subject { create_encrypted_model :storage, key: 'tool', salt: 'salt', encryptor: :aes_new }
113
+
117
114
  before do
118
- SensitiveData.crypt_keeper :storage, key: 'tool', salt: 'salt', encryptor: :aes_new, encoding: 'utf-8'
119
- SensitiveData.delete_all
120
- c = Class.new(ActiveRecord::Base).tap {|c| c.table_name = 'sensitive_data' }
115
+ subject.delete_all
116
+ c = create_model
121
117
  5.times { |i| c.create! storage: "testing#{i}" }
122
118
  end
123
119
 
124
120
  it "encrypts the table" do
125
- expect { SensitiveData.first(5) }.to raise_error(OpenSSL::Cipher::CipherError)
126
- SensitiveData.encrypt_table!
127
- expect { SensitiveData.first(5) }.not_to raise_error
121
+ expect { subject.first(5).map(&:storage) }.to raise_error(OpenSSL::Cipher::CipherError)
122
+ subject.encrypt_table!
123
+ expect { subject.first(5).map(&:storage) }.not_to raise_error
128
124
  end
129
125
  end
130
126
  end
@@ -33,17 +33,19 @@ module CryptKeeper
33
33
  end
34
34
 
35
35
  describe "#search" do
36
+ subject { mysql_model }
37
+
36
38
  it "finds the matching record" do
37
- SensitiveDataMysql.create!(storage: 'blah2')
38
- match = SensitiveDataMysql.create!(storage: 'blah')
39
- SensitiveDataMysql.search_by_plaintext(:storage, 'blah').first.should == match
39
+ subject.create!(storage: 'blah2')
40
+ match = subject.create!(storage: 'blah')
41
+ results = subject.search_by_plaintext(:storage, 'blah').first.should == match
40
42
  end
41
43
 
42
44
  it "keeps the scope" do
43
- SensitiveDataMysql.create!(storage: 'blah')
44
- SensitiveDataMysql.create!(storage: 'blah')
45
+ subject.create!(storage: 'blah')
46
+ subject.create!(storage: 'blah')
45
47
 
46
- scope = SensitiveDataMysql.limit(1)
48
+ scope = subject.limit(1)
47
49
  expect(scope.search_by_plaintext(:storage, 'blah').count).to eql(1)
48
50
  end
49
51
  end
@@ -38,10 +38,12 @@ module CryptKeeper
38
38
  end
39
39
 
40
40
  describe "#search" do
41
+ subject { postgres_model }
42
+
41
43
  it "finds the matching record" do
42
- SensitiveDataPg.create!(storage: 'blah2')
43
- match = SensitiveDataPg.create!(storage: 'blah')
44
- SensitiveDataPg.search_by_plaintext(:storage, 'blah').first.should == match
44
+ subject.create!(storage: 'blah2')
45
+ match = subject.create!(storage: 'blah')
46
+ subject.search_by_plaintext(:storage, 'blah').first.should == match
45
47
  end
46
48
  end
47
49
 
@@ -5,20 +5,6 @@ require 'logger'
5
5
  ::ActiveRecord::Migration.verbose = false
6
6
 
7
7
  module CryptKeeper
8
- class SensitiveDataMysql < ActiveRecord::Base
9
- self.table_name = 'sensitive_data'
10
- crypt_keeper :storage, encryptor: :mysql_aes_new, key: ENCRYPTION_PASSWORD,
11
- salt: 'salt'
12
- end
13
-
14
- class SensitiveDataPg < ActiveRecord::Base
15
- self.table_name = 'sensitive_data'
16
- crypt_keeper :storage, key: 'tool', encryptor: :postgres_pgp
17
- end
18
-
19
- class SensitiveData < ActiveRecord::Base
20
- end
21
-
22
8
  module ConnectionHelpers
23
9
  class CreateConnection
24
10
  def initialize(driver)
@@ -61,27 +47,51 @@ module CryptKeeper
61
47
  end
62
48
  end
63
49
  end
64
- end
65
50
 
66
- module LoggedQueries
67
- # Logs the queries run inside the block, and return them.
68
- def logged_queries(&block)
69
- queries = []
51
+ module AnonymousModels
52
+ def mysql_model
53
+ create_encrypted_model :storage, encryptor: :mysql_aes_new, key: ENCRYPTION_PASSWORD, salt: 'salt'
54
+ end
55
+
56
+ def postgres_model
57
+ create_encrypted_model :storage, key: 'tool', encryptor: :postgres_pgp
58
+ end
59
+
60
+ def create_encrypted_model(*args)
61
+ create_model.tap { |m| m.crypt_keeper *args }
62
+ end
70
63
 
71
- subscriber = ActiveSupport::Notifications
72
- .subscribe('sql.active_record') do |name, started, finished, id, payload|
73
- queries << payload[:sql]
64
+ def create_model
65
+ Class.new(ActiveRecord::Base) do
66
+ def self.table_name
67
+ "sensitive_data"
68
+ end
69
+ end
74
70
  end
71
+ end
75
72
 
76
- block.call
73
+ module LoggedQueries
74
+ # Logs the queries run inside the block, and return them.
75
+ def logged_queries(&block)
76
+ queries = []
77
77
 
78
- queries
78
+ subscriber = ActiveSupport::Notifications
79
+ .subscribe('sql.active_record') do |name, started, finished, id, payload|
80
+ queries << payload[:sql]
81
+ end
82
+
83
+ block.call
84
+
85
+ queries
79
86
 
80
- ensure ActiveSupport::Notifications.unsubscribe(subscriber)
87
+ ensure ActiveSupport::Notifications.unsubscribe(subscriber)
88
+ end
81
89
  end
90
+
82
91
  end
83
92
 
84
93
  RSpec.configure do |config|
85
94
  config.extend CryptKeeper::ConnectionHelpers
86
- config.include LoggedQueries
95
+ config.include CryptKeeper::AnonymousModels
96
+ config.include CryptKeeper::LoggedQueries
87
97
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crypt_keeper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.0
4
+ version: 0.18.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Mazzi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-09 00:00:00.000000000 Z
11
+ date: 2014-06-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -84,56 +84,56 @@ dependencies:
84
84
  requirements:
85
85
  - - "~>"
86
86
  - !ruby/object:Gem::Version
87
- version: 2.13.0
87
+ version: 2.14.0
88
88
  type: :development
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
91
91
  requirements:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: 2.13.0
94
+ version: 2.14.0
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: guard
97
97
  requirement: !ruby/object:Gem::Requirement
98
98
  requirements:
99
99
  - - "~>"
100
100
  - !ruby/object:Gem::Version
101
- version: 1.8.0
101
+ version: 2.6.1
102
102
  type: :development
103
103
  prerelease: false
104
104
  version_requirements: !ruby/object:Gem::Requirement
105
105
  requirements:
106
106
  - - "~>"
107
107
  - !ruby/object:Gem::Version
108
- version: 1.8.0
108
+ version: 2.6.1
109
109
  - !ruby/object:Gem::Dependency
110
110
  name: guard-rspec
111
111
  requirement: !ruby/object:Gem::Requirement
112
112
  requirements:
113
113
  - - "~>"
114
114
  - !ruby/object:Gem::Version
115
- version: 2.5.4
115
+ version: 4.2.9
116
116
  type: :development
117
117
  prerelease: false
118
118
  version_requirements: !ruby/object:Gem::Requirement
119
119
  requirements:
120
120
  - - "~>"
121
121
  - !ruby/object:Gem::Version
122
- version: 2.5.4
122
+ version: 4.2.9
123
123
  - !ruby/object:Gem::Dependency
124
124
  name: rake
125
125
  requirement: !ruby/object:Gem::Requirement
126
126
  requirements:
127
127
  - - "~>"
128
128
  - !ruby/object:Gem::Version
129
- version: 10.0.3
129
+ version: 10.3.1
130
130
  type: :development
131
131
  prerelease: false
132
132
  version_requirements: !ruby/object:Gem::Requirement
133
133
  requirements:
134
134
  - - "~>"
135
135
  - !ruby/object:Gem::Version
136
- version: 10.0.3
136
+ version: 10.3.1
137
137
  - !ruby/object:Gem::Dependency
138
138
  name: rb-fsevent
139
139
  requirement: !ruby/object:Gem::Requirement
@@ -168,14 +168,14 @@ dependencies:
168
168
  requirements:
169
169
  - - "~>"
170
170
  - !ruby/object:Gem::Version
171
- version: 0.5.2
171
+ version: 1.0.0
172
172
  type: :development
173
173
  prerelease: false
174
174
  version_requirements: !ruby/object:Gem::Requirement
175
175
  requirements:
176
176
  - - "~>"
177
177
  - !ruby/object:Gem::Version
178
- version: 0.5.2
178
+ version: 1.0.0
179
179
  - !ruby/object:Gem::Dependency
180
180
  name: sqlite3
181
181
  requirement: !ruby/object:Gem::Requirement
@@ -196,14 +196,14 @@ dependencies:
196
196
  requirements:
197
197
  - - "~>"
198
198
  - !ruby/object:Gem::Version
199
- version: 0.15.1
199
+ version: 0.17.1
200
200
  type: :development
201
201
  prerelease: false
202
202
  version_requirements: !ruby/object:Gem::Requirement
203
203
  requirements:
204
204
  - - "~>"
205
205
  - !ruby/object:Gem::Version
206
- version: 0.15.1
206
+ version: 0.17.1
207
207
  - !ruby/object:Gem::Dependency
208
208
  name: mysql2
209
209
  requirement: !ruby/object:Gem::Requirement
@@ -291,7 +291,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
291
291
  version: '0'
292
292
  requirements: []
293
293
  rubyforge_project:
294
- rubygems_version: 2.0.14
294
+ rubygems_version: 2.2.2
295
295
  signing_key:
296
296
  specification_version: 4
297
297
  summary: Transparent ActiveRecord encryption
@@ -310,4 +310,3 @@ test_files:
310
310
  - spec/spec_helper.rb
311
311
  - spec/support/active_record.rb
312
312
  - spec/support/encryptors.rb
313
- has_rdoc: