blacklight_dynamic_sitemap 0.5.0 → 1.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/.github/workflows/ruby.yml +15 -13
- data/.solr_wrapper +1 -0
- data/Gemfile +11 -10
- data/app/models/blacklight_dynamic_sitemap/sitemap.rb +5 -9
- data/blacklight_dynamic_sitemap.gemspec +2 -5
- data/lib/blacklight_dynamic_sitemap/engine.rb +8 -0
- data/lib/blacklight_dynamic_sitemap/version.rb +1 -1
- data/solr/conf/schema.xml +3 -3
- data/solr/conf/solrconfig.xml +1 -0
- metadata +12 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 19e5252f0d82795d55dee6783ecc266b9928a275add5b657d1f7e233e7ac14c3
|
4
|
+
data.tar.gz: 007c0fb399604348dfa31bcf588047add2a21d8ddce6a9c199bfb436febff3ba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4b9dac19bd9feb82176eb1a900fa73d645eeb8b611e1f0f0aeb4927251b24a72858e435ccc6e82eb666ed46758d78857e9fca21f97f23b49412f7d538046fea1
|
7
|
+
data.tar.gz: eacd8eb93ab81964d4ab2dc42e2d883957a45cefc8a658259498a6cb9dd8ccf15b3132aa3eb2a721157cf5e596486a9b95ca454259c05f42e15ba05c3824b6b5
|
data/.github/workflows/ruby.yml
CHANGED
@@ -12,26 +12,28 @@ jobs:
|
|
12
12
|
strategy:
|
13
13
|
fail-fast: false
|
14
14
|
matrix:
|
15
|
-
|
16
|
-
|
15
|
+
blacklight_version: ['~> 8.0']
|
16
|
+
ruby_version: ['2.7', '3.0', '3.1']
|
17
|
+
rails_version: ['7.0.7.2']
|
18
|
+
include:
|
19
|
+
- ruby_version: '3.1'
|
20
|
+
rails_version: '7.0.7.2'
|
21
|
+
blacklight_version: '~> 7.0'
|
22
|
+
name: test (blacklight ${{ matrix.blacklight_version }} / ruby ${{ matrix.ruby_version }} / rails ${{ matrix.rails_version }})
|
23
|
+
env:
|
24
|
+
RAILS_VERSION: ${{ matrix.rails_version }}
|
25
|
+
BLACKLIGHT_VERSION: ${{ matrix.blacklight_version }}
|
26
|
+
ENGINE_CART_RAILS_OPTIONS: '--skip-git --skip-listen --skip-spring --skip-keeps --skip-action-cable --skip-coffee --skip-test'
|
17
27
|
runs-on: ubuntu-latest
|
18
28
|
steps:
|
19
29
|
- uses: actions/checkout@v2
|
20
30
|
- name: Set up Ruby
|
21
31
|
uses: ruby/setup-ruby@v1
|
22
32
|
with:
|
23
|
-
ruby-version:
|
24
|
-
- uses: actions/cache@v2
|
25
|
-
with:
|
26
|
-
path: vendor/bundle
|
27
|
-
key: ${{ runner.os }}-gems20210506-${{ hashFiles('**/Gemfile.lock') }}
|
28
|
-
restore-keys: |
|
29
|
-
${{ runner.os }}-gems20210506-
|
33
|
+
ruby-version: ${{ matrix.ruby_version }}
|
30
34
|
- name: Bundle install
|
31
35
|
env:
|
32
|
-
RAILS_VERSION: ${{ matrix.
|
33
|
-
run:
|
34
|
-
bundle config path vendor/bundle
|
35
|
-
bundle install
|
36
|
+
RAILS_VERSION: ${{ matrix.rails_version }}
|
37
|
+
run: bundle install
|
36
38
|
- name: Run tests
|
37
39
|
run: bundle exec rake
|
data/.solr_wrapper
CHANGED
data/Gemfile
CHANGED
@@ -4,8 +4,8 @@ source 'https://rubygems.org'
|
|
4
4
|
gemspec
|
5
5
|
|
6
6
|
# BEGIN ENGINE_CART BLOCK
|
7
|
-
# engine_cart: 2.
|
8
|
-
# engine_cart stanza:
|
7
|
+
# engine_cart: 2.4.0
|
8
|
+
# engine_cart stanza: 2.5.0
|
9
9
|
# the below comes from engine_cart, a gem used to test this Rails engine gem in the context of a Rails app.
|
10
10
|
file = File.expand_path('Gemfile', ENV['ENGINE_CART_DESTINATION'] || ENV['RAILS_ROOT'] || File.expand_path('.internal_test_app', File.dirname(__FILE__)))
|
11
11
|
if File.exist?(file)
|
@@ -25,15 +25,16 @@ else
|
|
25
25
|
else
|
26
26
|
gem 'rails', ENV['RAILS_VERSION']
|
27
27
|
end
|
28
|
-
end
|
29
28
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
29
|
+
case ENV['RAILS_VERSION']
|
30
|
+
when /^6.0/
|
31
|
+
gem 'sass-rails', '>= 6'
|
32
|
+
gem 'webpacker', '~> 4.0'
|
33
|
+
when /^5.[12]/
|
34
|
+
gem 'sass-rails', '~> 5.0'
|
35
|
+
gem 'sprockets', '~> 3.7'
|
36
|
+
gem 'thor', '~> 0.20'
|
37
|
+
end
|
37
38
|
end
|
38
39
|
end
|
39
40
|
# END ENGINE_CART BLOCK
|
@@ -4,22 +4,18 @@ module BlacklightDynamicSitemap
|
|
4
4
|
##
|
5
5
|
#
|
6
6
|
class Sitemap
|
7
|
-
delegate :hashed_id_field, :unique_id_field, :last_modified_field, to: :engine_config
|
7
|
+
delegate :solr_endpoint, :hashed_id_field, :unique_id_field, :last_modified_field, to: :engine_config
|
8
8
|
|
9
9
|
def get(id)
|
10
10
|
# if someone's hacking URLs (in ways that could potentially generate enormous requests),
|
11
11
|
# just return an empty response
|
12
12
|
return [] if id.length != exponent
|
13
13
|
|
14
|
-
index_connection.
|
15
|
-
params: show_params(id, {
|
16
|
-
q: '*:*',
|
14
|
+
index_connection.public_send(solr_endpoint,
|
15
|
+
params: show_params(id, engine_config.default_params.merge({
|
17
16
|
fq: ["{!prefix f=#{hashed_id_field} v=#{id}}"],
|
18
|
-
fl: [unique_id_field, last_modified_field].join(',')
|
19
|
-
|
20
|
-
facet: false,
|
21
|
-
defType: 'lucene'
|
22
|
-
})
|
17
|
+
fl: [unique_id_field, last_modified_field].join(',')
|
18
|
+
}))
|
23
19
|
).dig('response', 'docs')
|
24
20
|
end
|
25
21
|
|
@@ -24,11 +24,8 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
25
25
|
spec.require_paths = ['lib']
|
26
26
|
|
27
|
-
|
28
|
-
|
29
|
-
# threshold would be arbitrary.
|
30
|
-
spec.add_dependency 'rails', '<= 6.2'
|
31
|
-
spec.add_dependency 'blacklight', '> 6.0'
|
27
|
+
spec.add_dependency 'rails'
|
28
|
+
spec.add_dependency 'blacklight', '> 7.0'
|
32
29
|
|
33
30
|
spec.add_development_dependency 'capybara'
|
34
31
|
spec.add_development_dependency 'engine_cart', '~> 2.0'
|
@@ -3,6 +3,14 @@
|
|
3
3
|
module BlacklightDynamicSitemap
|
4
4
|
class Engine < ::Rails::Engine
|
5
5
|
isolate_namespace BlacklightDynamicSitemap
|
6
|
+
config.default_params = {
|
7
|
+
q: '*:*',
|
8
|
+
rows: 2_000_000, # Ensure that we do not page this result
|
9
|
+
facet: false,
|
10
|
+
defType: 'lucene',
|
11
|
+
sort: 'id asc'
|
12
|
+
}
|
13
|
+
config.solr_endpoint = :select
|
6
14
|
config.max_documents_expiration = 1.day
|
7
15
|
config.minimum_average_chunk = 10_000
|
8
16
|
config.hashed_id_field = 'hashed_id_ssi'
|
data/solr/conf/schema.xml
CHANGED
@@ -7,10 +7,10 @@
|
|
7
7
|
<uniqueKey>id</uniqueKey>
|
8
8
|
|
9
9
|
<fields>
|
10
|
-
<field name="id" type="string" stored="true" indexed="true" multiValued="false" required="true"/>
|
10
|
+
<field name="id" type="string" stored="true" indexed="true" multiValued="false" required="true" docValues="true" />
|
11
11
|
<field name="format" type="string" stored="true" indexed="true" multiValued="true" />
|
12
12
|
<field name="_version_" type="long" indexed="true" stored="true"/>
|
13
|
-
<field name="timestamp" type="date" indexed="true" stored="true" default="NOW" multiValued="false"/>
|
13
|
+
<field name="timestamp" type="date" indexed="true" stored="true" default="NOW" multiValued="false" docValues="true" />
|
14
14
|
|
15
15
|
<field name="lat" type="tdouble" stored="true" indexed="true" multiValued="false"/>
|
16
16
|
<field name="lng" type="tdouble" stored="true" indexed="true" multiValued="false"/>
|
@@ -55,7 +55,7 @@
|
|
55
55
|
|
56
56
|
<dynamicField name="*_ss" type="string" stored="true" indexed="false" multiValued="false"/>
|
57
57
|
<dynamicField name="*_ssm" type="string" stored="true" indexed="false" multiValued="true"/>
|
58
|
-
<dynamicField name="*_ssi" type="string" stored="true" indexed="true" multiValued="false"/>
|
58
|
+
<dynamicField name="*_ssi" type="string" stored="true" indexed="true" multiValued="false" docValues="true" />
|
59
59
|
<dynamicField name="*_ssim" type="string" stored="true" indexed="true" multiValued="true"/>
|
60
60
|
|
61
61
|
<dynamicField name="*_ssort" type="alphaSort" stored="false" indexed="true" multiValued="false"/>
|
data/solr/conf/solrconfig.xml
CHANGED
@@ -31,6 +31,7 @@
|
|
31
31
|
|
32
32
|
<!-- solr lib dirs -->
|
33
33
|
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lib" />
|
34
|
+
<lib dir="${solr.install.dir:../../../..}/modules/analysis-extras/lib" />
|
34
35
|
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lucene-libs" />
|
35
36
|
|
36
37
|
<dataDir>${solr.data.dir:}</dataDir>
|
metadata
CHANGED
@@ -1,43 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blacklight_dynamic_sitemap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jack Reed
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-09-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: blacklight
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '7.0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '7.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: capybara
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -158,7 +158,7 @@ licenses:
|
|
158
158
|
metadata:
|
159
159
|
homepage_uri: https://github.com/sul-dlss/blacklight_dynamic_sitemap
|
160
160
|
source_code_uri: https://github.com/sul-dlss/blacklight_dynamic_sitemap
|
161
|
-
post_install_message:
|
161
|
+
post_install_message:
|
162
162
|
rdoc_options: []
|
163
163
|
require_paths:
|
164
164
|
- lib
|
@@ -173,8 +173,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
173
173
|
- !ruby/object:Gem::Version
|
174
174
|
version: '0'
|
175
175
|
requirements: []
|
176
|
-
rubygems_version: 3.
|
177
|
-
signing_key:
|
176
|
+
rubygems_version: 3.4.10
|
177
|
+
signing_key:
|
178
178
|
specification_version: 4
|
179
179
|
summary: Dynamic sitemap.xml for BLacklight
|
180
180
|
test_files: []
|