mongoid-locker 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 46e4667e791c955ae115a24070ff3b1383c8d272f7263cb9f0199b9b9c82ab46
4
- data.tar.gz: ba19a3dc36bdf0522c2cc7d9dca31a8e89f0ac01c3d3073f476a64605db26cc2
3
+ metadata.gz: 1bd397a8299e68e225e9df96570840b39592559e458f808834722548fb486387
4
+ data.tar.gz: a6d879248d41b1f6e1b0eeb715dc4ba72c93042c7e382d56743f53c40868007e
5
5
  SHA512:
6
- metadata.gz: be8ec0af58ec384c7c1e374fd5ca5bbe133b95fb2be445628f6026a64665a866ebaf4396423f775fc8de51101c6cf920f61669859d32433d7bae2f9353e45a71
7
- data.tar.gz: 2148730176e46068be6b9bca45ef9b6f4d83107561e0b60ad8ada1254d40ada77ac69ea64cc792b21f565cde1b4ff338a4d740d11bf90866c9136d4cc831e715
6
+ metadata.gz: 29b6005758187e0020a375971f37da4c0d476cdec634f2dda35b0e78695b26da00c4ff6e8f2dab98c4f9b628514668be8135336d87f525cd974cf55c7c9cd8db
7
+ data.tar.gz: 1df8d96ae35dee15bf9ce2225cc3834ef0b055e95c68b4685e5f3efbeddab5a1af87fb129a800d558c9d2692fce59ce1fa72b9ca968a3519d9614a884f30cfc5
data/.gitignore CHANGED
@@ -1,6 +1,5 @@
1
- # rcov
1
+ # simplecov
2
2
  coverage
3
- coverage.data
4
3
 
5
4
  # rdoc
6
5
  rdoc
@@ -1,7 +1,2 @@
1
- AllCops:
2
- Exclude:
3
- - vendor/**/*
4
- - bin/**/*
5
- - mongoid-locker.gemspec
6
-
7
1
  inherit_from: .rubocop_todo.yml
2
+ require: rubocop-rspec
@@ -1,12 +1,12 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2018-09-01 16:46:40 +0300 using RuboCop version 0.58.2.
3
+ # on 2018-11-23 00:20:08 +0300 using RuboCop version 0.60.0.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 6
9
+ # Offense count: 4
10
10
  # Configuration parameters: Include.
11
11
  # Include: **/*.gemfile, **/Gemfile, **/gems.rb
12
12
  Bundler/DuplicatedGem:
@@ -21,13 +21,21 @@ Metrics/AbcSize:
21
21
  # Configuration parameters: CountComments, ExcludedMethods.
22
22
  # ExcludedMethods: refine
23
23
  Metrics/BlockLength:
24
- Max: 493
24
+ Max: 505
25
25
 
26
- # Offense count: 2
27
- # Configuration parameters: CountComments.
26
+ # Offense count: 3
27
+ # Configuration parameters: CountComments, ExcludedMethods.
28
28
  Metrics/MethodLength:
29
29
  Max: 25
30
30
 
31
+ # Offense count: 2
32
+ # Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms.
33
+ # AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
34
+ Naming/FileName:
35
+ Exclude:
36
+ - 'lib/mongoid-locker.rb'
37
+ - 'spec/mongoid-locker_spec.rb'
38
+
31
39
  # Offense count: 1
32
40
  # Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist, MethodDefinitionMacros.
33
41
  # NamePrefix: is_, has_, have_
@@ -39,6 +47,37 @@ Naming/PredicateName:
39
47
  - 'spec/**/*'
40
48
  - 'lib/mongoid/locker.rb'
41
49
 
