speedy-af 0.5.1 → 0.6.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/.circleci/config.yml +14 -22
- data/Gemfile +4 -0
- data/docker-compose.yml +3 -1
- data/lib/speedy_af/base.rb +4 -1
- data/lib/speedy_af/errors.rb +5 -0
- data/lib/speedy_af/version.rb +1 -1
- data/spec/fixture_classes.rb +2 -0
- data/spec/integration/base_spec.rb +14 -3
- data/speedy-af.gemspec +1 -0
- metadata +19 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: c72484eda4b8aab6cfd7f24213b6dcd6a3d1b726c59d106a2257d3932a7b7a10
|
|
4
|
+
data.tar.gz: 7fb4b39977497770a3bd35bff2a57ac8149ff1a233dc7f1594ea881eece9d9e1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 75fdd0cde86d2f9a7dc7ea821c03eb24011245a6af1a11d5cb52e246d4514ee33bbd502ab1146001ff25c81b3ff7e0773f1fce82ab20292b76f717d48183d382
|
|
7
|
+
data.tar.gz: 9b88e5a9d6a97e41610a950cb0bd57c981ad85577ca59fa31906f87c73ed2ac536acdfe914a426e56f9e9c5404e57c3e484288ed2c3dc0dfefe3f6e8a86dd4d4
|
data/.circleci/config.yml
CHANGED
|
@@ -37,31 +37,23 @@ jobs:
|
|
|
37
37
|
workflows:
|
|
38
38
|
ci:
|
|
39
39
|
jobs:
|
|
40
|
+
- bundle_and_test:
|
|
41
|
+
name: "ruby4-0_rails8-1"
|
|
42
|
+
ruby_version: "4.0.2"
|
|
43
|
+
rails_version: "8.1.3"
|
|
44
|
+
- bundle_and_test:
|
|
45
|
+
name: "ruby4-0_rails8-0"
|
|
46
|
+
ruby_version: "4.0.2"
|
|
47
|
+
rails_version: "8.0.5"
|
|
40
48
|
- bundle_and_test:
|
|
41
49
|
name: "ruby3-4_rails8-0"
|
|
42
|
-
ruby_version: "3.4.
|
|
43
|
-
rails_version: "8.0.
|
|
50
|
+
ruby_version: "3.4.9"
|
|
51
|
+
rails_version: "8.0.5"
|
|
44
52
|
- bundle_and_test:
|
|
45
53
|
name: "ruby3-3_rails8-0"
|
|
46
|
-
ruby_version: "3.3.
|
|
47
|
-
rails_version: "8.0.
|
|
54
|
+
ruby_version: "3.3.11"
|
|
55
|
+
rails_version: "8.0.5"
|
|
48
56
|
- bundle_and_test:
|
|
49
57
|
name: "ruby3-3_rails7-2"
|
|
50
|
-
ruby_version: "3.3.
|
|
51
|
-
rails_version: "7.2.1"
|
|
52
|
-
- bundle_and_test:
|
|
53
|
-
name: "ruby3-2_rails7-1"
|
|
54
|
-
ruby_version: "3.2.5"
|
|
55
|
-
rails_version: "7.1.4"
|
|
56
|
-
- bundle_and_test:
|
|
57
|
-
name: "ruby3-1_rails7-1"
|
|
58
|
-
ruby_version: "3.1.6"
|
|
59
|
-
rails_version: "7.1.4"
|
|
60
|
-
- bundle_and_test:
|
|
61
|
-
name: "ruby3-2_rails7-0"
|
|
62
|
-
ruby_version: "3.2.5"
|
|
63
|
-
rails_version: "7.0.8.4"
|
|
64
|
-
- bundle_and_test:
|
|
65
|
-
name: "ruby3-1_rails7-0"
|
|
66
|
-
ruby_version: "3.1.6"
|
|
67
|
-
rails_version: "7.0.8.4"
|
|
58
|
+
ruby_version: "3.3.11"
|
|
59
|
+
rails_version: "7.2.3.1"
|
data/Gemfile
CHANGED
|
@@ -6,3 +6,7 @@ gemspec
|
|
|
6
6
|
gem 'byebug'
|
|
7
7
|
gem 'pry-byebug' unless ENV['CI']
|
|
8
8
|
gem 'psych', '< 4' # pinned to less than 4 due to ActiveFedora not specifying this restriction
|
|
9
|
+
|
|
10
|
+
# Workaround faraday and rdf issue in CI and dev environments
|
|
11
|
+
gem 'faraday', '>= 2.9.2'
|
|
12
|
+
gem 'rdf', '>= 3.3.2'
|
data/docker-compose.yml
CHANGED
data/lib/speedy_af/base.rb
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
require 'ostruct'
|
|
3
|
+
require 'speedy_af/errors'
|
|
3
4
|
|
|
4
5
|
module SpeedyAF
|
|
5
6
|
class Base
|
|
@@ -42,7 +43,9 @@ module SpeedyAF
|
|
|
42
43
|
end
|
|
43
44
|
|
|
44
45
|
def find(id, opts = {})
|
|
45
|
-
where(%(id:"#{id}"), opts.merge(rows: 1)).first
|
|
46
|
+
result = where(%(id:"#{id}"), opts.merge(rows: 1)).first
|
|
47
|
+
raise SpeedyAF::ModelMismatch if self != result.class && self != SpeedyAF::Base
|
|
48
|
+
result
|
|
46
49
|
end
|
|
47
50
|
|
|
48
51
|
def where(query, opts = {})
|
data/lib/speedy_af/version.rb
CHANGED
data/spec/fixture_classes.rb
CHANGED
|
@@ -62,9 +62,20 @@ describe SpeedyAF::Base do
|
|
|
62
62
|
expect { book_presenter.fthagn }.to raise_error(NoMethodError)
|
|
63
63
|
end
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
context '.find' do
|
|
66
|
+
it 'locates the correct presenter' do
|
|
67
|
+
expect(book_presenter).to be_a(described_class)
|
|
68
|
+
expect(book_presenter.publisher).to eq(book.publisher)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
context 'proxy subclass' do
|
|
72
|
+
it 'does not raise error for matching model' do
|
|
73
|
+
expect { SpeedyAF::Proxy::Book.find(book.id) }.to_not raise_error
|
|
74
|
+
end
|
|
75
|
+
it 'raises error for mismatched model' do
|
|
76
|
+
expect { SpeedyAF::Proxy::Book.find(comic.id) }.to raise_error(SpeedyAF::ModelMismatch)
|
|
77
|
+
end
|
|
78
|
+
end
|
|
68
79
|
end
|
|
69
80
|
|
|
70
81
|
it '.where' do
|
data/speedy-af.gemspec
CHANGED
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: speedy-af
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.6.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Michael B. Klein
|
|
8
8
|
bindir: bin
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
12
|
- !ruby/object:Gem::Dependency
|
|
13
13
|
name: active-fedora
|
|
@@ -177,14 +177,28 @@ dependencies:
|
|
|
177
177
|
- - ">="
|
|
178
178
|
- !ruby/object:Gem::Version
|
|
179
179
|
version: '0'
|
|
180
|
+
- !ruby/object:Gem::Dependency
|
|
181
|
+
name: benchmark
|
|
182
|
+
requirement: !ruby/object:Gem::Requirement
|
|
183
|
+
requirements:
|
|
184
|
+
- - ">="
|
|
185
|
+
- !ruby/object:Gem::Version
|
|
186
|
+
version: '0'
|
|
187
|
+
type: :development
|
|
188
|
+
prerelease: false
|
|
189
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
190
|
+
requirements:
|
|
191
|
+
- - ">="
|
|
192
|
+
- !ruby/object:Gem::Version
|
|
193
|
+
version: '0'
|
|
180
194
|
description: Performance enhancements for ActiveFedora
|
|
181
195
|
email: mbklein@gmail.com
|
|
182
196
|
executables: []
|
|
183
197
|
extensions: []
|
|
184
198
|
extra_rdoc_files:
|
|
185
199
|
- CONTRIBUTING.md
|
|
186
|
-
- README.md
|
|
187
200
|
- LICENSE
|
|
201
|
+
- README.md
|
|
188
202
|
files:
|
|
189
203
|
- ".circleci/config.yml"
|
|
190
204
|
- ".gitignore"
|
|
@@ -199,6 +213,7 @@ files:
|
|
|
199
213
|
- lib/speedy-af.rb
|
|
200
214
|
- lib/speedy_af.rb
|
|
201
215
|
- lib/speedy_af/base.rb
|
|
216
|
+
- lib/speedy_af/errors.rb
|
|
202
217
|
- lib/speedy_af/indexed_content.rb
|
|
203
218
|
- lib/speedy_af/ordered_aggregation_index.rb
|
|
204
219
|
- lib/speedy_af/version.rb
|
|
@@ -241,7 +256,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
241
256
|
- !ruby/object:Gem::Version
|
|
242
257
|
version: '0'
|
|
243
258
|
requirements: []
|
|
244
|
-
rubygems_version:
|
|
259
|
+
rubygems_version: 4.0.3
|
|
245
260
|
specification_version: 4
|
|
246
261
|
summary: Performance enhancements for ActiveFedora
|
|
247
262
|
test_files: []
|