active_record-pgcrypto 0.2.2 → 0.2.3

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: 0e0d9f699e61e69eef931b4e262d728f4ad01ee6f00f15951f7ab2bc1e3cb830
4
- data.tar.gz: 5f557b15350a6a5d76731d8916e15b6334354c55acb2fd49a4c917b5772ac097
3
+ metadata.gz: 0ce5aaa85fee4e2a1ef75b471bfe807199b1e5745da89f35a6ad70ff9b7e4a19
4
+ data.tar.gz: b8353223b28b675bf9cff66758bc02fd9c55d3e7f90386405292f67b39c569c6
5
5
  SHA512:
6
- metadata.gz: 68453c6aaff4cc2e04002113e59613b5c2642bd351167dd64fa1542433102747c31cb73475ed6664d3b3ab288d243ec5da83c3fee58a2921675809ed71ecf0ee
7
- data.tar.gz: 5255daca04f06307deea27591a23c47a23055efc89a64bdb10251224cb7b5e6a568b83b656b185de4d2d3e80686bf73eeaac042f88bf4074eda9ca4d2c278e82
6
+ metadata.gz: bad4f8aa0998d1711b9e91dc022ee8169e79b42e1ab5e5bbbb1f0b50b3543ad757e368162706097c62e2ac787ae5cf7dc0ed9aeb1393768eaa417354b3ccda71
7
+ data.tar.gz: a4c31288935dee7bc4a739aac3e245d83450058e77c913edbe28b8453e48a8b700cc238c703fc0c0a6069a7bbd5a29e9e61c197af2a10c9b61f9b012d4a1c5a9
@@ -0,0 +1,20 @@
1
+ name: CI
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ ci:
7
+ runs-on: ubuntu-18.04
8
+
9
+ strategy:
10
+ matrix:
11
+ rails: [4, 5, 6]
12
+
13
+ steps:
14
+ - uses: actions/checkout@master
15
+
16
+ - name: Builds the Docker image
17
+ run: docker build -f Dockerfile -t active_record-pgcrypto/ci:$GITHUB_SHA .
18
+
19
+ - name: Runs code QA and tests
20
+ run: docker run -e RAILS_VERSION="~> ${{ matrix.rails }}" active_record-pgcrypto/ci:$GITHUB_SHA
@@ -45,3 +45,6 @@ RSpec/FilePath:
45
45
  RSpec/DescribedClass:
46
46
  Exclude:
47
47
  - 'spec/integration/*_spec.rb'
48
+
49
+ RSpec/ExampleLength:
50
+ Enabled: false
@@ -1,66 +1,65 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active_record-pgcrypto (0.2.2)
4
+ active_record-pgcrypto (0.2.3)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activemodel (5.2.3)
11
- activesupport (= 5.2.3)
12
- activerecord (5.2.3)
13
- activemodel (= 5.2.3)
14
- activesupport (= 5.2.3)
15
- arel (>= 9.0)
16
- activesupport (5.2.3)
10
+ activemodel (6.0.1)
11
+ activesupport (= 6.0.1)
12
+ activerecord (6.0.1)
13
+ activemodel (= 6.0.1)
14
+ activesupport (= 6.0.1)
15
+ activesupport (6.0.1)
17
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
18
17
  i18n (>= 0.7, < 2)
19
18
  minitest (~> 5.1)
20
19
  tzinfo (~> 1.1)
21
- arel (9.0.0)
20
+ zeitwerk (~> 2.2)
22
21
  ast (2.4.0)
23
22
  concurrent-ruby (1.1.5)
24
23
  diff-lcs (1.3)
25
24
  docile (1.3.2)
26
- ffaker (2.11.0)
27
- i18n (1.6.0)
25
+ ffaker (2.13.0)
26
+ i18n (1.7.0)
28
27
  concurrent-ruby (~> 1.0)
29
- jaro_winkler (1.5.3)
28
+ jaro_winkler (1.5.4)
30
29
  json (2.2.0)
31
- minitest (5.11.3)
32
- parallel (1.17.0)
33
- parser (2.6.3.0)
30
+ minitest (5.13.0)
31
+ parallel (1.19.0)
32
+ parser (2.6.5.0)
34
33
  ast (~> 2.4.0)
35
34
  pg (1.1.4)
36
35
  rainbow (3.0.0)
37
- rake (12.3.2)
38
- rspec (3.8.0)
39
- rspec-core (~> 3.8.0)
40
- rspec-expectations (~> 3.8.0)
41
- rspec-mocks (~> 3.8.0)
42
- rspec-core (3.8.2)
43
- rspec-support (~> 3.8.0)
44
- rspec-expectations (3.8.4)
36
+ rake (13.0.1)
37
+ rspec (3.9.0)
38
+ rspec-core (~> 3.9.0)
39
+ rspec-expectations (~> 3.9.0)
40
+ rspec-mocks (~> 3.9.0)
41
+ rspec-core (3.9.0)
42
+ rspec-support (~> 3.9.0)
43
+ rspec-expectations (3.9.0)
45
44
  diff-lcs (>= 1.2.0, < 2.0)
46
- rspec-support (~> 3.8.0)
47
- rspec-mocks (3.8.1)
45
+ rspec-support (~> 3.9.0)
46
+ rspec-mocks (3.9.0)
48
47
  diff-lcs (>= 1.2.0, < 2.0)