50
+ # Offense count: 37
51
+ # Cop supports --auto-correct.
52
+ # Configuration parameters: SkipBlocks, EnforcedStyle.
53
+ # SupportedStyles: described_class, explicit
54
+ RSpec/DescribedClass:
55
+ Exclude:
56
+ - 'spec/mongoid-locker_spec.rb'
57
+
58
+ # Offense count: 19
59
+ # Configuration parameters: Max.
60
+ RSpec/ExampleLength:
61
+ Exclude:
62
+ - 'spec/mongoid-locker_spec.rb'
63
+
64
+ # Offense count: 1
65
+ # Configuration parameters: CustomTransform, IgnoreMethods.
66
+ RSpec/FilePath:
67
+ Exclude:
68
+ - 'spec/mongoid-locker_spec.rb'
69
+
70
+ # Offense count: 6
71
+ # Configuration parameters: .
72
+ # SupportedStyles: have_received, receive
73
+ RSpec/MessageSpies:
74
+ EnforcedStyle: receive
75
+
76
+ # Offense count: 16
77
+ # Configuration parameters: AggregateFailuresByDefault.
78
+ RSpec/MultipleExpectations:
79
+ Max: 5
80
+
42
81
  # Offense count: 2
43
82
  Style/Documentation:
44
83
  Exclude:
@@ -51,28 +90,8 @@ Style/DoubleNegation:
51
90
  Exclude:
52
91
  - 'lib/mongoid/locker.rb'
53
92
 
54
- # Offense count: 1
55
- # Configuration parameters: MinBodyLength.
56
- Style/GuardClause:
57
- Exclude:
58
- - 'lib/mongoid/locker.rb'
59
-
60
- # Offense count: 1
61
- # Cop supports --auto-correct.
62
- # Configuration parameters: .
63
- # SupportedStyles: compact, exploded
64
- Style/RaiseArgs:
65
- EnforcedStyle: compact
66
-
67
- # Offense count: 1
68
- # Cop supports --auto-correct.
69
- # Configuration parameters: MinSize.
70
- # SupportedStyles: percent, brackets
71
- Style/SymbolArray:
72
- EnforcedStyle: brackets
73
-
74
- # Offense count: 63
93
+ # Offense count: 55
75
94
  # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
76
95
  # URISchemes: http, https
77
96
  Metrics/LineLength:
78
- Max: 184
97
+ Max: 180
@@ -11,26 +11,52 @@ before_install:
11
11
 
12
12
  matrix:
13
13
  include:
14
- - rvm: 2.3.6
14
+ - rvm: 2.3.8
15
15
  env: MONGOID_VERSION=4
16
- - rvm: 2.3.6
16
+ - rvm: 2.3.8
17
17
  env: MONGOID_VERSION=5
18
- - rvm: 2.3.6
18
+ - rvm: 2.3.8
19
19
  env: MONGOID_VERSION=6
20
- - rvm: 2.4.3
20
+ - rvm: 2.4.5
21
21
  env: MONGOID_VERSION=6
22
- - rvm: 2.4.3
22
+ - rvm: 2.4.5
23
23
  env: MONGOID_VERSION=7
24
- - rvm: 2.5.0
24
+ - rvm: 2.5.3
25
25
  env: MONGOID_VERSION=7
26
- before_script:
27
- - bundle exec danger
28
- - rvm: rbx-2
26
+ before_script: bundle exec danger
27
+ - rvm: jruby-9.1.17.0
28
+ env: MONGOID_VERSION=4
29
+ - rvm: jruby-9.1.17.0
30
+ env: MONGOID_VERSION=5
31
+ - rvm: jruby-9.1.17.0
32
+ env: MONGOID_VERSION=6
33
+ - rvm: jruby-9.2.4.0
34
+ env: MONGOID_VERSION=6
35
+ - rvm: jruby-9.2.4.0
36
+ env: MONGOID_VERSION=7
37
+ - name: Code Climate Test Coverage
38
+ rvm: 2.3.8
39
+ env: COVERAGE=true
40
+ script:
41
+ - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
42
+ - chmod +x ./cc-test-reporter
43
+ - ./cc-test-reporter before-build
44
+ - for version in 4 5 6 7; do
45
+ MONGOID_VERSION=$version bundle update;
46
+ bundle exec rake;
47
+ ./cc-test-reporter format-coverage -t simplecov -o coverage/codeclimate.mongoid${version}.json;
48
+ done
49
+ - if [[ "$TRAVIS_TEST_RESULT" == 0 ]]; then
50
+ ./cc-test-reporter sum-coverage coverage/codeclimate.mongoid*.json -p 4;
51
+ ./cc-test-reporter upload-coverage;
52
+ fi
29
53
  - rvm: ruby-head
