activerecord-forbid_implicit_connection_checkout 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eff6d2c12e2e258a58ee03785e64fb8142f6d0eeb30ccbe5851f5a6ef54a8ad6
4
- data.tar.gz: 36033141bd950783b00c5f9b5f55f424de3ef68a8e6209f9e502c4deb1f2d880
3
+ metadata.gz: 359c7c54657fd5f4a0451c6779614ad14e382a6a1bf7b106020abf50e397e866
4
+ data.tar.gz: '08eee7f10e0acc35989b974754d61f7f23d6aefda09f870fcb13eacd02e3930d'
5
5
  SHA512:
6
- metadata.gz: 30b1983da13638f647afefbffbe843ad4314726481bb4f493b498877ec59f8cd3cc723c5f03546ed82b16981f20edbcf42f159c4f106020cad6c1ff294d22f58
7
- data.tar.gz: 1715054c68fea6907e6843db9ae542f19027c6759f8a67aba3299500f3bdf8e5dbe862658dee4bd13c20278c5f49d4dafdac211f3fb2819615b9174ba7a1c32f
6
+ metadata.gz: c22af653270a2b2780a7e05ba953e50999a2bd853fe10a318f867079b0b8b798d0e841f53f8dff223ee3c863ebcfa49cfdf857e064388118bbb7ab5fbddd358a
7
+ data.tar.gz: c4fbfae80c80ddaf84d0061ada895098dd0b2e2f75400416302c9c87f2da01f4d0b581d80824f285e4966dd93c1ad2fabba248a6abf819a8d00477f6ac9185ea
@@ -0,0 +1,83 @@
1
+ version: 2.1
2
+ jobs:
3
+ lint:
4
+ docker:
5
+ - image: salsify/ruby_ci:2.5.8
6
+ working_directory: ~/activerecord-forbid_implicit_connection_checkout
7
+ steps:
8
+ - checkout
9
+ - restore_cache:
10
+ keys:
11
+ - v1-gems-ruby-2.5.8-{{ checksum "activerecord-forbid_implicit_connection_checkout.gemspec" }}-{{ checksum "Gemfile" }}
12
+ - v1-gems-ruby-2.5.8-
13
+ - run:
14
+ name: Install Gems
15
+ command: |
16
+ if ! bundle check --path=vendor/bundle; then
17
+ bundle install --path=vendor/bundle --jobs=4 --retry=3
18
+ bundle clean
19
+ fi
20
+ - save_cache:
21
+ key: v1-gems-ruby-2.5.8-{{ checksum "activerecord-forbid_implicit_connection_checkout.gemspec" }}-{{ checksum "Gemfile" }}
22
+ paths:
23
+ - "vendor/bundle"
24
+ - "gemfiles/vendor/bundle"
25
+ - run:
26
+ name: Run Rubocop
27
+ command: bundle exec rubocop
28
+ test:
29
+ parameters:
30
+ gemfile:
31
+ type: string
32
+ ruby_version:
33
+ type: string
34
+ docker:
35
+ - image: salsify/ruby_ci:<< parameters.ruby_version >>
36
+ - image: circleci/postgres:9.6
37
+ environment:
38
+ POSTGRES_USER: "circleci"
39
+ POSTGRES_DB: "circle_test"
40
+ POSTGRES_HOST_AUTH_METHOD: "trust"
41
+ environment:
42
+ CIRCLE_TEST_REPORTS: "test-results"
43
+ BUNDLE_GEMFILE: << parameters.gemfile >>
44
+ working_directory: ~/activerecord-forbid_implicit_connection_checkout
45
+ steps:
46
+ - checkout
47
+ - restore_cache:
48
+ keys:
49
+ - v1-gems-ruby-<< parameters.ruby_version >>-{{ checksum "activerecord-forbid_implicit_connection_checkout.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
50
+ - v1-gems-ruby-<< parameters.ruby_version >>-
51
+ - run:
52
+ name: Install Gems
53
+ command: |
54
+ if ! bundle check --path=vendor/bundle; then
55
+ bundle install --path=vendor/bundle --jobs=4 --retry=3
56
+ bundle clean
57
+ fi
58
+ - save_cache:
59
+ key: v1-gems-ruby-<< parameters.ruby_version >>-{{ checksum "activerecord-forbid_implicit_connection_checkout.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
60
+ paths:
61
+ - "vendor/bundle"
62
+ - "gemfiles/vendor/bundle"
63
+ - run:
64
+ name: Run Tests
65
+ command: |
66
+ bundle exec rspec --format RspecJunitFormatter --out $CIRCLE_TEST_REPORTS/rspec/junit.xml --format progress spec
67
+ - store_test_results:
68
+ path: "test-results"
69
+ workflows:
70
+ build:
71
+ jobs:
72
+ - lint
73
+ - test:
74
+ matrix:
75
+ parameters:
76
+ gemfile:
77
+ - "gemfiles/rails_5.2.gemfile"
78
+ - "gemfiles/rails_6.0.gemfile"
79
+ - "gemfiles/rails_6.1.gemfile"
80
+ ruby_version:
81
+ - "2.5.8"
82
+ - "2.6.6"
83
+ - "2.7.2"
@@ -1,7 +1,16 @@
1
1
  inherit_gem:
2
2
  salsify_rubocop: conf/rubocop.yml
3
3
 
4
+ AllCops:
5
+ TargetRubyVersion: 2.5
6
+ Exclude:
7
+ - 'vendor/**/*'
8
+ - 'gemfiles/vendor/**/*'
9
+
4
10
  Style/FileName:
5
11
  Exclude:
6
12
  - Appraisals
7
13
  - lib/active_record-forbid_implicit_connection_checkout.rb
14
+
15
+ Bundler/GemComment:
16
+ Enabled: false
data/Appraisals CHANGED
@@ -1,11 +1,13 @@
1
+ # frozen_string_literal: true
2
+
1
3
  appraise 'rails-5.2' do
2
- gem 'activerecord', '5.2.0'
3
- gem 'activesupport', '5.2.0'
4
- gem 'activemodel', '5.2.0'
4
+ gem 'rails', '5.2.4'
5
5
  end
6
6
 
7
7
  appraise 'rails-6.0' do
8
- gem 'activerecord', '6.0.0'
9
- gem 'activesupport', '6.0.0'
10
- gem 'activemodel', '6.0.0'
8
+ gem 'rails', '6.0.3'
9
+ end
10
+
11
+ appraise 'rails-6.1' do
12
+ gem 'rails', '6.1.1'
11
13
  end
@@ -1,5 +1,8 @@
1
1
  # activerecord-forbid_implicit_checkout
2
2
 
3
+ ## v1.1.0
4
+ - Add rails 6.1 support
5
+
3
6
  ## v1.0.0
4
7
  - Add rails 6.0 support
5
8
  - Drop support for ruby 2.4, 2.3 and 2.2.
data/Gemfile CHANGED
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  source 'https://rubygems.org'
3
4
 
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://travis-ci.org/salsify/activerecord-forbid_implicit_connection_checkout.svg?branch=master)](https://travis-ci.org/salsify/activerecord-forbid_implicit_connection_checkout)
1
+ [![Build Status](https://circleci.com/gh/salsify/activerecord-forbid_implicit_connection_checkout.svg?style=svg)][circleci]
2
2
 
3
3
  # ActiveRecord-ForbidImplicitCheckout
4
4
 
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/gem_tasks'
2
4
 
3
5
 
@@ -1,6 +1,6 @@
1
- # coding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
- lib = File.expand_path('../lib', __FILE__)
3
+ lib = File.expand_path('lib', __dir__)
4
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
  require 'active_record/forbid_implicit_connection_checkout/version'
6
6
 
@@ -16,7 +16,7 @@ Gem::Specification.new do |spec|
16
16
 
17
17
  spec.license = 'MIT'
18
18
 
19
- spec.required_ruby_version = '>= 2.2'
19
+ spec.required_ruby_version = '>= 2.5'
20
20
 
21
21
  # Set 'allowed_push_post' to control where this gem can be published.
22
22
  if spec.respond_to?(:metadata)
@@ -29,17 +29,18 @@ Gem::Specification.new do |spec|
29
29
  spec.bindir = 'bin'
30
30
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ['lib']
32
- spec.add_dependency 'activerecord', '>= 5.2', '< 6.1'
33
- spec.add_dependency 'activemodel', '>= 5.2', '< 6.1'
34
- spec.add_dependency 'activesupport', '>= 5.2', '< 6.1'
32
+ spec.add_dependency 'activemodel', '>= 5.2', '< 6.2'
33
+ spec.add_dependency 'activerecord', '>= 5.2', '< 6.2'
34
+ spec.add_dependency 'activesupport', '>= 5.2', '< 6.2'
35
35
 
36
- spec.add_development_dependency 'bundler'
37
36
  spec.add_development_dependency 'appraisal'
37
+ spec.add_development_dependency 'bundler'
38
+ spec.add_development_dependency 'database_cleaner'
39
+ spec.add_development_dependency 'overcommit'
40
+ spec.add_development_dependency 'pg', '~> 1.0'
38
41
  spec.add_development_dependency 'rake', '~> 10.0'
39
42
  spec.add_development_dependency 'rspec', '~> 3.4'
40
- spec.add_development_dependency 'salsify_rubocop', '~> 0.48.1'
41
- spec.add_development_dependency 'overcommit'
42
- spec.add_development_dependency 'database_cleaner'
43
- spec.add_development_dependency 'pg', '~> 0.18'
43
+ spec.add_development_dependency 'rspec_junit_formatter'
44
+ spec.add_development_dependency 'salsify_rubocop', '~> 0.48'
44
45
  spec.add_development_dependency 'with_model'
45
46
  end
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'bundler/setup'
4
5
  require 'activerecord-forbid_implicit_checkout'
@@ -1,9 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file was generated by Appraisal
2
4
 
3
- source "https://rubygems.org"
5
+ source 'https://rubygems.org'
4
6
 
5
- gem "activerecord", "5.2.0"
6
- gem "activesupport", "5.2.0"
7
- gem "activemodel", "5.2.0"
7
+ gem 'rails', '5.2.4'
8
8
 
9
- gemspec path: "../"
9
+ gemspec path: '../'
@@ -1,9 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file was generated by Appraisal
2
4
 
3
- source "https://rubygems.org"
5
+ source 'https://rubygems.org'
4
6
 
5
- gem "activerecord", "6.0.0"
6
- gem "activesupport", "6.0.0"
7
- gem "activemodel", "6.0.0"
7
+ gem 'rails', '6.0.3'
8
8
 
9
- gemspec path: "../"
9
+ gemspec path: '../'
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file was generated by Appraisal
4
+
5
+ source 'https://rubygems.org'
6
+
7
+ gem 'rails', '6.1.1'
8
+
9
+ gemspec path: '../'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'active_record'
2
4
  require 'active_record/forbid_implicit_connection_checkout/version'
3
5
  require 'active_record/implicit_connection_forbidden_error'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'active_record/implicit_connection_forbidden_error'
2
4
 
3
5
  module ActiveRecord
@@ -8,6 +10,7 @@ module ActiveRecord
8
10
  !connection_handler.retrieve_connection_pool(connection_specification_name).active_connection?
9
11
  raise ActiveRecord::ImplicitConnectionForbiddenError.new
10
12
  end
13
+
11
14
  super
12
15
  end
13
16
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module ActiveRecord
2
4
  module ForbidImplicitConnectionCheckout
3
5
  module PreventConnectionCheckout
@@ -1,5 +1,7 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module ActiveRecord
2
4
  module ForbidImplicitConnectionCheckout
3
- VERSION = '1.0.0'.freeze
5
+ VERSION = '1.1.0'
4
6
  end
5
7
  end
@@ -1,10 +1,12 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This is needed because of https://github.com/rails/rails/blob/5-0-stable/activerecord/lib/active_record/errors.rb#L221
2
4
  require 'active_model/errors'
3
5
  require 'active_record/errors'
4
6
 
5
7
  module ActiveRecord
6
8
  class ImplicitConnectionForbiddenError < ActiveRecord::ConnectionNotEstablished
7
- MESSAGE = 'Implicit ActiveRecord checkout attempted when Thread :active_record_forbid_implicit_connections set!'.freeze
9
+ MESSAGE = 'Implicit ActiveRecord checkout attempted when Thread :active_record_forbid_implicit_connections set!'
8
10
 
9
11
  def initialize
10
12
  super(MESSAGE)
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-forbid_implicit_connection_checkout
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Salsify, Inc
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-04 00:00:00.000000000 Z
11
+ date: 2021-01-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: activerecord
14
+ name: activemodel
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '5.2'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '6.1'
22
+ version: '6.2'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,9 +29,9 @@ dependencies:
29
29
  version: '5.2'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '6.1'
32
+ version: '6.2'
33
33
  - !ruby/object:Gem::Dependency
34
- name: activemodel
34
+ name: activerecord
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  version: '5.2'
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: '6.1'
42
+ version: '6.2'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
@@ -49,7 +49,7 @@ dependencies:
49
49
  version: '5.2'
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: '6.1'
52
+ version: '6.2'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: activesupport
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,7 @@ dependencies:
59
59
  version: '5.2'
60
60
  - - "<"
61
61
  - !ruby/object:Gem::Version
62
- version: '6.1'
62
+ version: '6.2'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
@@ -69,7 +69,21 @@ dependencies:
69
69
  version: '5.2'
70
70
  - - "<"
71
71
  - !ruby/object:Gem::Version
72
- version: '6.1'
72
+ version: '6.2'
73
+ - !ruby/object:Gem::Dependency
74
+ name: appraisal
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: '0'
80
+ type: :development
81
+ prerelease: false
82
+ version_requirements: !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
73
87
  - !ruby/object:Gem::Dependency
74
88
  name: bundler
75
89
  requirement: !ruby/object:Gem::Requirement
@@ -85,7 +99,7 @@ dependencies:
85
99
  - !ruby/object:Gem::Version
86
100
  version: '0'
87
101
  - !ruby/object:Gem::Dependency
88
- name: appraisal
102
+ name: database_cleaner
89
103
  requirement: !ruby/object:Gem::Requirement
90
104
  requirements:
91
105
  - - ">="
@@ -99,63 +113,63 @@ dependencies:
99
113
  - !ruby/object:Gem::Version
100
114
  version: '0'
101
115
  - !ruby/object:Gem::Dependency
102
- name: rake
116
+ name: overcommit
103
117
  requirement: !ruby/object:Gem::Requirement
104
118
  requirements:
105
- - - "~>"
119
+ - - ">="
106
120
  - !ruby/object:Gem::Version
107
- version: '10.0'
121
+ version: '0'
108
122
  type: :development
109
123
  prerelease: false
110
124
  version_requirements: !ruby/object:Gem::Requirement
111
125
  requirements:
112
- - - "~>"
126
+ - - ">="
113
127
  - !ruby/object:Gem::Version
114
- version: '10.0'
128
+ version: '0'
115
129
  - !ruby/object:Gem::Dependency
116
- name: rspec
130
+ name: pg
117
131
  requirement: !ruby/object:Gem::Requirement
118
132
  requirements:
119
133
  - - "~>"
120
134
  - !ruby/object:Gem::Version
121
- version: '3.4'
135
+ version: '1.0'
122
136
  type: :development
123
137
  prerelease: false
124
138
  version_requirements: !ruby/object:Gem::Requirement
125
139
  requirements:
126
140
  - - "~>"
127
141
  - !ruby/object:Gem::Version
128
- version: '3.4'
142
+ version: '1.0'
129
143
  - !ruby/object:Gem::Dependency
130
- name: salsify_rubocop
144
+ name: rake
131
145
  requirement: !ruby/object:Gem::Requirement
132
146
  requirements:
133
147
  - - "~>"
134
148
  - !ruby/object:Gem::Version
135
- version: 0.48.1
149
+ version: '10.0'
136
150
  type: :development
137
151
  prerelease: false
138
152
  version_requirements: !ruby/object:Gem::Requirement
139
153
  requirements:
140
154
  - - "~>"
141
155
  - !ruby/object:Gem::Version
142
- version: 0.48.1
156
+ version: '10.0'
143
157
  - !ruby/object:Gem::Dependency
144
- name: overcommit
158
+ name: rspec
145
159
  requirement: !ruby/object:Gem::Requirement
146
160
  requirements:
147
- - - ">="
161
+ - - "~>"
148
162
  - !ruby/object:Gem::Version
149
- version: '0'
163
+ version: '3.4'
150
164
  type: :development
151
165
  prerelease: false
152
166
  version_requirements: !ruby/object:Gem::Requirement
153
167
  requirements:
154
- - - ">="
168
+ - - "~>"
155
169
  - !ruby/object:Gem::Version
156
- version: '0'
170
+ version: '3.4'
157
171
  - !ruby/object:Gem::Dependency
158
- name: database_cleaner
172
+ name: rspec_junit_formatter
159
173
  requirement: !ruby/object:Gem::Requirement
160
174
  requirements:
161
175
  - - ">="
@@ -169,19 +183,19 @@ dependencies:
169
183
  - !ruby/object:Gem::Version
170
184
  version: '0'
171
185
  - !ruby/object:Gem::Dependency
172
- name: pg
186
+ name: salsify_rubocop
173
187
  requirement: !ruby/object:Gem::Requirement
174
188
  requirements:
175
189
  - - "~>"
176
190
  - !ruby/object:Gem::Version
177
- version: '0.18'
191
+ version: '0.48'
178
192
  type: :development
179
193
  prerelease: false
180
194
  version_requirements: !ruby/object:Gem::Requirement
181
195
  requirements:
182
196
  - - "~>"
183
197
  - !ruby/object:Gem::Version
184
- version: '0.18'
198
+ version: '0.48'
185
199
  - !ruby/object:Gem::Dependency
186
200
  name: with_model
187
201
  requirement: !ruby/object:Gem::Requirement
@@ -205,12 +219,12 @@ executables:
205
219
  extensions: []
206
220
  extra_rdoc_files: []
207
221
  files:
222
+ - ".circleci/config.yml"
208
223
  - ".gitignore"
209
224
  - ".overcommit.yml"
210
225
  - ".rspec"
211
226
  - ".rubocop.yml"
212
227
  - ".ruby-gemset"
213
- - ".travis.yml"
214
228
  - Appraisals
215
229
  - CHANGELOG.md
216
230
  - Gemfile
@@ -223,6 +237,7 @@ files:
223
237
  - gemfiles/.bundle/config
224
238
  - gemfiles/rails_5.2.gemfile
225
239
  - gemfiles/rails_6.0.gemfile
240
+ - gemfiles/rails_6.1.gemfile
226
241
  - lib/active_record-forbid_implicit_connection_checkout.rb
227
242
  - lib/active_record/forbid_implicit_connection_checkout/connection_override.rb
228
243
  - lib/active_record/forbid_implicit_connection_checkout/prevent_connection_checkout.rb
@@ -233,7 +248,7 @@ licenses:
233
248
  - MIT
234
249
  metadata:
235
250
  allowed_push_host: https://rubygems.org
236
- post_install_message:
251
+ post_install_message:
237
252
  rdoc_options: []
238
253
  require_paths:
239
254
  - lib
@@ -241,15 +256,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
241
256
  requirements:
242
257
  - - ">="
243
258
  - !ruby/object:Gem::Version
244
- version: '2.2'
259
+ version: '2.5'
245
260
  required_rubygems_version: !ruby/object:Gem::Requirement
246
261
  requirements:
247
262
  - - ">="
248
263
  - !ruby/object:Gem::Version
249
264
  version: '0'
250
265
  requirements: []
251
- rubygems_version: 3.0.3
252
- signing_key:
266
+ rubygems_version: 3.1.4
267
+ signing_key:
253
268
  specification_version: 4
254
269
  summary: Optionally prevents threads from checking out activerecord connections.
255
270
  test_files: []
@@ -1,12 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.5.7
4
- - 2.6.5
5
- gemfile:
6
- - gemfiles/rails_5.2.gemfile
7
- - gemfiles/rails_6.0.gemfile
8
- services:
9
- - postgresql
10
- script:
11
- - bundle exec rubocop
12
- - bundle exec rake