valkyrie 2.0.0 → 2.1.2
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 +60 -56
- data/.lando.yml +40 -0
- data/.rubocop.yml +4 -1
- data/.tool-versions +1 -1
- data/Appraisals +4 -4
- data/CHANGELOG.md +136 -0
- data/README.md +21 -49
- data/Rakefile +21 -20
- data/db/config.yml +3 -10
- data/db/schema.rb +0 -40
- data/gemfiles/activerecord_5_2.gemfile +2 -0
- data/gemfiles/{activerecord_5_1.gemfile → activerecord_6_0.gemfile} +3 -1
- data/lib/generators/valkyrie/resource_generator.rb +3 -3
- data/lib/valkyrie.rb +33 -15
- data/lib/valkyrie/change_set.rb +3 -3
- data/lib/valkyrie/id.rb +26 -3
- data/lib/valkyrie/indexers/access_controls_indexer.rb +17 -17
- data/lib/valkyrie/logging.rb +72 -0
- data/lib/valkyrie/persistence/composite_persister.rb +1 -1
- data/lib/valkyrie/persistence/fedora.rb +2 -0
- data/lib/valkyrie/persistence/fedora/list_node.rb +46 -49
- data/lib/valkyrie/persistence/fedora/metadata_adapter.rb +2 -2
- data/lib/valkyrie/persistence/fedora/ordered_list.rb +90 -90
- data/lib/valkyrie/persistence/fedora/ordered_reader.rb +5 -5
- data/lib/valkyrie/persistence/fedora/permissive_schema.rb +3 -3
- data/lib/valkyrie/persistence/fedora/persister.rb +82 -83
- data/lib/valkyrie/persistence/fedora/persister/model_converter.rb +16 -17
- data/lib/valkyrie/persistence/fedora/persister/orm_converter.rb +38 -18
- data/lib/valkyrie/persistence/fedora/query_service.rb +54 -53
- data/lib/valkyrie/persistence/memory/persister.rb +33 -33
- data/lib/valkyrie/persistence/memory/query_service.rb +52 -34
- data/lib/valkyrie/persistence/postgres/orm_converter.rb +52 -52
- data/lib/valkyrie/persistence/postgres/query_service.rb +86 -33
- data/lib/valkyrie/persistence/postgres/resource_converter.rb +1 -1
- data/lib/valkyrie/persistence/shared/json_value_mapper.rb +4 -2
- data/lib/valkyrie/persistence/solr/model_converter.rb +337 -337
- data/lib/valkyrie/persistence/solr/orm_converter.rb +3 -3
- data/lib/valkyrie/persistence/solr/persister.rb +4 -17
- data/lib/valkyrie/persistence/solr/queries/find_all_query.rb +6 -0
- data/lib/valkyrie/persistence/solr/queries/find_members_query.rb +1 -1
- data/lib/valkyrie/persistence/solr/query_service.rb +42 -53
- data/lib/valkyrie/persistence/solr/repository.rb +2 -1
- data/lib/valkyrie/rdf_patches.rb +2 -2
- data/lib/valkyrie/resource.rb +36 -5
- data/lib/valkyrie/specs/shared_specs/change_set.rb +1 -1
- data/lib/valkyrie/specs/shared_specs/persister.rb +17 -6
- data/lib/valkyrie/specs/shared_specs/queries.rb +112 -9
- data/lib/valkyrie/storage/fedora.rb +17 -17
- data/lib/valkyrie/storage_adapter.rb +16 -13
- data/lib/valkyrie/types.rb +3 -1
- data/lib/valkyrie/version.rb +1 -1
- data/solr/config/solrconfig.xml +0 -10
- data/tasks/dev.rake +14 -51
- data/valkyrie.gemspec +4 -4
- metadata +40 -37
- data/.docker-stack/valkyrie-development/docker-compose.yml +0 -53
- data/.docker-stack/valkyrie-test/docker-compose.yml +0 -53
- data/db/seeds.rb +0 -8
- data/tasks/docker.rake +0 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2d82ceafa985dc327a594ad39da9f4feb343579e6330ae7f30a6fd7894471083
|
4
|
+
data.tar.gz: 56f54340890de9a799588b47eb4fb3ee6f400d598db03c7bf97d4163d128d831
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2676a955ae6333f4c9b82a4f2a0e131bb235e4cdef8b05951bdfb787ac1218a9e2da410a476928482824b909a12ade0f2d6e2074915c3738922ca4f3a8004337
|
7
|
+
data.tar.gz: 67a8b919a2ce033240db9d8b507140f84a8c49edfbf7283f205a41a7a09d2ba99940e5c465f0959cc27ce707e52d68b5e2d04a0f67376f482ae560c4713608ee
|
data/.circleci/config.yml
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
version: 2.1
|
3
3
|
jobs:
|
4
4
|
build:
|
5
|
-
machine: true
|
6
5
|
parameters:
|
7
6
|
gemfile:
|
8
7
|
description: "Gemfile to run"
|
@@ -10,34 +9,44 @@ jobs:
|
|
10
9
|
type: "string"
|
11
10
|
ruby:
|
12
11
|
description: "Ruby version"
|
13
|
-
default: "2.6.
|
12
|
+
default: "2.6.5"
|
14
13
|
type: "string"
|
14
|
+
docker:
|
15
|
+
- image: circleci/ruby:<< parameters.ruby >>-node-browsers
|
16
|
+
environment:
|
17
|
+
RAILS_ENV: test
|
18
|
+
- image: postgres:10.6-alpine
|
19
|
+
environment:
|
20
|
+
POSTGRES_USER: postgres
|
21
|
+
POSTGRES_DB: Valkyrie_gem_test
|
22
|
+
POSTGRES_HOST_AUTH_METHOD: trust
|
23
|
+
- image: samvera/fcrepo4:4.7.5
|
24
|
+
environment:
|
25
|
+
CATALINA_OPTS: "-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC"
|
26
|
+
JAVA_OPTIONS: "-Djetty.http.port=8988"
|
27
|
+
- image: samvera/fcrepo4:5.1.0
|
28
|
+
environment:
|
29
|
+
CATALINA_OPTS: "-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC"
|
30
|
+
JAVA_OPTIONS: "-Djetty.http.port=8998 -Dfcrepo.dynamic.jms.port=61618 -Dfcrepo.dynamic.stomp.port=61614"
|
31
|
+
- image: solr:7.7-alpine
|
32
|
+
command: bin/solr -cloud -noprompt -f -p 8994
|
15
33
|
environment:
|
16
34
|
BUNDLE_GEMFILE: << parameters.gemfile >>
|
35
|
+
POSTGRES_PORT: 5432
|
17
36
|
steps:
|
18
37
|
- checkout
|
19
38
|
- run:
|
20
|
-
name:
|
21
|
-
command:
|
22
|
-
rvm install << parameters.ruby >>
|
23
|
-
echo . $(rvm << parameters.ruby >> do rvm env --path) >> $BASH_ENV
|
24
|
-
- run:
|
25
|
-
shell: /bin/bash -l
|
26
|
-
name: Uninstall global Bundler
|
27
|
-
command: |
|
28
|
-
rvm use << parameters.ruby >>
|
29
|
-
rvm gemset use global
|
30
|
-
gem uninstall bundler -x
|
31
|
-
echo Uninstalled
|
39
|
+
name: Wait for solr
|
40
|
+
command: dockerize -wait tcp://localhost:8994 -timeout 1m
|
32
41
|
- run:
|
33
|
-
name:
|
42
|
+
name: Load config into solr
|
34
43
|
command: |
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
44
|
+
cd solr/config
|
45
|
+
zip -1 -r solr_config.zip ./*
|
46
|
+
curl -H "Content-type:application/octet-stream" --data-binary @solr_config.zip "http://localhost:8994/solr/admin/configs?action=UPLOAD&name=valkyrie"
|
47
|
+
curl -H 'Content-type: application/json' http://localhost:8994/api/collections/ -d '{create: {name: valkyrie-core-test, config: valkyrie, numShards: 1}}'
|
48
|
+
# Install Bundler
|
49
|
+
- run: gem install bundler -v '~> 2.0'
|
41
50
|
- restore_cache:
|
42
51
|
keys:
|
43
52
|
- bundle-{{ checksum "<< parameters.gemfile >>" }}-{{ checksum "valkyrie.gemspec" }}-<< parameters.ruby >>-6
|
@@ -57,9 +66,12 @@ jobs:
|
|
57
66
|
- run:
|
58
67
|
name: Run Rubocop
|
59
68
|
command: bundle exec rake rubocop
|
69
|
+
- run:
|
70
|
+
name: Set up database
|
71
|
+
command: bundle exec rake db:migrate
|
60
72
|
- run:
|
61
73
|
name: Run Specs
|
62
|
-
command: bundle exec
|
74
|
+
command: bundle exec rspec spec
|
63
75
|
- store_artifacts:
|
64
76
|
path: coverage
|
65
77
|
destination: coverage
|
@@ -68,29 +80,25 @@ workflows:
|
|
68
80
|
build:
|
69
81
|
jobs:
|
70
82
|
- build:
|
71
|
-
gemfile: "gemfiles/
|
72
|
-
ruby: 2.
|
73
|
-
name: "Ruby2-
|
83
|
+
gemfile: "gemfiles/activerecord_6_0.gemfile"
|
84
|
+
ruby: 2.7.0
|
85
|
+
name: "Ruby2-7_Rails6-0"
|
74
86
|
- build:
|
75
|
-
gemfile: "gemfiles/
|
76
|
-
ruby: 2.6.
|
77
|
-
name: "Ruby2-
|
87
|
+
gemfile: "gemfiles/activerecord_6_0.gemfile"
|
88
|
+
ruby: 2.6.5
|
89
|
+
name: "Ruby2-6_Rails6-0"
|
78
90
|
- build:
|
79
91
|
gemfile: "gemfiles/activerecord_5_2.gemfile"
|
80
|
-
ruby: 2.
|
81
|
-
name: "Ruby2-
|
82
|
-
- build:
|
83
|
-
gemfile: "gemfiles/activerecord_5_1.gemfile"
|
84
|
-
ruby: 2.5.5
|
85
|
-
name: "Ruby2-5_Rails5-1"
|
92
|
+
ruby: 2.7.0
|
93
|
+
name: "Ruby2-7_Rails5-2"
|
86
94
|
- build:
|
87
95
|
gemfile: "gemfiles/activerecord_5_2.gemfile"
|
88
|
-
ruby: 2.
|
89
|
-
name: "Ruby2-
|
96
|
+
ruby: 2.6.5
|
97
|
+
name: "Ruby2-6_Rails5-2"
|
90
98
|
- build:
|
91
|
-
gemfile: "gemfiles/
|
92
|
-
ruby: 2.
|
93
|
-
name: "Ruby2-
|
99
|
+
gemfile: "gemfiles/activerecord_5_2.gemfile"
|
100
|
+
ruby: 2.5.7
|
101
|
+
name: "Ruby2-5_Rails5-2"
|
94
102
|
nightly:
|
95
103
|
triggers:
|
96
104
|
- schedule:
|
@@ -101,26 +109,22 @@ workflows:
|
|
101
109
|
- master
|
102
110
|
jobs:
|
103
111
|
- build:
|
104
|
-
gemfile: "gemfiles/
|
105
|
-
ruby: 2.
|
106
|
-
name: "Ruby2-
|
112
|
+
gemfile: "gemfiles/activerecord_6_0.gemfile"
|
113
|
+
ruby: 2.7.0
|
114
|
+
name: "Ruby2-7_Rails6-0"
|
107
115
|
- build:
|
108
|
-
gemfile: "gemfiles/
|
109
|
-
ruby: 2.6.
|
110
|
-
name: "Ruby2-
|
116
|
+
gemfile: "gemfiles/activerecord_6_0.gemfile"
|
117
|
+
ruby: 2.6.5
|
118
|
+
name: "Ruby2-6_Rails6-0"
|
111
119
|
- build:
|
112
120
|
gemfile: "gemfiles/activerecord_5_2.gemfile"
|
113
|
-
ruby: 2.
|
114
|
-
name: "Ruby2-
|
115
|
-
- build:
|
116
|
-
gemfile: "gemfiles/activerecord_5_1.gemfile"
|
117
|
-
ruby: 2.5.5
|
118
|
-
name: "Ruby2-5_Rails5-1"
|
121
|
+
ruby: 2.7.0
|
122
|
+
name: "Ruby2-7_Rails5-2"
|
119
123
|
- build:
|
120
124
|
gemfile: "gemfiles/activerecord_5_2.gemfile"
|
121
|
-
ruby: 2.
|
122
|
-
name: "Ruby2-
|
125
|
+
ruby: 2.6.5
|
126
|
+
name: "Ruby2-6_Rails5-2"
|
123
127
|
- build:
|
124
|
-
gemfile: "gemfiles/
|
125
|
-
ruby: 2.
|
126
|
-
name: "Ruby2-
|
128
|
+
gemfile: "gemfiles/activerecord_5_2.gemfile"
|
129
|
+
ruby: 2.5.7
|
130
|
+
name: "Ruby2-5_Rails5-2"
|
data/.lando.yml
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
name: valkyrie
|
2
|
+
app_mount: false
|
3
|
+
services:
|
4
|
+
valkyrie_test_solr_7:
|
5
|
+
app_mount: false
|
6
|
+
type: solr:7
|
7
|
+
portforward: 8994
|
8
|
+
core: valkyrie-core-test
|
9
|
+
config:
|
10
|
+
dir: solr/config
|
11
|
+
valkyrie_database:
|
12
|
+
app_mount: false
|
13
|
+
type: postgres:10
|
14
|
+
portforward: 5433
|
15
|
+
valkyrie_fedora_4:
|
16
|
+
type: compose
|
17
|
+
app_mount: false
|
18
|
+
volumes:
|
19
|
+
fedora4:
|
20
|
+
services:
|
21
|
+
image: samvera/fcrepo4:4.7.5
|
22
|
+
command: /fedora-entrypoint.sh
|
23
|
+
volumes:
|
24
|
+
- fedora4:/data
|
25
|
+
ports:
|
26
|
+
- 8988:8080
|
27
|
+
portforward: true
|
28
|
+
valkyrie_fedora_5:
|
29
|
+
type: compose
|
30
|
+
app_mount: false
|
31
|
+
volumes:
|
32
|
+
fedora5:
|
33
|
+
services:
|
34
|
+
image: samvera/fcrepo4:5.1.0
|
35
|
+
command: /fedora-entrypoint.sh
|
36
|
+
volumes:
|
37
|
+
- fedora5:/data
|
38
|
+
ports:
|
39
|
+
- 8998:8080
|
40
|
+
portforward: true
|
data/.rubocop.yml
CHANGED
@@ -4,7 +4,6 @@ inherit_gem:
|
|
4
4
|
bixby: bixby_default.yml
|
5
5
|
AllCops:
|
6
6
|
DisplayCopNames: true
|
7
|
-
TargetRubyVersion: 2.3
|
8
7
|
Exclude:
|
9
8
|
- 'bin/*'
|
10
9
|
- 'db/schema.rb'
|
@@ -26,6 +25,10 @@ RSpec/MultipleExpectations:
|
|
26
25
|
Enabled: false
|
27
26
|
Rails/TimeZone:
|
28
27
|
Enabled: false
|
28
|
+
Rails/RakeEnvironment:
|
29
|
+
Enabled: false
|
30
|
+
Rails/ApplicationRecord:
|
31
|
+
Enabled: false
|
29
32
|
Naming/PredicateName:
|
30
33
|
Exclude:
|
31
34
|
- "lib/valkyrie/resource.rb"
|
data/.tool-versions
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby 2.
|
1
|
+
ruby 2.6.6
|
data/Appraisals
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
appraise "activerecord-
|
3
|
-
gem "activerecord", "~>
|
2
|
+
appraise "activerecord-6-0" do
|
3
|
+
gem "activerecord", "~> 6.0.0"
|
4
4
|
end
|
5
5
|
|
6
|
-
appraise "activerecord-5-
|
7
|
-
gem "activerecord", "~> 5.
|
6
|
+
appraise "activerecord-5-2" do
|
7
|
+
gem "activerecord", "~> 5.2.0"
|
8
8
|
end
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,139 @@
|
|
1
|
+
# v2.1.2 2020-03-12
|
2
|
+
|
3
|
+
## Changes since last release
|
4
|
+
|
5
|
+
* Tighten reform dependency
|
6
|
+
[tpendragon](https://github.com/tpendragon)
|
7
|
+
* Loosen RDF Dependency
|
8
|
+
[no-reply](https://github.com/no-reply)
|
9
|
+
* Update development ruby version in .tool-versions
|
10
|
+
[hackartisan](https://github.com/hackartisan)
|
11
|
+
* Use Lando for development
|
12
|
+
[tpendragon](https://github.com/tpendragon)
|
13
|
+
* Deprecate Blacklist in favor of Denylist.
|
14
|
+
[jeremyf](https://github.com/jeremyf)
|
15
|
+
* Make DateTime handling in Fedora/Solr persisters consistent with others.
|
16
|
+
[hcayless](https://github.com/hcayless)
|
17
|
+
* Add open-ended Rake support.
|
18
|
+
[no-reply](https://github.com/no-reply)
|
19
|
+
|
20
|
+
Additional thanks to the following for code review and issue reports leading to
|
21
|
+
this release:
|
22
|
+
|
23
|
+
[cjcolvar](https://github.com/cjcolvar)
|
24
|
+
[escowles](https://github.com/escowles)
|
25
|
+
[jeremyf](https://github.com/jeremyf)
|
26
|
+
|
27
|
+
# v2.1.1 2020-03-12
|
28
|
+
|
29
|
+
## Changes since last release
|
30
|
+
|
31
|
+
* Add Ruby 2.7 support.
|
32
|
+
[tpendragon](https://github.com/tpendragon)
|
33
|
+
* Make ID & String equality symmetrical
|
34
|
+
[no-reply](https://github.com/no-reply)
|
35
|
+
|
36
|
+
Additional thanks to the following for code review and issue reports leading to
|
37
|
+
this release:
|
38
|
+
|
39
|
+
[cjcolvar](https://github.com/cjcolvar)
|
40
|
+
[escowles](https://github.com/escowles)
|
41
|
+
[jeremyf](https://github.com/jeremyf)
|
42
|
+
|
43
|
+
# v2.1.0 2020-01-09
|
44
|
+
|
45
|
+
## Changes since last release
|
46
|
+
|
47
|
+
* Use `::` prefixed names for `JSON::LD` references.
|
48
|
+
[no-reply](https://github.com/no-reply)
|
49
|
+
* Use SVG instead of PNG for version badge.
|
50
|
+
[hackmastera](https://github.com/hackmastera)
|
51
|
+
* Fix Rubocop for latest Bixby.
|
52
|
+
[hackmastera](https://github.com/hackmastera)
|
53
|
+
* Valkyrie IDs equal string equivalent of ID to String with config
|
54
|
+
[jlevnhv](https://github.com/jlevnhv)
|
55
|
+
* Add optional model parameter to find_inverse_references_by and
|
56
|
+
find_references_by
|
57
|
+
[elrayle](https://github.com/elrayle)
|
58
|
+
[laritakr](https://github.com/laritakr)
|
59
|
+
* Add parity in schema.key lookup for `ordered_attribute?`
|
60
|
+
[jeremyf](https://github.com/jeremyf)
|
61
|
+
* Order member_ids when using schema-style attributes method.
|
62
|
+
[no-reply](https://github.com/no-reply)
|
63
|
+
* Use DEFAULT_FEDORA_VERSION constant for Fedora adapter.
|
64
|
+
[no-reply](https://github.com/no-reply)
|
65
|
+
* Stop testing ActiveRecord 5.1
|
66
|
+
[scherztc](https://github.com/scherztc)
|
67
|
+
* Rename ListNode#target_uri to ListNode#target
|
68
|
+
[mbklein](https://github.com/mbklein)
|
69
|
+
* Document that Solr Persister is intended to be used as a secondary persister.
|
70
|
+
[hweng](https://github.com/hweng)
|
71
|
+
* Remove unused database tables from schema.rb
|
72
|
+
[scherztc](https://github.com/scherztc)
|
73
|
+
* Alternate Identifier documentation
|
74
|
+
[escowles](https://github.com/escowles)
|
75
|
+
* Remove suggest component in example Solr Config
|
76
|
+
[hweng](https://github.com/hweng)
|
77
|
+
* Remove unused db/seeds.rb
|
78
|
+
[scherztc](https://github.com/scherztc)
|
79
|
+
* Replace YARD Doc for Solr adapter with references to Memory Adapter.
|
80
|
+
[afred](https://github.com/afred)
|
81
|
+
* Refactor shadowed variable in buffered persister spec.
|
82
|
+
[jeremyf](https://github.com/jeremyf)
|
83
|
+
* Use example.com instead of made-up URLs
|
84
|
+
[escowles](https://github.com/escowles)
|
85
|
+
* Add count_all_of_model query
|
86
|
+
[christinach](https://github.com/christinach)
|
87
|
+
[blancoj](https://github.com/blancoj)
|
88
|
+
* Raise an error when unable to find a StorageAdapter
|
89
|
+
[bkiahstroud](https://github.com/bkiahstroud)
|
90
|
+
[FCRodriguez7](https://github.com/FCRodriguez7)
|
91
|
+
[kcompsci](https://github.com/kcompsci)
|
92
|
+
* Allow find_inverse_reference_by property to be either ordered or not.
|
93
|
+
[elrayle](https://github.com/elrayle)
|
94
|
+
* Randomized spec order
|
95
|
+
[jeremyf](https://github.com/jeremyf)
|
96
|
+
* Allow Valkyrie logging to be tagged with a context and suppressed.
|
97
|
+
[jeremyf](https://github.com/jeremyf)
|
98
|
+
* Fix documentation for Valkyrie::Persister::Memory being disassociated.
|
99
|
+
[jeremyf](https://github.com/jeremyf)
|
100
|
+
* Suppress Solr warnings in tests.
|
101
|
+
[jeremyf](https://github.com/jeremyf)
|
102
|
+
* Add `Valkyrie::Types::Relation` and `Valkyrie::Types::OrderedRelation`
|
103
|
+
[luisgreg99](https://github.com/luisgreg99)
|
104
|
+
[lsat12357](https://github.com/lsat12357)
|
105
|
+
[foglabs](https://github.com/foglabs)
|
106
|
+
[dgcliff](https://github.com/dgcliff)
|
107
|
+
|
108
|
+
# v2.0.2 2019-10-17
|
109
|
+
|
110
|
+
## Changes since last release
|
111
|
+
|
112
|
+
* Fix nil not persisting with the ActiveRecord adapter.
|
113
|
+
[tpendragon](https://github.com/tpendragon)
|
114
|
+
* Define setters when building a Resource schema with `.attributes`
|
115
|
+
[no-reply](https://github.com/no-reply)
|
116
|
+
|
117
|
+
Additional thanks to the following for code review and issue reports leading to
|
118
|
+
this release:
|
119
|
+
|
120
|
+
[coblej](https://github.com/coblej)
|
121
|
+
|
122
|
+
# v2.0.1 2019-07-03
|
123
|
+
|
124
|
+
## Changes since last release
|
125
|
+
|
126
|
+
* Remove strftime from `Fedora::Persister::ModelConverter`
|
127
|
+
[tpendragon](https://github.com/tpendragon)
|
128
|
+
* Only parse ISO8601 strings into DateTimes
|
129
|
+
[awead](https://github.com/awead)
|
130
|
+
|
131
|
+
|
132
|
+
Additional thanks to the following for code review and issue reports leading to
|
133
|
+
this release:
|
134
|
+
|
135
|
+
[dgcliff](https://github.com/dgcliff)
|
136
|
+
|
1
137
|
# v2.0.0 2019-06-06
|
2
138
|
|
3
139
|
## Changes since last release
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@ Valkyrie is a gem for enabling multiple backends for storage of files and metada
|
|
4
4
|
|
5
5
|

|
6
6
|
|
7
|
-
Code: [](https://badge.fury.io/rb/valkyrie)
|
8
8
|
[](https://circleci.com/gh/samvera/valkyrie)
|
9
9
|

|
10
10
|
|
@@ -107,7 +107,7 @@ The initializer registers four `Valkyrie::MetadataAdapter` instances for storing
|
|
107
107
|
* `:memory` which stores metadata in an in-memory cache (this cache is not persistent, so it is only
|
108
108
|
appropriate for testing).
|
109
109
|
* `:postgres` which stores metadata in a PostgreSQL database.
|
110
|
-
* `:solr` which stores metadata in a Solr Index.
|
110
|
+
* `:solr` which stores metadata in a Solr Index (Solr Persister issues a warning if it has to generate an ID for a new resource because it is intended to be used as a secondary persister).
|
111
111
|
|
112
112
|
Other adapter options include `Valkyrie::Persistence::BufferedPersister` for buffering in memory before bulk
|
113
113
|
updating another persister, `Valkyrie::Persistence::CompositePersister` for storing in more than one adapter
|
@@ -252,53 +252,25 @@ config. If Fedora requires auth, you can also include that in the URL, e.g.:
|
|
252
252
|
|
253
253
|
## Installing a Development environment
|
254
254
|
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
shell to run them in the foreground)
|
275
|
-
1. Run `rake db:create db:migrate` to initialize the database
|
276
|
-
1. Develop!
|
277
|
-
1. Run `rake docker:dev:down` to stop the server stack
|
278
|
-
* Development servers maintain data between runs. To clean them out, run `rake docker:dev:clean`
|
279
|
-
|
280
|
-
#### To run the test suite with all dependencies in one go
|
281
|
-
1. `rake docker:spec`
|
282
|
-
|
283
|
-
#### To run the test suite manually
|
284
|
-
1. Start Solr, Fedora, and PostgreSQL with `rake docker:test:daemon` (or `rake docker:test:up` in a separate
|
285
|
-
shell to run them in the foreground)
|
286
|
-
1. Run `rake db:create db:migrate` to initialize the database
|
287
|
-
1. Run the gem's RSpec test suite with `rspec spec` or `rake`
|
288
|
-
1. Run `rake docker:test:down` to stop the server stack
|
289
|
-
* The test stack cleans up after itself on exit.
|
290
|
-
|
291
|
-
### Without Docker
|
292
|
-
|
293
|
-
#### External Requirements
|
294
|
-
* PostgreSQL with the uuid-ossp extension.
|
295
|
-
* Note: Enabling uuid-ossp requires database superuser privileges.
|
296
|
-
* From `psql`: `alter user [username] with superuser;`
|
297
|
-
|
298
|
-
#### To run the test suite
|
299
|
-
1. Start Solr and Fedora servers for testing with `rake server:test`
|
300
|
-
1. Run `rake db:create` (First time only)
|
301
|
-
1. Run `rake db:migrate`
|
255
|
+
For ease of development we use Lando to abstract away some complications of
|
256
|
+
using Docker containers for development.
|
257
|
+
|
258
|
+
### Running Tests
|
259
|
+
|
260
|
+
1. Install the latest released > 3.0 version of Lando from [here](https://github.com/lando/lando/releases).
|
261
|
+
2. `bundle install`
|
262
|
+
3. `bundle exec rake server:start`
|
263
|
+
4. `bundle exec rspec spec`
|
264
|
+
|
265
|
+
### Cleaning Data
|
266
|
+
|
267
|
+
1. `bundle exec rake server:clean`
|
268
|
+
|
269
|
+
### Stopping Servers
|
270
|
+
|
271
|
+
1. `bundle exec rake server:stop`
|
272
|
+
|
273
|
+
You can also run `lando poweroff` from anywhere.
|
302
274
|
|
303
275
|
## Acknowledgments
|
304
276
|
|