49
- rspec-support (~> 3.8.0)
50
- rspec-support (3.8.2)
51
- rubocop (0.72.0)
48
+ rspec-support (~> 3.9.0)
49
+ rspec-support (3.9.0)
50
+ rubocop (0.76.0)
52
51
  jaro_winkler (~> 1.5.1)
53
52
  parallel (~> 1.10)
54
53
  parser (>= 2.6)
55
54
  rainbow (>= 2.2.2, < 4.0)
56
55
  ruby-progressbar (~> 1.7)
57
56
  unicode-display_width (>= 1.4.0, < 1.7)
58
- rubocop-performance (1.4.0)
57
+ rubocop-performance (1.5.1)
59
58
  rubocop (>= 0.71.0)
60
- rubocop-rspec (1.33.0)
61
- rubocop (>= 0.60.0)
59
+ rubocop-rspec (1.36.0)
60
+ rubocop (>= 0.68.1)
62
61
  ruby-progressbar (1.10.1)
63
- simplecov (0.17.0)
62
+ simplecov (0.17.1)
64
63
  docile (~> 1.1)
65
64
  json (>= 1.8, < 3)
66
65
  simplecov-html (~> 0.10.0)
@@ -72,6 +71,7 @@ GEM
72
71
  yard (0.9.20)
73
72
  yardstick (0.9.9)
74
73
  yard (~> 0.8, >= 0.8.7.2)
74
+ zeitwerk (2.2.1)
75
75
 
76
76
  PLATFORMS
77
77
  ruby
@@ -89,4 +89,4 @@ DEPENDENCIES
89
89
  yardstick
90
90
 
91
91
  BUNDLED WITH
92
- 1.17.2
92
+ 1.17.3
@@ -1,6 +1,7 @@
1
1
  require 'active_support'
2
2
  require 'active_record/log_subscriber'
3
3
  require 'active_record/pgcrypto/version'
4
+ require 'active_record/pgcrypto/patches'
4
5
  require 'active_record/pgcrypto/symmetric_coder'
5
6
  require 'active_record/pgcrypto/log_subscriber'
6
7
 
@@ -0,0 +1,23 @@
1
+ require 'active_record/type/serialized'
2
+
3
+ module ActiveRecord
4
+ # ...
5
+ module PGCrypto
6
+ # Patched `serialize` wrapper class to play well with [ActiveModel::Dirty]
7
+ module PatchedSerialized
8
+ # Determines whether the mutable value has been modified since it was read
9
+ #
10
+ # Since encrypted binary data, from our coder,
11
+ # can return same decrypted values, we don't check it.
12
+ #
13
+ # @return [FalseClass] on our coder values.
14
+ def changed_in_place?(*)
15
+ return false if coder == ActiveRecord::PGCrypto::SymmetricCoder
16
+
17
+ super
18
+ end
19
+ end
20
+
21
+ ActiveRecord::Type::Serialized.prepend(PatchedSerialized)
22
+ end
23
+ end
@@ -1,5 +1,5 @@
1
1
  module ActiveRecord
2
2
  module PGCrypto
3
- VERSION = '0.2.2'.freeze
3
+ VERSION = '0.2.3'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_record-pgcrypto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stas SUȘCOV
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-28 00:00:00.000000000 Z
11
+ date: 2019-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -157,7 +157,7 @@ executables: []
157
157
  extensions: []
158
158
  extra_rdoc_files: []
159
159
  files:
160
- - ".github/main.workflow"
160
+ - ".github/workflows/ci.yml"
161
161
  - ".gitignore"
162
162
  - ".rubocop.yml"
163
163
  - ".yardstick.yml"
@@ -171,6 +171,7 @@ files:
171
171
  - active_record-pgcrypto.gemspec
172
172
  - lib/active_record/pgcrypto.rb
173
173
  - lib/active_record/pgcrypto/log_subscriber.rb
174
+ - lib/active_record/pgcrypto/patches.rb
174
175
  - lib/active_record/pgcrypto/symmetric_coder.rb
175
176
  - lib/active_record/pgcrypto/version.rb
176
177
  homepage: https://github.com/stas/active_record-pgcrypto
@@ -1,31 +0,0 @@
1
- workflow "Docs/Tests" {
2
- on = "push"
3
- resolves = [
4
- "Runs the linters and tests (Rails 4)",
5
- "Runs the linters and tests (Rails 5)",
6
- "Runs the linters and tests (Rails 6)"
7
- ]
8
- }
9
-
10
- action "Builds the Docker image" {
11
- uses = "actions/docker/cli@master"
12
- args = "build -f Dockerfile -t active_record-pgcrypto/ci:$GITHUB_SHA ."
13
- }
14
-
15
- action "Runs the linters and tests (Rails 4)" {
16
- uses = "actions/docker/cli@master"
17
- needs = ["Builds the Docker image"]
18
- args = "run -e RAILS_VERSION='~> 4' active_record-pgcrypto/ci:$GITHUB_SHA"
19
- }
20
-
21
- action "Runs the linters and tests (Rails 5)" {
22
- uses = "actions/docker/cli@master"
23
- needs = ["Builds the Docker image"]
24
- args = "run -e RAILS_VERSION='~> 5' active_record-pgcrypto/ci:$GITHUB_SHA"
25
- }
26
-
27
- action "Runs the linters and tests (Rails 6)" {
28
- uses = "actions/docker/cli@master"
29
- needs = ["Builds the Docker image"]
30
- args = "run -e RAILS_VERSION='~> 6.0.0.rc1' active_record-pgcrypto/ci:$GITHUB_SHA"
31
- }