mongoid-embedded-errors 3.0.1 → 4.0.0
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 +4 -4
- data/Appraisals +4 -12
- data/CHANGELOG.md +8 -2
- data/Gemfile +5 -2
- data/gemfiles/mongoid_7.gemfile +5 -2
- data/gemfiles/mongoid_8.gemfile +19 -0
- data/lib/mongoid/embedded_errors/version.rb +1 -1
- data/lib/mongoid/embedded_errors.rb +8 -6
- data/mongoid-embedded-errors.gemspec +1 -1
- data/spec/spec_helper.rb +1 -9
- data/spec/support/database_cleaner.rb +18 -0
- metadata +13 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a086d5eabe3e2746bbf05833787ee55f8e4b838f666e3aea1c5780e860aa58c
|
4
|
+
data.tar.gz: 1f8a09d1d856795631b53f6cbfe1bf832f385a350ff9e8a4e6f7cc0f4c0815c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a6735fbef90d1143c2e724cdc2d33d669e6c829425e7ca4e1f548e2b7b11db5f817d1579cf1a6ba308c1758e628e70afc53865a3b35e84cbe2b3efee42d83cf
|
7
|
+
data.tar.gz: 7828bf072974db784c32622002c80650f0debb0858c10f4749906e77cb1ce5daa7658f483614b51b683e66db6f62c5334b4b322282eea247ff481e1ee3976422
|
data/Appraisals
CHANGED
@@ -1,15 +1,7 @@
|
|
1
|
-
appraise 'mongoid-4' do
|
2
|
-
gem 'mongoid', '~> 4.0'
|
3
|
-
end
|
4
|
-
|
5
|
-
appraise 'mongoid-5' do
|
6
|
-
gem 'mongoid', '~> 5.0'
|
7
|
-
end
|
8
|
-
|
9
|
-
appraise 'mongoid-6' do
|
10
|
-
gem 'mongoid', '~> 6.0'
|
11
|
-
end
|
12
|
-
|
13
1
|
appraise 'mongoid-7' do
|
14
2
|
gem 'mongoid', '~> 7.0'
|
15
3
|
end
|
4
|
+
|
5
|
+
appraise 'mongoid-8' do
|
6
|
+
gem 'mongoid', '~> 8.0'
|
7
|
+
end
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
## [Unreleased]
|
7
7
|
- TODO
|
8
8
|
|
9
|
+
## [v4.0.0] - 2022-08-31
|
10
|
+
- Fix rails 6 active model error deprecations (#22)
|
11
|
+
- Added Mongoid 8 support
|
12
|
+
- Dropped support for Mongoid 4, 5 and 6
|
13
|
+
|
9
14
|
## [v3.0.1] - 2020-09-29
|
10
15
|
### Added
|
11
16
|
- Started 🔎 tracking changes in a changelog!
|
@@ -22,6 +27,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
22
27
|
## [v3.0.0] - 2020-09-29 [YANKED]
|
23
28
|
- Yanked due to wrong dependencies in gemspec.
|
24
29
|
|
25
|
-
[Unreleased]: https://github.com/glooko/mongoid-embedded-errors/compare/
|
30
|
+
[Unreleased]: https://github.com/glooko/mongoid-embedded-errors/compare/v4.0.0...HEAD
|
31
|
+
[v4.0.0]: https://github.com/glooko/mongoid-embedded-errors/compare/v3.0.1...v4.0.0
|
26
32
|
[v3.0.1]: https://github.com/glooko/mongoid-embedded-errors/compare/v3.0.0...v3.0.1
|
27
|
-
[v3.0.0]: https://github.com/glooko/mongoid-embedded-errors/compare/f1ce0d8ed140de86c894b2fad7ad197504fefd5a...v3.0.0
|
33
|
+
[v3.0.0]: https://github.com/glooko/mongoid-embedded-errors/compare/f1ce0d8ed140de86c894b2fad7ad197504fefd5a...v3.0.0
|
data/Gemfile
CHANGED
@@ -4,10 +4,13 @@ source 'https://rubygems.org'
|
|
4
4
|
gemspec
|
5
5
|
|
6
6
|
group :development do
|
7
|
+
gem 'rake'
|
8
|
+
end
|
9
|
+
|
10
|
+
group :test do
|
7
11
|
gem 'appraisal'
|
8
|
-
gem 'database_cleaner'
|
12
|
+
gem 'database_cleaner-mongoid', '~> 2.0', '>= 2.0.1'
|
9
13
|
gem 'guard-rspec'
|
10
14
|
gem 'mutant-rspec'
|
11
|
-
gem 'rake'
|
12
15
|
gem 'rspec'
|
13
16
|
end
|
data/gemfiles/mongoid_7.gemfile
CHANGED
@@ -5,11 +5,14 @@ source "https://rubygems.org"
|
|
5
5
|
gem "mongoid", "~> 7.0"
|
6
6
|
|
7
7
|
group :development do
|
8
|
+
gem "rake"
|
9
|
+
end
|
10
|
+
|
11
|
+
group :test do
|
8
12
|
gem "appraisal"
|
9
|
-
gem "database_cleaner"
|
13
|
+
gem "database_cleaner-mongoid", "~> 2.0", ">= 2.0.1"
|
10
14
|
gem "guard-rspec"
|
11
15
|
gem "mutant-rspec"
|
12
|
-
gem "rake"
|
13
16
|
gem "rspec"
|
14
17
|
end
|
15
18
|
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# This file was generated by Appraisal
|
2
|
+
|
3
|
+
source "https://rubygems.org"
|
4
|
+
|
5
|
+
gem "mongoid", "~> 8.0"
|
6
|
+
|
7
|
+
group :development do
|
8
|
+
gem "rake"
|
9
|
+
end
|
10
|
+
|
11
|
+
group :test do
|
12
|
+
gem "appraisal"
|
13
|
+
gem "database_cleaner-mongoid", "~> 2.0", ">= 2.0.1"
|
14
|
+
gem "guard-rspec"
|
15
|
+
gem "mutant-rspec"
|
16
|
+
gem "rspec"
|
17
|
+
end
|
18
|
+
|
19
|
+
gemspec path: "../"
|
@@ -19,8 +19,8 @@ module Mongoid::EmbeddedErrors
|
|
19
19
|
# if there is an 'is invalid' message for the relation then let's work it:
|
20
20
|
next unless Array(public_send(name)).any? { |doc| doc.errors.any? }
|
21
21
|
|
22
|
-
# first delete the
|
23
|
-
errs
|
22
|
+
# first delete the generic 'is invalid' error for the relation
|
23
|
+
errs.delete name.to_sym, :invalid
|
24
24
|
errs.delete name.to_sym if errs[name].empty?
|
25
25
|
|
26
26
|
# next, loop through each of the relations (pages, sections, etc...)
|
@@ -28,19 +28,21 @@ module Mongoid::EmbeddedErrors
|
|
28
28
|
next unless rel.errors.any?
|
29
29
|
|
30
30
|
# get each of their individual message and add them to the parent's errors:
|
31
|
-
rel.errors.each do |
|
31
|
+
rel.errors.each do |error|
|
32
|
+
attribute = error.attribute
|
33
|
+
message = error.message
|
32
34
|
relation = if Gem::Version.new(Mongoid::VERSION) >= Gem::Version.new('7.0.0')
|
33
35
|
metadata.class
|
34
36
|
else
|
35
37
|
metadata.relation
|
36
38
|
end
|
37
39
|
key = if relation.equal? EMBEDS_MANY
|
38
|
-
"#{name}[#{i}].#{
|
40
|
+
"#{name}[#{i}].#{attribute}"
|
39
41
|
else
|
40
|
-
"#{name}.#{
|
42
|
+
"#{name}.#{attribute}"
|
41
43
|
end.to_sym
|
42
44
|
errs.delete(key)
|
43
|
-
errs.add key,
|
45
|
+
errs.add key, message if message.present?
|
44
46
|
end
|
45
47
|
end
|
46
48
|
end
|
@@ -26,7 +26,7 @@ Gem::Specification.new do |gem|
|
|
26
26
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
27
27
|
gem.require_paths = ['lib']
|
28
28
|
|
29
|
-
gem.add_dependency 'mongoid', '>=
|
29
|
+
gem.add_dependency 'mongoid', '>=7.0', '<9.0.0'
|
30
30
|
gem.add_development_dependency 'rubocop', '~> 0.92'
|
31
31
|
gem.add_development_dependency 'rubocop-rspec', '~> 1.43'
|
32
32
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'bundler/setup'
|
4
4
|
require 'mongoid-embedded-errors'
|
5
|
-
require 'database_cleaner'
|
5
|
+
require 'database_cleaner-mongoid'
|
6
6
|
|
7
7
|
current_path = File.dirname(__FILE__)
|
8
8
|
SPEC_MODELS_PATH = File.join(current_path, 'support/**/*.rb').freeze
|
@@ -25,14 +25,6 @@ RSpec.configure do |config|
|
|
25
25
|
end
|
26
26
|
config.disable_monkey_patching!
|
27
27
|
|
28
|
-
config.before(:suite) do
|
29
|
-
DatabaseCleaner.strategy = :truncation
|
30
|
-
end
|
31
|
-
|
32
|
-
config.around do |example|
|
33
|
-
DatabaseCleaner.cleaning { example.run }
|
34
|
-
end
|
35
|
-
|
36
28
|
config.before do
|
37
29
|
# Need to manually reload spec models for mutant to work as expected
|
38
30
|
if ENV['MUTANT']
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
RSpec.configure do |config|
|
4
|
+
DatabaseCleaner.strategy = :deletion
|
5
|
+
config.around do |example|
|
6
|
+
DatabaseCleaner.cleaning do
|
7
|
+
example.run
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
config.before(:all) do
|
12
|
+
DatabaseCleaner.start
|
13
|
+
end
|
14
|
+
|
15
|
+
config.after(:all) do
|
16
|
+
DatabaseCleaner.clean
|
17
|
+
end
|
18
|
+
end
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongoid-embedded-errors
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mark Bates
|
8
8
|
- Kristijan Novoselić
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2022-08-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: mongoid
|
@@ -17,20 +17,20 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '
|
20
|
+
version: '7.0'
|
21
21
|
- - "<"
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version:
|
23
|
+
version: 9.0.0
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
27
|
requirements:
|
28
28
|
- - ">="
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version: '
|
30
|
+
version: '7.0'
|
31
31
|
- - "<"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 9.0.0
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: rubocop
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
@@ -88,6 +88,7 @@ files:
|
|
88
88
|
- gemfiles/mongoid_5.gemfile
|
89
89
|
- gemfiles/mongoid_6.gemfile
|
90
90
|
- gemfiles/mongoid_7.gemfile
|
91
|
+
- gemfiles/mongoid_8.gemfile
|
91
92
|
- lib/mongoid-embedded-errors.rb
|
92
93
|
- lib/mongoid/embedded_errors.rb
|
93
94
|
- lib/mongoid/embedded_errors/embedded_in.rb
|
@@ -95,6 +96,7 @@ files:
|
|
95
96
|
- mongoid-embedded-errors.gemspec
|
96
97
|
- spec/lib/mongoid/embedded_errors_spec.rb
|
97
98
|
- spec/spec_helper.rb
|
99
|
+
- spec/support/database_cleaner.rb
|
98
100
|
- spec/support/models/annotation.rb
|
99
101
|
- spec/support/models/article.rb
|
100
102
|
- spec/support/models/page.rb
|
@@ -104,7 +106,7 @@ homepage: https://github.com/glooko/mongoid-embedded-errors
|
|
104
106
|
licenses:
|
105
107
|
- MIT
|
106
108
|
metadata: {}
|
107
|
-
post_install_message:
|
109
|
+
post_install_message:
|
108
110
|
rdoc_options: []
|
109
111
|
require_paths:
|
110
112
|
- lib
|
@@ -119,13 +121,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
119
121
|
- !ruby/object:Gem::Version
|
120
122
|
version: '0'
|
121
123
|
requirements: []
|
122
|
-
rubygems_version: 3.1.
|
123
|
-
signing_key:
|
124
|
+
rubygems_version: 3.1.6
|
125
|
+
signing_key:
|
124
126
|
specification_version: 4
|
125
127
|
summary: Easily bubble up errors from embedded documents in Mongoid.
|
126
128
|
test_files:
|
127
129
|
- spec/lib/mongoid/embedded_errors_spec.rb
|
128
130
|
- spec/spec_helper.rb
|
131
|
+
- spec/support/database_cleaner.rb
|
129
132
|
- spec/support/models/annotation.rb
|
130
133
|
- spec/support/models/article.rb
|
131
134
|
- spec/support/models/page.rb
|