iiif_manifest 1.0.1 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +10 -22
- data/.github_changelog_generator +2 -0
- data/.rubocop.yml +14 -7
- data/.rubocop_todo.yml +38 -83
- data/CHANGELOG.md +118 -0
- data/README.md +40 -29
- data/iiif_manifest.gemspec +2 -4
- data/lib/iiif_manifest/manifest_builder.rb +6 -6
- data/lib/iiif_manifest/manifest_builder/canvas_builder.rb +12 -12
- data/lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb +3 -3
- data/lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb +9 -9
- data/lib/iiif_manifest/manifest_builder/image_builder.rb +9 -9
- data/lib/iiif_manifest/manifest_builder/image_service_builder.rb +3 -3
- data/lib/iiif_manifest/manifest_builder/record_property_builder.rb +35 -35
- data/lib/iiif_manifest/manifest_builder/resource_builder.rb +9 -9
- data/lib/iiif_manifest/manifest_builder/sequence_builder.rb +19 -19
- data/lib/iiif_manifest/manifest_factory.rb +3 -3
- data/lib/iiif_manifest/manifest_service_locator.rb +2 -2
- data/lib/iiif_manifest/v3/manifest_builder.rb +7 -7
- data/lib/iiif_manifest/v3/manifest_builder/body_builder.rb +37 -37
- data/lib/iiif_manifest/v3/manifest_builder/canvas_builder.rb +24 -24
- data/lib/iiif_manifest/v3/manifest_builder/choice_builder.rb +14 -14
- data/lib/iiif_manifest/v3/manifest_builder/content_builder.rb +9 -9
- data/lib/iiif_manifest/v3/manifest_builder/image_service_builder.rb +10 -10
- data/lib/iiif_manifest/v3/manifest_builder/record_property_builder.rb +40 -40
- data/lib/iiif_manifest/v3/manifest_factory.rb +3 -3
- data/lib/iiif_manifest/version.rb +1 -1
- metadata +14 -40
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ce4c4a874b8b50d50d11344dac0e635248754bb2b3498331cbd94945a5f3be75
|
4
|
+
data.tar.gz: 3da6a490d37ea8107e50a4393c21d5189ff97e47e9f34a65bd87848f3504f307
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e54f567e6ed14b4a802d05433a17547e119da18ee6dc851db026f157eb344e431649d8bc84076d102449bbee5b7d69a73bbf8b22d36eb43e6e46d7062e4c7133
|
7
|
+
data.tar.gz: ea7afaf08fdd7d142d7bbe6c0087521ddcda5ec520f183f7d2ae479961dd36908fa4b34054fdb379ad88f6c71c4a898d0e5c19419528e0135005a49be3deb6ee
|
data/.circleci/config.yml
CHANGED
@@ -8,8 +8,6 @@ jobs:
|
|
8
8
|
parameters:
|
9
9
|
ruby_version:
|
10
10
|
type: string
|
11
|
-
rails_version:
|
12
|
-
type: string
|
13
11
|
bundler_version:
|
14
12
|
type: string
|
15
13
|
default: 2.0.2
|
@@ -20,7 +18,6 @@ jobs:
|
|
20
18
|
|
21
19
|
environment:
|
22
20
|
COVERAGE: true
|
23
|
-
RAILS_VERSION: << parameters.rails_version >>
|
24
21
|
|
25
22
|
working_directory: ~/iiif_manifest
|
26
23
|
|
@@ -38,26 +35,17 @@ workflows:
|
|
38
35
|
ci:
|
39
36
|
jobs:
|
40
37
|
- test:
|
41
|
-
name: "
|
42
|
-
ruby_version: "
|
43
|
-
rails_version: "5.2.3"
|
44
|
-
- test:
|
45
|
-
name: "ruby2-5_rails5-2"
|
46
|
-
ruby_version: "2.5.5"
|
47
|
-
rails_version: "5.2.3"
|
38
|
+
name: "ruby3-0"
|
39
|
+
ruby_version: "3.0.0"
|
48
40
|
- test:
|
49
|
-
name: "ruby2-
|
50
|
-
ruby_version: "2.
|
51
|
-
rails_version: "5.2.3"
|
41
|
+
name: "ruby2-7"
|
42
|
+
ruby_version: "2.7.0"
|
52
43
|
- test:
|
53
|
-
name: "ruby2-
|
54
|
-
ruby_version: "2.6.
|
55
|
-
rails_version: "5.1.7"
|
44
|
+
name: "ruby2-6"
|
45
|
+
ruby_version: "2.6.5"
|
56
46
|
- test:
|
57
|
-
name: "ruby2-
|
58
|
-
ruby_version: "2.5.
|
59
|
-
rails_version: "5.1.7"
|
47
|
+
name: "ruby2-5"
|
48
|
+
ruby_version: "2.5.7"
|
60
49
|
- test:
|
61
|
-
name: "ruby2-
|
62
|
-
ruby_version: "2.4.
|
63
|
-
rails_version: "5.1.7"
|
50
|
+
name: "ruby2-4"
|
51
|
+
ruby_version: "2.4.9"
|
data/.rubocop.yml
CHANGED
@@ -1,22 +1,29 @@
|
|
1
|
-
require: rubocop-rspec
|
2
|
-
inherit_from: .rubocop_todo.yml
|
3
1
|
inherit_gem:
|
4
2
|
bixby: bixby_default.yml
|
5
3
|
|
4
|
+
inherit_from: .rubocop_todo.yml
|
5
|
+
|
6
6
|
AllCops:
|
7
|
+
TargetRubyVersion: 2.6
|
7
8
|
DisplayCopNames: true
|
9
|
+
Exclude:
|
10
|
+
- 'bin/**/*'
|
11
|
+
- 'vendor/**/*'
|
8
12
|
|
9
|
-
|
13
|
+
Layout/LineLength:
|
10
14
|
Max: 120
|
11
15
|
|
12
|
-
Metrics/BlockLength:
|
13
|
-
Exclude:
|
14
|
-
- 'spec/**/*.rb'
|
15
|
-
|
16
16
|
Naming/MethodName:
|
17
17
|
Exclude:
|
18
18
|
- 'lib/iiif_manifest/manifest_builder/iiif_service.rb'
|
19
19
|
- 'lib/iiif_manifest/v3/manifest_builder/iiif_service.rb'
|
20
20
|
|
21
|
+
Metrics/BlockLength:
|
22
|
+
Exclude:
|
23
|
+
- 'spec/**/*.rb'
|
24
|
+
|
25
|
+
RSpec/ExampleLength:
|
26
|
+
Enabled: false
|
27
|
+
|
21
28
|
RSpec/MultipleExpectations:
|
22
29
|
Enabled: false
|
data/.rubocop_todo.yml
CHANGED
@@ -1,36 +1,41 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2020-06-12 12:53:34 -0400 using RuboCop version 0.85.1.
|
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:
|
10
|
-
|
9
|
+
# Offense count: 8
|
10
|
+
# Cop supports --auto-correct.
|
11
|
+
Layout/CommentIndentation:
|
11
12
|
Exclude:
|
12
|
-
- 'lib/iiif_manifest/manifest_builder/
|
13
|
-
- 'lib/iiif_manifest/
|
14
|
-
- 'lib/iiif_manifest/v3/manifest_builder/body_builder.rb'
|
15
|
-
- 'lib/iiif_manifest/v3/manifest_factory.rb'
|
16
|
-
- 'lib/iiif_manifest/v3/manifest_builder/content_builder.rb'
|
17
|
-
- 'lib/iiif_manifest/v3/manifest_builder/choice_builder.rb'
|
13
|
+
- 'lib/iiif_manifest/manifest_builder/record_property_builder.rb'
|
14
|
+
- 'lib/iiif_manifest/v3/manifest_builder/record_property_builder.rb'
|
18
15
|
|
19
16
|
# Offense count: 1
|
20
|
-
# Configuration parameters:
|
21
|
-
|
22
|
-
|
23
|
-
Exclude:
|
24
|
-
- 'iiif_manifest.gemspec'
|
25
|
-
- 'lib/iiif_manifest/v3/manifest_builder/canvas_builder.rb'
|
17
|
+
# Configuration parameters: IgnoredMethods.
|
18
|
+
Metrics/AbcSize:
|
19
|
+
Max: 38
|
26
20
|
|
27
|
-
# Offense count:
|
21
|
+
# Offense count: 2
|
22
|
+
# Configuration parameters: CountComments.
|
23
|
+
Metrics/ClassLength:
|
24
|
+
Max: 161
|
25
|
+
|
26
|
+
# Offense count: 2
|
27
|
+
# Configuration parameters: CountKeywordArgs.
|
28
|
+
Metrics/ParameterLists:
|
29
|
+
Max: 9
|
30
|
+
|
31
|
+
# Offense count: 2
|
28
32
|
# Configuration parameters: AssignmentOnly.
|
29
33
|
RSpec/InstanceVariable:
|
30
34
|
Exclude:
|
31
35
|
- 'spec/lib/iiif_manifest/manifest_factory_spec.rb'
|
32
36
|
|
33
|
-
# Offense count:
|
37
|
+
# Offense count: 19
|
38
|
+
# Configuration parameters: IgnoreSharedExamples.
|
34
39
|
RSpec/NamedSubject:
|
35
40
|
Exclude:
|
36
41
|
- 'spec/lib/iiif_manifest/display_image_spec.rb'
|
@@ -39,85 +44,35 @@ RSpec/NamedSubject:
|
|
39
44
|
- 'spec/lib/iiif_manifest/v3/manifest_builder/body_builder_spec.rb'
|
40
45
|
- 'spec/lib/iiif_manifest/v3/manifest_builder/structure_builder_spec.rb'
|
41
46
|
|
42
|
-
# Offense count:
|
43
|
-
# Configuration parameters: IgnoreSymbolicNames.
|
47
|
+
# Offense count: 17
|
48
|
+
# Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
|
44
49
|
RSpec/VerifiedDoubles:
|
45
50
|
Exclude:
|
46
51
|
- 'spec/lib/iiif_manifest/display_image_spec.rb'
|
47
52
|
- 'spec/lib/iiif_manifest/v3/manifest_builder/canvas_builder_spec.rb'
|
48
53
|
- 'spec/lib/iiif_manifest/v3/manifest_builder/structure_builder_spec.rb'
|
49
54
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
- 'spec/lib/iiif_manifest/v3/manifest_builder/body_builder_spec.rb'
|
55
|
-
- 'spec/lib/iiif_manifest/v3/manifest_builder/structure_builder_spec.rb'
|
56
|
-
- 'spec/lib/iiif_manifest/v3/manifest_builder/canvas_builder_spec.rb'
|
57
|
-
|
58
|
-
# Offense count: 20
|
59
|
-
Style/Documentation:
|
55
|
+
# Offense count: 6
|
56
|
+
# Cop supports --auto-correct.
|
57
|
+
# Configuration parameters: NilOrEmpty, NotPresent, UnlessPresent.
|
58
|
+
Rails/Blank:
|
60
59
|
Exclude:
|
61
|
-
- 'lib/iiif_manifest/display_image.rb'
|
62
|
-
- 'lib/iiif_manifest/iiif_collection.rb'
|
63
|
-
- 'lib/iiif_manifest/iiif_endpoint.rb'
|
64
|
-
- 'lib/iiif_manifest/manifest_builder/canvas_builder.rb'
|
65
|
-
- 'lib/iiif_manifest/manifest_builder/canvas_builder.rb'
|
66
|
-
- 'lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb'
|
67
|
-
- 'lib/iiif_manifest/manifest_builder/child_manifest_builder_factory.rb'
|
68
|
-
- 'lib/iiif_manifest/manifest_builder/composite_builder.rb'
|
69
|
-
- 'lib/iiif_manifest/manifest_builder/composite_builder_factory.rb'
|
70
|
-
- 'lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb'
|
71
|
-
- 'lib/iiif_manifest/manifest_builder/image_builder.rb'
|
72
|
-
- 'lib/iiif_manifest/manifest_builder/image_service_builder.rb'
|
73
|
-
- 'lib/iiif_manifest/manifest_builder/record_property_builder.rb'
|
74
|
-
- 'lib/iiif_manifest/manifest_builder/resource_builder.rb'
|
75
|
-
- 'lib/iiif_manifest/manifest_builder/sequence_builder.rb'
|
76
|
-
- 'lib/iiif_manifest/manifest_builder/structure_builder.rb'
|
77
|
-
- 'lib/iiif_manifest/manifest_builder.rb'
|
78
|
-
- 'lib/iiif_manifest/manifest_factory.rb'
|
79
|
-
- 'lib/iiif_manifest/manifest_service_locator.rb'
|
80
|
-
- 'lib/iiif_manifest.rb'
|
81
60
|
- 'lib/iiif_manifest/manifest_builder/iiif_service.rb'
|
82
|
-
- 'lib/iiif_manifest/v3.rb'
|
83
|
-
- 'lib/iiif_manifest/v3/display_content.rb'
|
84
|
-
- 'lib/iiif_manifest/v3/manifest_factory.rb'
|
85
|
-
- 'lib/iiif_manifest/v3/manifest_builder/structure_builder.rb'
|
86
61
|
- 'lib/iiif_manifest/v3/manifest_builder/iiif_service.rb'
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
- 'lib/iiif_manifest/v3/manifest_service_locator.rb'
|
95
|
-
- 'spec/lib/iiif_manifest/manifest_factory_spec.rb'
|
96
|
-
- 'spec/lib/iiif_manifest/v3/manifest_factory_spec.rb'
|
62
|
+
|
63
|
+
# Offense count: 37
|
64
|
+
# Cop supports --auto-correct.
|
65
|
+
# Configuration parameters: EnforcedStyle.
|
66
|
+
# SupportedStyles: always, always_true, never
|
67
|
+
Style/FrozenStringLiteralComment:
|
68
|
+
Enabled: false
|
97
69
|
|
98
70
|
# Offense count: 1
|
99
|
-
Style/
|
71
|
+
Style/MethodMissingSuper:
|
100
72
|
Exclude:
|
101
73
|
- 'lib/iiif_manifest/manifest_builder/composite_builder.rb'
|
102
74
|
|
103
|
-
Metrics/ClassLength:
|
104
|
-
Exclude:
|
105
|
-
- 'lib/iiif_manifest/manifest_service_locator.rb'
|
106
|
-
- 'lib/iiif_manifest/v3/manifest_service_locator.rb'
|
107
|
-
|
108
75
|
# Offense count: 1
|
109
|
-
|
110
|
-
# Configuration parameters: MinSize, SupportedStyles.
|
111
|
-
# SupportedStyles: percent, brackets
|
112
|
-
Style/SymbolArray:
|
113
|
-
EnforcedStyle: brackets
|
114
|
-
|
115
|
-
Metrics/ParameterLists:
|
116
|
-
Exclude:
|
117
|
-
- 'lib/iiif_manifest/v3/display_content.rb'
|
118
|
-
- 'lib/iiif_manifest/v3/manifest_builder/canvas_builder.rb'
|
119
|
-
|
120
|
-
RSpec/NestedGroups:
|
76
|
+
Style/MissingRespondToMissing:
|
121
77
|
Exclude:
|
122
|
-
- '
|
123
|
-
- 'spec/lib/iiif_manifest/v3/manifest_builder/body_builder_spec.rb'
|
78
|
+
- 'lib/iiif_manifest/manifest_builder/composite_builder.rb'
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## [1.0.2](https://github.com/samvera/iiif_manifest/tree/1.0.2) (2020-06-12)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v1.0.1...1.0.2)
|
6
|
+
|
7
|
+
**Closed issues:**
|
8
|
+
|
9
|
+
- Add support for Ruby 2.7.z releases [\#43](https://github.com/samvera/iiif_manifest/issues/43)
|
10
|
+
|
11
|
+
**Merged pull requests:**
|
12
|
+
|
13
|
+
- Upgrade to Bixby 3.0 [\#49](https://github.com/samvera/iiif_manifest/pull/49) ([bess](https://github.com/bess))
|
14
|
+
- Upgrade rake \(again\) to address security issue [\#47](https://github.com/samvera/iiif_manifest/pull/47) ([bess](https://github.com/bess))
|
15
|
+
- Loosen rake dependency [\#46](https://github.com/samvera/iiif_manifest/pull/46) ([no-reply](https://github.com/no-reply))
|
16
|
+
- Adding Ruby 2.7.z and Rails 6.y.z releases to the CircleCI build configuration [\#45](https://github.com/samvera/iiif_manifest/pull/45) ([jrgriffiniii](https://github.com/jrgriffiniii))
|
17
|
+
|
18
|
+
## [v1.0.1](https://github.com/samvera/iiif_manifest/tree/v1.0.1) (2019-08-23)
|
19
|
+
|
20
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v1.0.0...v1.0.1)
|
21
|
+
|
22
|
+
**Closed issues:**
|
23
|
+
|
24
|
+
- Test Current Ruby/Rails Versions in Build Matrix [\#41](https://github.com/samvera/iiif_manifest/issues/41)
|
25
|
+
- Migrate to CircleCI [\#40](https://github.com/samvera/iiif_manifest/issues/40)
|
26
|
+
- Update Documentation to Core Component standards [\#39](https://github.com/samvera/iiif_manifest/issues/39)
|
27
|
+
- Release 1.0? [\#38](https://github.com/samvera/iiif_manifest/issues/38)
|
28
|
+
|
29
|
+
## [v1.0.0](https://github.com/samvera/iiif_manifest/tree/v1.0.0) (2019-08-23)
|
30
|
+
|
31
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.6.0...v1.0.0)
|
32
|
+
|
33
|
+
**Merged pull requests:**
|
34
|
+
|
35
|
+
- Add initial configuration for CircleCI [\#42](https://github.com/samvera/iiif_manifest/pull/42) ([mark-dce](https://github.com/mark-dce))
|
36
|
+
- Ensures that empty DisplayContent values within IIIFv3 Manifest generation are handled [\#37](https://github.com/samvera/iiif_manifest/pull/37) ([jrgriffiniii](https://github.com/jrgriffiniii))
|
37
|
+
|
38
|
+
## [v0.6.0](https://github.com/samvera/iiif_manifest/tree/v0.6.0) (2019-05-14)
|
39
|
+
|
40
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.5.0...v0.6.0)
|
41
|
+
|
42
|
+
**Merged pull requests:**
|
43
|
+
|
44
|
+
- Bump version to prepare for release [\#36](https://github.com/samvera/iiif_manifest/pull/36) ([cjcolvar](https://github.com/cjcolvar))
|
45
|
+
- Don't include \# if there isn't any media fragment [\#35](https://github.com/samvera/iiif_manifest/pull/35) ([cjcolvar](https://github.com/cjcolvar))
|
46
|
+
- Update README.md [\#32](https://github.com/samvera/iiif_manifest/pull/32) ([rotated8](https://github.com/rotated8))
|
47
|
+
- Add support for homepage in V3 [\#31](https://github.com/samvera/iiif_manifest/pull/31) ([cjcolvar](https://github.com/cjcolvar))
|
48
|
+
- Optional authentication service for non-image api-backed resources. [\#30](https://github.com/samvera/iiif_manifest/pull/30) ([cjcolvar](https://github.com/cjcolvar))
|
49
|
+
|
50
|
+
## [v0.5.0](https://github.com/samvera/iiif_manifest/tree/v0.5.0) (2018-10-01)
|
51
|
+
|
52
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.4.0...v0.5.0)
|
53
|
+
|
54
|
+
**Merged pull requests:**
|
55
|
+
|
56
|
+
- Bump version to 0.5.0 [\#29](https://github.com/samvera/iiif_manifest/pull/29) ([cjcolvar](https://github.com/cjcolvar))
|
57
|
+
- Update readme for presentation 3.0 support [\#28](https://github.com/samvera/iiif_manifest/pull/28) ([cjcolvar](https://github.com/cjcolvar))
|
58
|
+
- Fix links pointing to projecthydra-labs [\#27](https://github.com/samvera/iiif_manifest/pull/27) ([cjcolvar](https://github.com/cjcolvar))
|
59
|
+
- Issue langmap: add nil checking to language\_map [\#25](https://github.com/samvera/iiif_manifest/pull/25) ([yingfeng-iu](https://github.com/yingfeng-iu))
|
60
|
+
- Issue\#116 rebased [\#23](https://github.com/samvera/iiif_manifest/pull/23) ([yingfeng-iu](https://github.com/yingfeng-iu))
|
61
|
+
- V3 Range Improvements [\#21](https://github.com/samvera/iiif_manifest/pull/21) ([cjcolvar](https://github.com/cjcolvar))
|
62
|
+
- Use bixby to insulate from changes in rubocop [\#20](https://github.com/samvera/iiif_manifest/pull/20) ([cjcolvar](https://github.com/cjcolvar))
|
63
|
+
- Presentation 3.0 Alpha Support [\#19](https://github.com/samvera/iiif_manifest/pull/19) ([cjcolvar](https://github.com/cjcolvar))
|
64
|
+
|
65
|
+
## [v0.4.0](https://github.com/samvera/iiif_manifest/tree/v0.4.0) (2018-02-28)
|
66
|
+
|
67
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.3.0...v0.4.0)
|
68
|
+
|
69
|
+
**Closed issues:**
|
70
|
+
|
71
|
+
- Provide a way for works to indicate if they are sammelbands [\#17](https://github.com/samvera/iiif_manifest/issues/17)
|
72
|
+
- Support viewingDirection in manifests [\#12](https://github.com/samvera/iiif_manifest/issues/12)
|
73
|
+
|
74
|
+
**Merged pull requests:**
|
75
|
+
|
76
|
+
- Allow works to indicate if they are sammelbands [\#18](https://github.com/samvera/iiif_manifest/pull/18) ([eliotjordan](https://github.com/eliotjordan))
|
77
|
+
- Add search\_service and autocomplete\_service [\#16](https://github.com/samvera/iiif_manifest/pull/16) ([geekscruff](https://github.com/geekscruff))
|
78
|
+
- Use hash-powered IIIF factories. [\#15](https://github.com/samvera/iiif_manifest/pull/15) ([tpendragon](https://github.com/tpendragon))
|
79
|
+
- Add viewingDirection as optional data value on manifest, fixes \#12 [\#13](https://github.com/samvera/iiif_manifest/pull/13) ([hackmastera](https://github.com/hackmastera))
|
80
|
+
|
81
|
+
## [v0.3.0](https://github.com/samvera/iiif_manifest/tree/v0.3.0) (2017-09-27)
|
82
|
+
|
83
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.2.0...v0.3.0)
|
84
|
+
|
85
|
+
**Merged pull requests:**
|
86
|
+
|
87
|
+
- bump to version 0.3.0 [\#11](https://github.com/samvera/iiif_manifest/pull/11) ([geekscruff](https://github.com/geekscruff))
|
88
|
+
- Unnecessary each\_with\_index changed to each [\#10](https://github.com/samvera/iiif_manifest/pull/10) ([geekscruff](https://github.com/geekscruff))
|
89
|
+
- Add metadata into the manifest [\#9](https://github.com/samvera/iiif_manifest/pull/9) ([geekscruff](https://github.com/geekscruff))
|
90
|
+
- Enable builders to all be injected. [\#8](https://github.com/samvera/iiif_manifest/pull/8) ([tpendragon](https://github.com/tpendragon))
|
91
|
+
- Allow viewing\_hint to be overridden, allows for Collections as inputs. [\#7](https://github.com/samvera/iiif_manifest/pull/7) ([tpendragon](https://github.com/tpendragon))
|
92
|
+
- Add support for Structural Metadata. [\#5](https://github.com/samvera/iiif_manifest/pull/5) ([tpendragon](https://github.com/tpendragon))
|
93
|
+
- Add Rubocop [\#4](https://github.com/samvera/iiif_manifest/pull/4) ([jcoyne](https://github.com/jcoyne))
|
94
|
+
- Support for a 'sequence\_rendering' method [\#3](https://github.com/samvera/iiif_manifest/pull/3) ([geekscruff](https://github.com/geekscruff))
|
95
|
+
|
96
|
+
## [v0.2.0](https://github.com/samvera/iiif_manifest/tree/v0.2.0) (2017-05-03)
|
97
|
+
|
98
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.1.2...v0.2.0)
|
99
|
+
|
100
|
+
**Merged pull requests:**
|
101
|
+
|
102
|
+
- Bump iiif-presentation dependency to ~\> 0.2.0 [\#2](https://github.com/samvera/iiif_manifest/pull/2) ([jcoyne](https://github.com/jcoyne))
|
103
|
+
|
104
|
+
## [v0.1.2](https://github.com/samvera/iiif_manifest/tree/v0.1.2) (2016-05-13)
|
105
|
+
|
106
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.1.1...v0.1.2)
|
107
|
+
|
108
|
+
## [v0.1.1](https://github.com/samvera/iiif_manifest/tree/v0.1.1) (2016-05-13)
|
109
|
+
|
110
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/v0.1.0...v0.1.1)
|
111
|
+
|
112
|
+
## [v0.1.0](https://github.com/samvera/iiif_manifest/tree/v0.1.0) (2016-05-13)
|
113
|
+
|
114
|
+
[Full Changelog](https://github.com/samvera/iiif_manifest/compare/fc1bb4810a289fd6e2d88bf966bf94cf045fbbf0...v0.1.0)
|
115
|
+
|
116
|
+
|
117
|
+
|
118
|
+
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
data/README.md
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
# IIIFManifest
|
2
|
-
Code: [![CircleCI](https://circleci.com/gh/samvera/iiif_manifest.svg?style=svg)](https://circleci.com/gh/samvera/iiif_manifest)
|
3
|
-
[![Coverage Status](https://coveralls.io/repos/github/samvera/iiif_manifest/badge.svg)](https://coveralls.io/github/samvera/iiif_manifest)
|
4
2
|
|
5
|
-
|
6
|
-
|
3
|
+
Code: [![CircleCI](https://circleci.com/gh/samvera/iiif_manifest.svg?style=svg)](https://circleci.com/gh/samvera/iiif_manifest) [![Coverage Status](https://coveralls.io/repos/github/samvera/iiif_manifest/badge.svg)](https://coveralls.io/github/samvera/iiif_manifest)
|
4
|
+
|
5
|
+
Docs: [![Contribution Guidelines](http://img.shields.io/badge/CONTRIBUTING-Guidelines-blue.svg)](./CONTRIBUTING.md) [![Apache 2.0 License](http://img.shields.io/badge/APACHE2-license-blue.svg)](./LICENSE)
|
7
6
|
|
8
7
|
Jump in: [![Slack Status](http://slack.samvera.org/badge.svg)](http://slack.samvera.org/)
|
9
8
|
|
10
9
|
# What is IIIFManifest
|
11
|
-
|
10
|
+
|
11
|
+
IIIF <http://iiif.io/> defines an API for presenting related images in a viewer. This transforms Hydra::Works objects into that format usable by players such as <http://universalviewer.io/>
|
12
12
|
|
13
13
|
## Product Owner & Maintenance
|
14
14
|
|
15
|
-
`iiif_manifest` is a Core Component of the Samvera community. The documentation for
|
16
|
-
what this means can be found
|
17
|
-
[here](http://samvera.github.io/core_components.html#requirements-for-a-core-component).
|
15
|
+
`iiif_manifest` is a Core Component of the Samvera community. The documentation for what this means can be found [here](http://samvera.github.io/core_components.html#requirements-for-a-core-component).
|
18
16
|
|
19
17
|
### Product Owner
|
20
18
|
|
@@ -22,25 +20,23 @@ what this means can be found
|
|
22
20
|
|
23
21
|
# Usage
|
24
22
|
|
25
|
-
Your application
|
23
|
+
Your application **_must_** have an object that implements `#file_set_presenters` and `#work_presenters`. The former method should return as set of leaf nodes and the later any interstitial nodes. If none are found an empty array should be returned.
|
26
24
|
|
27
|
-
Additionally, it
|
25
|
+
Additionally, it **_must_** have a `#description` method that returns a string.
|
28
26
|
|
29
|
-
Additionally it
|
27
|
+
Additionally it **_should_** implement `#manifest_url` that shows where the manifest can be found.
|
30
28
|
|
31
|
-
Additionally it
|
29
|
+
Additionally it **_should_** implement `#manifest_metadata` to provide an array containing hashes of metadata Label/Value pairs.
|
32
30
|
|
33
|
-
Additionally it
|
31
|
+
Additionally it **_may_** implement `#search_service` to contain the url for a IIIF search api compliant search endpoint and `#autocomplete_service` to contain the url for a IIIF search api compliant autocomplete endpoint. Please note, the autocomplete service is embedded within the search service description so if an autocomplete_service is supplied without a search_service it will be ignored. The IIIF `profile` added to the service descriptions is version 0 as this is the version supported by the current version of Universal Viewer. Only include a search_service within the manifest if your application has implemented a IIIF search service at the endpoint specified in the manifest.
|
34
32
|
|
35
|
-
Additionally it
|
33
|
+
Additionally it **_may_** implement `#sequence_rendering` to contain an array of hashes for file downloads to be offered at sequences level. Each hash must contain "@id", "format" (mime type) and "label" (eg. `{ "@id" => "download url", "format" => "application/pdf", "label" => "user friendly label" }`).
|
36
34
|
|
37
|
-
Finally, it
|
38
|
-
represent a table of contents or similar structure, each of which responds to
|
39
|
-
`label`, `ranges`, and `file_set_presenters`.
|
35
|
+
Finally, it **_may_** implement `ranges`, which returns an array of objects which represent a table of contents or similar structure, each of which responds to `label`, `ranges`, and `file_set_presenters`.
|
40
36
|
|
41
37
|
For example:
|
42
38
|
|
43
|
-
|
39
|
+
```ruby
|
44
40
|
class Book
|
45
41
|
def initialize(id, pages = [])
|
46
42
|
@id = id
|
@@ -146,9 +142,9 @@ Then you can produce the manifest on the book object like this:
|
|
146
142
|
|
147
143
|
## Presentation 3.0 (Alpha)
|
148
144
|
|
149
|
-
Provisional support for the [3.0 alpha version of the IIIF presentation api spec](https://iiif.io/api/presentation/3.0/) has been added with a focus on audiovisual content.
|
145
|
+
Provisional support for the [3.0 alpha version of the IIIF presentation api spec](https://iiif.io/api/presentation/3.0/) has been added with a focus on audiovisual content. The [change log](https://iiif.io/api/presentation/3.0/change-log/) lists the changes to the specification.
|
150
146
|
|
151
|
-
The presentation 3.0 support has been contained to the `V3` namespace.
|
147
|
+
The presentation 3.0 support has been contained to the `V3` namespace. Version 2.0 manifests are still be built using `IIIFManifest::ManifestFactory` while version 3.0 manifests can now be built using `IIIFManifest::V3::ManifestFactory`.
|
152
148
|
|
153
149
|
```ruby
|
154
150
|
book = Book.new('book-77',[Page.new('page-99')])
|
@@ -156,13 +152,14 @@ The presentation 3.0 support has been contained to the `V3` namespace. Version
|
|
156
152
|
```
|
157
153
|
|
158
154
|
### Notable changes for Presentation 3.0
|
159
|
-
|
160
|
-
-
|
161
|
-
-
|
155
|
+
|
156
|
+
- Presenters must still define `#description` but it is now serialized as `summary`. (<https://iiif.io/api/presentation/3.0/change-log/#126-rename-description-to-summary>)
|
157
|
+
- All textual strings, including metadata labels and values, are now serialized as language maps and may be provided as a hash with language code keys with string values. Values not provided in this format are automatically converted so no change to `#description`, `#manifest_metadata`, range labels, or other fields are required. (<https://iiif.io/api/presentation/3.0/change-log/#133-use-language-map-pattern-for-label-value-summary>)
|
158
|
+
- Presenters **_may_** implement `#homepage` to contain a hash for linking back to a repository webpage for this manifest. The hash must contain "id", "format" (mime type), "type", and "label" (eg. `{ "id" => "repository url", "format" => "text/html", "type" => "Text", "label" => { "en": ["View in repository"] }`).
|
162
159
|
- File set presenters may target a fragment of its content by providing `#media_fragment` which will be appended to its `id`.
|
163
|
-
- Range objects may now implement `#items` instead of `#ranges` and `#file_set_presenters` to allow for interleaving these objects.
|
164
|
-
- File set presenters may provide `#display_content` which should return an instance of `IIIFManifest::V3::DisplayContent` (or an array of instances in the case of a user `Choice`).
|
165
|
-
- DisplayContent may provide `#auth_service` which should return a hash containing a IIIF Authentication service definition (https://iiif.io/api/auth/1.0
|
160
|
+
- Range objects may now implement `#items` instead of `#ranges` and `#file_set_presenters` to allow for interleaving these objects. `#items` is not required and existing range objects should continue to work.
|
161
|
+
- File set presenters may provide `#display_content` which should return an instance of `IIIFManifest::V3::DisplayContent` (or an array of instances in the case of a user `Choice`). `#display_image` is no longer required but will still work if provided.
|
162
|
+
- DisplayContent may provide `#auth_service` which should return a hash containing a IIIF Authentication service definition (<https://iiif.io/api/auth/1.0/>) that will be included on the content resource.
|
166
163
|
|
167
164
|
# Development
|
168
165
|
|
@@ -172,7 +169,22 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
172
169
|
|
173
170
|
## Contributing
|
174
171
|
|
175
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/samvera-labs/iiif_manifest
|
172
|
+
Bug reports and pull requests are welcome on GitHub at <https://github.com/samvera-labs/iiif_manifest>. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
173
|
+
|
174
|
+
## Releasing
|
175
|
+
|
176
|
+
1. `bundle install`
|
177
|
+
2. Increase the version number in `lib/iiif_manifest/version.rb`
|
178
|
+
3. Increase the same version number in `.github_changelog_generator`
|
179
|
+
4. Update `CHANGELOG.md` by running this command:
|
180
|
+
|
181
|
+
```
|
182
|
+
github_changelog_generator --user samvera --project iiif_manifest --token YOUR_GITHUB_TOKEN_HERE
|
183
|
+
```
|
184
|
+
|
185
|
+
5. Commit these changes to the master branch
|
186
|
+
|
187
|
+
6. Run `rake release`
|
176
188
|
|
177
189
|
## Help
|
178
190
|
|
@@ -180,7 +192,6 @@ The Samvera community is here to help. Please see our [support guide](./SUPPORT.
|
|
180
192
|
|
181
193
|
# Acknowledgments
|
182
194
|
|
183
|
-
This software has been developed by and is brought to you by the Samvera community.
|
184
|
-
[Samvera website](http://samvera.org/).
|
195
|
+
This software has been developed by and is brought to you by the Samvera community. Learn more at the [Samvera website](http://samvera.org/).
|
185
196
|
|
186
197
|
![Samvera Logo](https://wiki.duraspace.org/download/thumbnails/87459292/samvera-fall-font2-200w.png?version=1&modificationDate=1498550535816&api=v2)
|