30
54
  - rvm: jruby-head
55
+ fast_finish: true
31
56
  allow_failures:
32
57
  - rvm: ruby-head
58
+ - rvm: jruby-9.1.17.0
59
+ - rvm: jruby-9.2.4.0
33
60
  - rvm: jruby-head
34
- - rvm: rbx-2
35
61
 
36
62
  bundler_args: --without development
@@ -1,5 +1,16 @@
1
1
  ## Changelog
2
2
 
3
+ ### 1.0.1 (2019-03-23)
4
+
5
+ * [#74](https://github.com/mongoid/mongoid-locker/pull/74): Add JRuby tests - [@dks17](https://github.com/dks17).
6
+ * [#68](https://github.com/mongoid/mongoid-locker/pull/68): Fix Rubocop offenses, refactoring, update `ruby` versions, add `COVERAGE` test env, update `.travis.yml` matrix - [@dks17](https://github.com/dks17).
7
+ * [#67](https://github.com/mongoid/mongoid-locker/pull/67): Deprecate `:wait` in favor of `:retries` option, which can attempt to grab a lock multiple times - [@afeld](https://github.com/afeld), [@dks17](https://github.com/dks17).
8
+ * [#66](https://github.com/mongoid/mongoid-locker/pull/66): Fix Mongoid::Locker::LockError for not persisted document - [@dks17](https://github.com/dks17).
9
+ * [#65](https://github.com/mongoid/mongoid-locker/pull/65): Drop `mongoid-compatibility` gem dependency - [@dks17](https://github.com/dks17).
10
+ * [#64](https://github.com/mongoid/mongoid-locker/pull/64): Exclude demo files from the gem - [@dks17](https://github.com/dks17).
11
+ * [#60](https://github.com/mongoid/mongoid-locker/pull/60): Drop support for `mongoid` version `2` and `3` - [@dks17](https://github.com/dks17).
12
+ * [#60](https://github.com/mongoid/mongoid-locker/pull/60): Add SimpleCov - [@dks17](https://github.com/dks17).
13
+
3
14
  ### 1.0.0 (2018-09-02)
4
15
 
5
16
  * [#57](https://github.com/mongoid/mongoid-locker/pull/57): `Time.now` replaced by `Time.now.utc` - [@dks17](https://github.com/dks17).
data/Gemfile CHANGED
@@ -4,16 +4,11 @@ case ENV['MONGOID_VERSION']
4
4
  when /^7/
5
5
  gem 'mongoid', '~> 7.0'
6
6
  when /^6/
7
- gem 'mongoid', '~> 6.0'
7
+ gem 'mongoid', '~> 6.4'
8
8
  when /^5/
9
- gem 'mongoid', '~> 5.0'
9
+ gem 'mongoid', '~> 5.4'
10
10
  when /^4/
11
11
  gem 'mongoid', '~> 4.0'
12
- when /^3/
13
- gem 'mongoid', '~> 3.1'
14
- when /^2/
15
- gem 'bson_ext', platforms: :ruby
16
- gem 'mongoid', '~> 2.8'
17
12
  else
18
13
  gem 'mongoid', '>= 4.0'
19
14
  end
@@ -26,10 +21,11 @@ group :development do
26
21
  end
27
22
 
28
23
  group :development, :test do
29
- gem 'mongoid-compatibility'
30
24
  gem 'mongoid-danger', '~> 0.1.1'
31
25
  gem 'rack', '~> 1.5'
32
26
  gem 'rake', '11.3.0'
33
27
  gem 'rspec', '~> 3.0'
34
28
  gem 'rubocop'
29
+ gem 'rubocop-rspec'
30
+ gem 'simplecov', require: false
35
31
  end
data/README.md CHANGED
@@ -1,13 +1,14 @@
1
1
  # mongoid-locker
2
- [![Gem Version](https://badge.fury.io/rb/mongoid-locker.svg)](http://badge.fury.io/rb/mongoid-locker)
3
- [![Build Status](https://secure.travis-ci.org/mongoid/mongoid-locker.svg?branch=master)](http://travis-ci.org/mongoid/mongoid-locker)
4
- [![Code Climate](https://codeclimate.com/github/mongoid/mongoid-locker.svg)](https://codeclimate.com/github/mongoid/mongoid-locker)
2
+ [![Gem Version](https://badge.fury.io/rb/mongoid-locker.svg)](https://badge.fury.io/rb/mongoid-locker)
3
+ [![Build Status](https://travis-ci.org/mongoid/mongoid-locker.svg?branch=master)](https://travis-ci.org/mongoid/mongoid-locker)
4
+ [![Maintainability](https://api.codeclimate.com/v1/badges/04ee4ee75ff54659300a/maintainability)](https://codeclimate.com/github/mongoid/mongoid-locker/maintainability)
5
+ [![Test Coverage](https://api.codeclimate.com/v1/badges/04ee4ee75ff54659300a/test_coverage)](https://codeclimate.com/github/mongoid/mongoid-locker/test_coverage)
5
6
 
6
- Document-level locking for MongoDB via Mongoid. The need arose at [Jux](https://jux.com) from multiple processes on multiple servers trying to act upon the same document and stepping on each other's toes. Mongoid-Locker is an easy way to ensure only one process can perform a certain operation on a document at a time.
7
+ Document-level locking for MongoDB via Mongoid. Mongoid-Locker is an easy way to ensure only one process can perform a certain operation on a document at a time.
7
8
 
8
- [Tested](http://travis-ci.org/mongoid/mongoid-locker) against:
9
- - MRI: `2.3.6`, `2.4.3`, `2.5.0`
10
- - Mongoid: `2`, `3`, `4`, `5`, `6`, `7`
9
+ [Tested](https://travis-ci.org/mongoid/mongoid-locker) against:
10
+ - MRI: `2.3.8`, `2.4.5`, `2.5.3`
11
+ - Mongoid: `4`, `5`, `6`, `7`
11
12
 
12
13
  See [.travis.yml](.travis.yml) for the latest test matrix.
13
14
 
@@ -56,7 +57,7 @@ class QueueItem
56
57
  end
57
58
  ```
58
59
 
59
- Note that these locks are only enforced when using `#with_lock`, not at the database level. It's useful for transactional operations, where you can make atomic modification of the document with checks. For example, you could deduct a purchase from a user's balance ... _unless_ they are broke.
60
+ Note that these locks are only enforced when using `#with_lock`, not at the database level. It's useful for transactional operations, where you can make atomic modification of the document with checks. For example, you could deduct a purchase from a user's balance ... _unless_ they are broke.
60
61
 
61
62
  More in-depth method documentation can be found at [rdoc.info](http://rdoc.info/github/mongoid/mongoid-locker/frames).
62
63
 
@@ -9,7 +9,7 @@ Run tests, check that all tests succeed locally.
9
9
 
10
10
  ```
11
11
  bundle install
12
- rake
12
+ bundle exec rake
13
13
  ```
14
14
 
15
15
  Check that the last build succeeded in [Travis CI](https://travis-ci.org/mongoid/mongoid-locker) for all supported platforms.
@@ -38,7 +38,7 @@ git push origin master
38
38
  Release.
39
39
 
40
40
  ```
41
- $ rake release
41
+ $ bundle exec rake release
42
42
 
43
43
  mongoid-locker 0.4.0 built to pkg/mongoid-locker-0.4.0.gem.
44
44
  Tagged v0.4.0.
data/Rakefile CHANGED
@@ -12,4 +12,4 @@ end
12
12
  require 'rubocop/rake_task'
13
13
  RuboCop::RakeTask.new(:rubocop)
14
14
 
15
- task default: [:rubocop, :spec]
15
+ task default: %i[rubocop spec]
@@ -108,23 +108,25 @@ module Mongoid
108
108
  #
109
109
  # @param [Hash] opts for the locking mechanism
110
110
  # @option opts [Fixnum] :timeout The number of seconds until the lock is considered "expired" - defaults to the {ClassMethods#lock_timeout}
111
- # @option opts [Fixnum] :retries If the document is currently locked, the number of times to retry. Defaults to 0 (note: setting this to 1 is the equivalent of using :wait => true)
111
+ # @option opts [Fixnum] :retries If the document is currently locked, the number of times to retry - defaults to 0
112
112
  # @option opts [Float] :retry_sleep How long to sleep between attempts to acquire lock - defaults to time left until lock is available
113
- # @option opts [Boolean] :wait If the document is currently locked, wait until the lock expires and try again - defaults to false. If set, :retries will be ignored
113
+ # @option opts [Boolean] :wait (deprecated) If the document is currently locked, wait until the lock expires and try again - defaults to false. If set, :retries will be ignored
114
114
  # @option opts [Boolean] :reload After acquiring the lock, reload the document - defaults to true
115
115
  # @return [void]
116
116
  def with_lock(opts = {})
117
- had_lock = has_lock?
117
+ unless !persisted? || (had_lock = has_lock?)
118
+ if opts[:wait]
119
+ opts[:retries] = 1
120
+ warn 'WARN: `:wait` option for Mongoid::Locker is deprecated - use `retries: 1` instead.'
121
+ end
118
122
 
119
- unless had_lock
120
- opts[:retries] = 1 if opts[:wait]
121
123
  lock(opts)
122
124
  end
123
125
 
124
126
  begin
125
127
  yield
126
128
  ensure
127
- unlock if locked? && !had_lock
129
+ unlock if !had_lock && locked?
128
130
  end
129
131
  end
130
132
 
@@ -175,19 +177,18 @@ module Mongoid
175
177
 
176
178
  attempts_left -= 1
177
179
 
178
- if attempts_left > 0
179
- # if not passed a retry_sleep value, we sleep for the remaining life of the lock
180
- unless retry_sleep
181
- locked_until = Mongoid::Locker::Wrapper.locked_until(self)
182
- # the lock might be released since the last check so make another attempt
183
- next unless locked_until
184
- retry_sleep = locked_until - Time.now.utc
185
- end
186
-
187
- sleep retry_sleep if retry_sleep > 0
188
- else
189
- raise LockError.new('could not get lock')
180
+ raise LockError, 'could not get lock' unless attempts_left > 0
181
+
182
+ # if not passed a retry_sleep value, we sleep for the remaining life of the lock
183
+ unless retry_sleep
184
+ locked_until = Mongoid::Locker::Wrapper.locked_until(self)
185
+ # the lock might be released since the last check so make another attempt
186
+ next unless locked_until
187
+
188
+ retry_sleep = locked_until - Time.now.utc
190
189
  end
190
+
191
+ sleep retry_sleep if retry_sleep > 0
191
192
  end
192
193
  end
193
194
 
@@ -1,5 +1,5 @@
1
1
  module Mongoid
2
2
  module Locker
3
- VERSION = '1.0.0'.freeze
3
+ VERSION = '1.0.1'.freeze
4
4
  end
5
5
  end
@@ -1,17 +1,3 @@
1
- require 'mongoid/compatibility'
1
+ raise "Incompatible Mongoid #{version} version" unless %w[4 5 6 7].include?(version = Mongoid::VERSION.split('.')[0])
2
2
 
3
- if Mongoid::Compatibility::Version.mongoid7?
4
- require 'mongoid/locker/wrapper7'
5
- elsif Mongoid::Compatibility::Version.mongoid6?
6
- require 'mongoid/locker/wrapper6'
7
- elsif Mongoid::Compatibility::Version.mongoid5?
8
- require 'mongoid/locker/wrapper5'
9
- elsif Mongoid::Compatibility::Version.mongoid4?
10
- require 'mongoid/locker/wrapper4'
11
- elsif Mongoid::Compatibility::Version.mongoid3?
12
- require 'mongoid/locker/wrapper3'
13
- elsif Mongoid::Compatibility::Version.mongoid2?
14
- require 'mongoid/locker/wrapper2'
15
- else
16
- raise 'incompatible Mongoid version'
17
- end
3
+ require "mongoid/locker/wrapper#{version}"
@@ -13,9 +13,8 @@ Gem::Specification.new do |spec|
13
13
  spec.homepage = 'https://github.com/mongoid/mongoid-locker'
14
14
  spec.license = 'MIT'
15
15
 
16
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
16
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(spec|demo)/}) }
17
17
  spec.require_paths = ['lib']
18
18
 
19
- spec.add_runtime_dependency 'mongoid', '>= 2.8'
20
- spec.add_runtime_dependency 'mongoid-compatibility', '>= 0.4.1'
19
+ spec.add_runtime_dependency 'mongoid', '>= 4.0', '< 8'
21
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid-locker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aidan Feldman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-09-02 00:00:00.000000000 Z
11
+ date: 2019-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mongoid
@@ -16,28 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '2.8'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
19
+ version: '4.0'
20
+ - - "<"
25
21
  - !ruby/object:Gem::Version
26
- version: '2.8'
27
- - !ruby/object:Gem::Dependency
28
- name: mongoid-compatibility
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 0.4.1
22
+ version: '8'
34
23
  type: :runtime
35
24
  prerelease: false
36
25
  version_requirements: !ruby/object:Gem::Requirement
37
26
  requirements:
38
27
  - - ">="
39
28
  - !ruby/object:Gem::Version
40
- version: 0.4.1
29
+ version: '4.0'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '8'
41
33
  description: Allows multiple processes to operate on individual documents in MongoDB
42
34
  while ensuring that only one can act at a time.
43
35
  email:
@@ -62,18 +54,10 @@ files:
62
54
  - RELEASING.md
63
55
  - Rakefile
64
56
  - UPGRADING.md
65
- - demo/README.md
66
- - demo/config/mongoid.yml
67
- - demo/instagram.graffle
68
- - demo/instagram.png
69
- - demo/showoff.css
70
- - demo/showoff.md
71
57
  - lib/mongoid-locker.rb
72
58
  - lib/mongoid/locker.rb
73
59
  - lib/mongoid/locker/version.rb
74
60
  - lib/mongoid/locker/wrapper.rb
75
- - lib/mongoid/locker/wrapper2.rb
76
- - lib/mongoid/locker/wrapper3.rb
77
61
  - lib/mongoid/locker/wrapper4.rb
78
62
  - lib/mongoid/locker/wrapper5.rb
79
63
  - lib/mongoid/locker/wrapper6.rb
@@ -98,8 +82,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
82
  - !ruby/object:Gem::Version
99
83
  version: '0'
100
84
  requirements: []
101
- rubyforge_project:
102
- rubygems_version: 2.7.6
85
+ rubygems_version: 3.0.3
103
86
  signing_key:
104
87
  specification_version: 4
105
88
  summary: Document-level locking for MongoDB via Mongoid.