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.
Files changed (29) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +10 -22
  3. data/.github_changelog_generator +2 -0
  4. data/.rubocop.yml +14 -7
  5. data/.rubocop_todo.yml +38 -83
  6. data/CHANGELOG.md +118 -0
  7. data/README.md +40 -29
  8. data/iiif_manifest.gemspec +2 -4
  9. data/lib/iiif_manifest/manifest_builder.rb +6 -6
  10. data/lib/iiif_manifest/manifest_builder/canvas_builder.rb +12 -12
  11. data/lib/iiif_manifest/manifest_builder/canvas_builder_factory.rb +3 -3
  12. data/lib/iiif_manifest/manifest_builder/deep_canvas_builder_factory.rb +9 -9
  13. data/lib/iiif_manifest/manifest_builder/image_builder.rb +9 -9
  14. data/lib/iiif_manifest/manifest_builder/image_service_builder.rb +3 -3
  15. data/lib/iiif_manifest/manifest_builder/record_property_builder.rb +35 -35
  16. data/lib/iiif_manifest/manifest_builder/resource_builder.rb +9 -9
  17. data/lib/iiif_manifest/manifest_builder/sequence_builder.rb +19 -19
  18. data/lib/iiif_manifest/manifest_factory.rb +3 -3
  19. data/lib/iiif_manifest/manifest_service_locator.rb +2 -2
  20. data/lib/iiif_manifest/v3/manifest_builder.rb +7 -7
  21. data/lib/iiif_manifest/v3/manifest_builder/body_builder.rb +37 -37
  22. data/lib/iiif_manifest/v3/manifest_builder/canvas_builder.rb +24 -24
  23. data/lib/iiif_manifest/v3/manifest_builder/choice_builder.rb +14 -14
  24. data/lib/iiif_manifest/v3/manifest_builder/content_builder.rb +9 -9
  25. data/lib/iiif_manifest/v3/manifest_builder/image_service_builder.rb +10 -10
  26. data/lib/iiif_manifest/v3/manifest_builder/record_property_builder.rb +40 -40
  27. data/lib/iiif_manifest/v3/manifest_factory.rb +3 -3
  28. data/lib/iiif_manifest/version.rb +1 -1
  29. metadata +14 -40
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0ed46d083d9a12ad8acf68cda9e52389678059ee2a8ab09a20115fedc140106b
4
- data.tar.gz: 2998c6c347f194a62563c8f11d073e9b1e4e8445e762c795a2cf95cd3f45f878
3
+ metadata.gz: ce4c4a874b8b50d50d11344dac0e635248754bb2b3498331cbd94945a5f3be75
4
+ data.tar.gz: 3da6a490d37ea8107e50a4393c21d5189ff97e47e9f34a65bd87848f3504f307
5
5
  SHA512:
6
- metadata.gz: 74202b5037f0dd7d435f364953b5326d322c521ea945383acce7771f3ab7dc7359c0f514d42a91c840128bafc9c1bf7fb167fc0253663ee1c3fe84bdc407bdd4
7
- data.tar.gz: ddaf67c5a3977748418b96e4781574e1258762e32ff3a2fb8f528199b3cc9bf6cc38292a54665671d15a8f497e3886d7ac8649dc090c969935926959049c70af
6
+ metadata.gz: e54f567e6ed14b4a802d05433a17547e119da18ee6dc851db026f157eb344e431649d8bc84076d102449bbee5b7d69a73bbf8b22d36eb43e6e46d7062e4c7133
7
+ data.tar.gz: ea7afaf08fdd7d142d7bbe6c0087521ddcda5ec520f183f7d2ae479961dd36908fa4b34054fdb379ad88f6c71c4a898d0e5c19419528e0135005a49be3deb6ee
@@ -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: "ruby2-6_rails5-2"
42
- ruby_version: "2.6.3"
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-4_rails5-2"
50
- ruby_version: "2.4.6"
51
- rails_version: "5.2.3"
41
+ name: "ruby2-7"
42
+ ruby_version: "2.7.0"
52
43
  - test:
53
- name: "ruby2-6_rails5-1"
54
- ruby_version: "2.6.3"
55
- rails_version: "5.1.7"
44
+ name: "ruby2-6"
45
+ ruby_version: "2.6.5"
56
46
  - test:
57
- name: "ruby2-5_rails5-1"
58
- ruby_version: "2.5.5"
59
- rails_version: "5.1.7"
47
+ name: "ruby2-5"
48
+ ruby_version: "2.5.7"
60
49
  - test:
61
- name: "ruby2-4_rails5-1"
62
- ruby_version: "2.4.6"
63
- rails_version: "5.1.7"
50
+ name: "ruby2-4"
51
+ ruby_version: "2.4.9"
@@ -0,0 +1,2 @@
1
+ unreleased=true
2
+ future-release=1.0.2
@@ -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
- Metrics/LineLength:
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
@@ -1,36 +1,41 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2017-07-26 10:46:37 -0500 using RuboCop version 0.49.1.
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: 2
10
- Metrics/AbcSize:
9
+ # Offense count: 8
10
+ # Cop supports --auto-correct.
11
+ Layout/CommentIndentation:
11
12
  Exclude:
12
- - 'lib/iiif_manifest/manifest_builder/resource_builder.rb'
13
- - 'lib/iiif_manifest/manifest_factory.rb'
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: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
21
- # URISchemes: http, https
22
- Metrics/LineLength:
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: 1
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: 8
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: 1
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
- RSpec/ExampleLength:
51
- Exclude:
52
- - 'spec/lib/iiif_manifest/manifest_factory_spec.rb'
53
- - 'spec/lib/iiif_manifest/v3/manifest_factory_spec.rb'
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
- - 'lib/iiif_manifest/v3/manifest_builder/canvas_builder.rb'
88
- - 'lib/iiif_manifest/v3/manifest_builder/choice_builder.rb'
89
- - 'lib/iiif_manifest/v3/manifest_builder/content_builder.rb'
90
- - 'lib/iiif_manifest/v3/manifest_builder/body_builder.rb'
91
- - 'lib/iiif_manifest/v3/manifest_builder/record_property_builder.rb'
92
- - 'lib/iiif_manifest/v3/manifest_builder/image_service_builder.rb'
93
- - 'lib/iiif_manifest/v3/manifest_builder.rb'
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/MethodMissing:
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
- # Cop supports --auto-correct.
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
- - 'spec/lib/iiif_manifest/v3/manifest_factory_spec.rb'
123
- - 'spec/lib/iiif_manifest/v3/manifest_builder/body_builder_spec.rb'
78
+ - 'lib/iiif_manifest/manifest_builder/composite_builder.rb'
@@ -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
- Docs: [![Contribution Guidelines](http://img.shields.io/badge/CONTRIBUTING-Guidelines-blue.svg)](./CONTRIBUTING.md)
6
- [![Apache 2.0 License](http://img.shields.io/badge/APACHE2-license-blue.svg)](./LICENSE)
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
- 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/
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 ***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.
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 ***must*** have a `#description` method that returns a string.
25
+ Additionally, it **_must_** have a `#description` method that returns a string.
28
26
 
29
- Additionally it ***should*** implement `#manifest_url` that shows where the manifest can be found.
27
+ Additionally it **_should_** implement `#manifest_url` that shows where the manifest can be found.
30
28
 
31
- Additionally it ***should*** implement `#manifest_metadata` to provide an array containing hashes of metadata Label/Value pairs.
29
+ Additionally it **_should_** implement `#manifest_metadata` to provide an array containing hashes of metadata Label/Value pairs.
32
30
 
33
- 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.
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 ***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" }`).
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 ***may*** implement `ranges`, which returns an array of objects which
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
- ```ruby
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. The [change log](https://iiif.io/api/presentation/3.0/change-log/) lists the changes to the specification.
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. Version 2.0 manifests are still be built using `IIIFManifest::ManifestFactory` while version 3.0 manifests can now be built using `IIIFManifest::V3::ManifestFactory`.
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
- - 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)
160
- - 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)
161
- - 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"] }`).
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. `#items` is not required and existing range objects should continue to work.
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`). `#display_image` is no longer required but will still work if provided.
165
- - 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.
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. 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.
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. Learn more at the
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)