assembly-objectfile 1.12.0 → 2.1.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.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +14 -0
  3. data/.github/pull_request_template.md +1 -1
  4. data/.gitignore +0 -1
  5. data/.rubocop.yml +117 -12
  6. data/.rubocop_todo.yml +3 -109
  7. data/Gemfile.lock +97 -0
  8. data/README.md +7 -7
  9. data/assembly-objectfile.gemspec +8 -11
  10. data/config/boot.rb +0 -1
  11. data/lib/{assembly-objectfile → assembly/object_file}/version.rb +2 -2
  12. data/lib/{assembly-objectfile/object_fileable.rb → assembly/object_file.rb} +109 -104
  13. data/lib/assembly-objectfile.rb +12 -15
  14. data/spec/assembly/object_file_spec.rb +451 -0
  15. data/spec/spec_helper.rb +2 -31
  16. data/spec/test_data/empty.txt +0 -0
  17. metadata +23 -156
  18. data/.travis.yml +0 -20
  19. data/lib/assembly-objectfile/content_metadata/config.rb +0 -26
  20. data/lib/assembly-objectfile/content_metadata/file.rb +0 -63
  21. data/lib/assembly-objectfile/content_metadata/file_set.rb +0 -73
  22. data/lib/assembly-objectfile/content_metadata/file_set_builder.rb +0 -65
  23. data/lib/assembly-objectfile/content_metadata/nokogiri_builder.rb +0 -57
  24. data/lib/assembly-objectfile/content_metadata.rb +0 -117
  25. data/lib/assembly-objectfile/object_file.rb +0 -29
  26. data/profiles/AdobeRGB1998.icc +0 -0
  27. data/profiles/DotGain20.icc +0 -0
  28. data/profiles/sRGBIEC6196621.icc +0 -0
  29. data/spec/content_metadata_spec.rb +0 -809
  30. data/spec/object_file_spec.rb +0 -217
  31. data/spec/test_data/input/oo000oo0001/00/oo000oo0001_00_001.tif +0 -0
  32. data/spec/test_data/input/oo000oo0001/00/oo000oo0001_00_002.tif +0 -0
  33. data/spec/test_data/input/oo000oo0001/05/oo000oo0001_05_001.jp2 +0 -0
  34. data/spec/test_data/input/oo000oo0001/05/oo000oo0001_05_002.jp2 +0 -0
  35. data/spec/test_data/input/oo000oo0001/15/oo000oo0001_15_001.pdf +0 -1
  36. data/spec/test_data/input/oo000oo0001/15/oo000oo0001_15_002.pdf +0 -1
  37. data/spec/test_data/input/oo000oo0001/31/oo000oo0001_31_001.pdf +0 -1
  38. data/spec/test_data/input/oo000oo0001/50/oo000oo0001_50_001.tif +0 -0
  39. data/spec/test_data/input/oo000oo0001/oo000oo0001_book.pdf +0 -1
  40. data/spec/test_data/input/res1_image1.jp2 +0 -0
  41. data/spec/test_data/input/res1_image2.jp2 +0 -0
  42. data/spec/test_data/input/res1_image2.tif +0 -0
  43. data/spec/test_data/input/res1_teifile.txt +0 -1
  44. data/spec/test_data/input/res2_image1.jp2 +0 -0
  45. data/spec/test_data/input/res2_image1.tif +0 -0
  46. data/spec/test_data/input/res2_image2.jp2 +0 -0
  47. data/spec/test_data/input/res2_image2.tif +0 -0
  48. data/spec/test_data/input/res2_teifile.txt +0 -1
  49. data/spec/test_data/input/res2_textfile.txt +0 -1
  50. data/spec/test_data/input/res3_image1.jp2 +0 -0
  51. data/spec/test_data/input/res3_image1.tif +0 -0
  52. data/spec/test_data/input/res3_teifile.txt +0 -1
  53. data/spec/test_data/input/test.pdf +0 -1
  54. data/spec/test_data/input/test.svg +0 -2
  55. data/spec/test_data/input/test2.jp2 +0 -0
  56. data/spec/test_data/input/test2.tif +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e964d66148904c190829abd7d9c65d09459405f184a48a2350602d1f4c6b6a5f
4
- data.tar.gz: 85fca1341b29f0c3f5b3858b419e0273754de1a47140b5ae36d2cbf2a77feea4
3
+ metadata.gz: 101baff5dcb53ae691341818de800b9836bc5c2db2483b3cdac08afa8fed479e
4
+ data.tar.gz: 0265e4b3d35ecf91a07b48129e4485e9844e6e1c940a08ae4f32246b209d2260
5
5
  SHA512:
6
- metadata.gz: f2cf693279f7c43392f92b3dd8bf28df4baca673276c3c96208b420c6ec26415b37b9498149a0ee6fe8ff4606046768582107f1e71b66199f04463b8f5dec918
7
- data.tar.gz: fcdc3f9041410416893e8ba1258c677a9eb0f6ede6eb833deb74f9dcb30e005d226d4486419a6fc2a1ae24b9e0ceda579e1acb7f189cf022af822fc32e275fa6
6
+ metadata.gz: fa0814a3a51d7d98f7eeb91611193e367accb4161ab18967b1afdb7caeb54476994f078ed58eff684dfba37dd2358a75fba98b181df74f165f82c65537723ebc
7
+ data.tar.gz: 91272e14724ff23ac668bf65339f29a272606712da691a7e13018d70c7e2a00ac8d242723ae6b4a9e05007543174e43e6ade6abb8f71a922ff9a4f4b230b10bb
@@ -0,0 +1,14 @@
1
+ version: 2.1
2
+ orbs:
3
+ ruby-rails: sul-dlss/ruby-rails@3.1.2
4
+ workflows:
5
+ build:
6
+ jobs:
7
+ - ruby-rails/lint-gem:
8
+ name: lint
9
+ - ruby-rails/test-gem:
10
+ name: test
11
+ before-test:
12
+ - run:
13
+ name: Install exiftool
14
+ command: curl -L http://cpanmin.us | perl - --sudo Image::ExifTool
@@ -4,7 +4,7 @@
4
4
 
5
5
  ## How was this change tested? 🤨
6
6
 
7
- ⚡ ⚠ If this change has cross service impact, ***run [integration tests](https://github.com/sul-dlss/infrastructure-integration-test) that do accessioning*** and/or test in [stage|qa] environment, in addition to specs. ⚡
7
+ ⚡ ⚠ If this change has cross service impact, ***run [integration tests](https://github.com/sul-dlss/infrastructure-integration-test) that do file accessioning*** (e.g. create_preassembly_image_spec) and/or test in [stage|qa] environment, in addition to specs. ⚡
8
8
 
9
9
 
10
10
 
data/.gitignore CHANGED
@@ -10,4 +10,3 @@ log/*
10
10
  pkg/*
11
11
  tags
12
12
  tmp
13
- Gemfile.lock
data/.rubocop.yml CHANGED
@@ -2,27 +2,39 @@ inherit_from: .rubocop_todo.yml
2
2
  require: rubocop-rspec
3
3
 
4
4
  AllCops:
5
- TargetRubyVersion: 2.5
6
-
7
- RSpec/ContextWording:
8
- Enabled: false # too dogmatic
5
+ TargetRubyVersion: 3.0
6
+ DisplayCopNames: true
7
+ Exclude:
8
+ - 'Gemfile.lock'
9
+ - '**/*.md'
10
+ - 'vendor/**/*' # avoid running rubocop on cached bundler
9
11
 
10
- RSpec/ExampleLength:
11
- Max: 25
12
+ Layout/LineLength:
13
+ Max: 120
12
14
 
13
- # we like 'expect(x).to receive' better than 'have_received'
14
- RSpec/MessageSpies:
15
- Enabled: false
15
+ Naming/FileName:
16
+ Exclude:
17
+ - 'lib/assembly-objectfile.rb'
16
18
 
17
- RSpec/NestedGroups:
18
- Max: 4 # default: 3
19
+ Naming/PredicateName:
20
+ NamePrefix:
21
+ - 'is_'
19
22
 
20
23
  Metrics/BlockLength:
21
24
  Exclude:
22
25
  - 'spec/**/*.rb'
23
26
  - '**/*.gemspec'
24
27
 
25
- Gemspec/DateAssignment: # (new in 1.10)
28
+ RSpec/ExampleLength:
29
+ Max: 10
30
+
31
+ RSpec/MultipleExpectations:
32
+ Max: 10
33
+
34
+ RSpec/NestedGroups:
35
+ Max: 4
36
+
37
+ Gemspec/DeprecatedAttributeAssignment: # (new in 1.10)
26
38
  Enabled: true
27
39
 
28
40
  Layout/SpaceAroundMethodCallOperator:
@@ -135,3 +147,96 @@ Style/RedundantArgument: # (new in 1.4)
135
147
 
136
148
  Style/SwapValues: # (new in 1.1)
137
149
  Enabled: true
150
+
151
+ Gemspec/RequireMFA: # new in 1.23
152
+ Enabled: true
153
+ Layout/LineEndStringConcatenationIndentation: # new in 1.18
154
+ Enabled: true
155
+ Lint/AmbiguousOperatorPrecedence: # new in 1.21
156
+ Enabled: true
157
+ Lint/AmbiguousRange: # new in 1.19
158
+ Enabled: true
159
+ Lint/EmptyInPattern: # new in 1.16
160
+ Enabled: true
161
+ Lint/IncompatibleIoSelectWithFiberScheduler: # new in 1.21
162
+ Enabled: true
163
+ Lint/RequireRelativeSelfPath: # new in 1.22
164
+ Enabled: true
165
+ Lint/UselessRuby2Keywords: # new in 1.23
166
+ Enabled: true
167
+ Naming/BlockForwarding: # new in 1.24
168
+ Enabled: true
169
+ Security/IoMethods: # new in 1.22
170
+ Enabled: true
171
+ Style/FileRead: # new in 1.24
172
+ Enabled: true
173
+ Style/FileWrite: # new in 1.24
174
+ Enabled: true
175
+ Style/InPatternThen: # new in 1.16
176
+ Enabled: true
177
+ Style/MapToHash: # new in 1.24
178
+ Enabled: true
179
+ Style/MultilineInPatternThen: # new in 1.16
180
+ Enabled: true
181
+ Style/NumberedParameters: # new in 1.22
182
+ Enabled: true
183
+ Style/NumberedParametersLimit: # new in 1.22
184
+ Enabled: true
185
+ Style/OpenStructUse: # new in 1.23
186
+ Enabled: true
187
+ Style/QuotedSymbols: # new in 1.16
188
+ Enabled: true
189
+ Style/RedundantSelfAssignmentBranch: # new in 1.19
190
+ Enabled: true
191
+ Style/SelectByRegexp: # new in 1.22
192
+ Enabled: true
193
+ Style/StringChars: # new in 1.12
194
+ Enabled: true
195
+ RSpec/BeEq: # new in 2.9.0
196
+ Enabled: true
197
+ RSpec/BeNil: # new in 2.9.0
198
+ Enabled: true
199
+ RSpec/ExcessiveDocstringSpacing: # new in 2.5
200
+ Enabled: true
201
+ RSpec/IdenticalEqualityAssertion: # new in 2.4
202
+ Enabled: true
203
+ RSpec/SubjectDeclaration: # new in 2.5
204
+ Enabled: true
205
+ RSpec/FactoryBot/SyntaxMethods: # new in 2.7
206
+ Enabled: true
207
+ RSpec/Rails/AvoidSetupHook: # new in 2.4
208
+ Enabled: true
209
+
210
+ Lint/RefinementImportMethods: # new in 1.27
211
+ Enabled: true
212
+ Security/CompoundHash: # new in 1.28
213
+ Enabled: true
214
+ Style/EnvHome: # new in 1.29
215
+ Enabled: true
216
+ Style/FetchEnvVar: # new in 1.28
217
+ Enabled: true
218
+ Style/MapCompactWithConditionalBlock: # new in 1.30
219
+ Enabled: true
220
+ Style/NestedFileDirname: # new in 1.26
221
+ Enabled: true
222
+ Style/ObjectThen: # new in 1.28
223
+ Enabled: true
224
+ Style/RedundantInitialize: # new in 1.27
225
+ Enabled: true
226
+ RSpec/ChangeByZero: # new in 2.11.0
227
+ Enabled: true
228
+ RSpec/VerifiedDoubleReference: # new in 2.10.0
229
+ Enabled: true
230
+
231
+ Layout/LineContinuationLeadingSpace: # new in 1.31
232
+ Enabled: true
233
+ Layout/LineContinuationSpacing: # new in 1.31
234
+ Enabled: true
235
+ Lint/ConstantOverwrittenInRescue: # new in 1.31
236
+ Enabled: true
237
+ Lint/NonAtomicFileOperation: # new in 1.31
238
+ Enabled: true
239
+ RSpec/Capybara/SpecificMatcher: # new in 2.12
240
+ Enabled: true
241
+ RSpec/Rails/HaveHttpStatus: # new in 2.12
242
+ Enabled: true
data/.rubocop_todo.yml CHANGED
@@ -1,118 +1,12 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2021-04-26 18:43:37 UTC using RuboCop version 1.11.0.
3
+ # on 2022-07-19 19:06:39 UTC using RuboCop version 1.31.2.
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: 1
10
- Lint/UselessAssignment:
11
- Exclude:
12
- - 'config/boot.rb'
13
-
14
- # Offense count: 3
15
- # Configuration parameters: IgnoredMethods, CountRepeatedAttributes.
16
- Metrics/AbcSize:
17
- Max: 55
18
-
19
- # Offense count: 1
20
- # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
21
- # IgnoredMethods: refine
22
- Metrics/BlockLength:
23
- Max: 27
24
-
25
- # Offense count: 2
26
- # Configuration parameters: IgnoredMethods.
27
- Metrics/CyclomaticComplexity:
28
- Max: 14
29
-
30
- # Offense count: 4
31
- # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
32
- Metrics/MethodLength:
33
- Max: 31
34
-
35
9
  # Offense count: 1
36
10
  # Configuration parameters: CountComments, CountAsOne.
37
- Metrics/ModuleLength:
38
- Max: 120
39
-
40
- # Offense count: 1
41
- # Configuration parameters: CountKeywordArgs, MaxOptionalParameters.
42
- Metrics/ParameterLists:
43
- Max: 12
44
-
45
- # Offense count: 2
46
- # Configuration parameters: IgnoredMethods.
47
- Metrics/PerceivedComplexity:
48
- Max: 15
49
-
50
- # Offense count: 1
51
- # Configuration parameters: ExpectMatchingDefinition, CheckDefinitionPathHierarchy, Regex, IgnoreExecutableScripts, AllowedAcronyms.
52
- # AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
53
- Naming/FileName:
54
- Exclude:
55
- - 'lib/assembly-objectfile.rb'
56
-
57
- # Offense count: 1
58
- # Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros.
59
- # NamePrefix: is_, has_, have_
60
- # ForbiddenPrefixes: is_, has_, have_
61
- # AllowedMethods: is_a?
62
- # MethodDefinitionMacros: define_method, define_singleton_method
63
- Naming/PredicateName:
64
- Exclude:
65
- - 'spec/**/*'
66
- - 'lib/assembly-objectfile/object_fileable.rb'
67
-
68
- # Offense count: 9
69
- # Configuration parameters: Max.
70
- RSpec/ExampleLength:
71
- Exclude:
72
- - 'spec/content_metadata_spec.rb'
73
-
74
- # Offense count: 2
75
- # Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
76
- # Include: **/*_spec*rb*, **/spec/**/*
77
- RSpec/FilePath:
78
- Exclude:
79
- - 'spec/content_metadata_spec.rb'
80
- - 'spec/object_file_spec.rb'
81
-
82
- # Offense count: 74
83
- # Configuration parameters: AssignmentOnly.
84
- RSpec/InstanceVariable:
85
- Exclude:
86
- - 'spec/object_file_spec.rb'
87
-
88
- # Offense count: 40
89
- RSpec/MultipleExpectations:
90
- Max: 29
91
-
92
- # Offense count: 2
93
- RSpec/RepeatedDescription:
94
- Exclude:
95
- - 'spec/object_file_spec.rb'
96
-
97
- # Offense count: 2
98
- RSpec/RepeatedExample:
99
- Exclude:
100
- - 'spec/object_file_spec.rb'
101
-
102
- # Offense count: 8
103
- RSpec/RepeatedExampleGroupDescription:
104
- Exclude:
105
- - 'spec/content_metadata_spec.rb'
106
-
107
- # Offense count: 2
108
- # Cop supports --auto-correct.
109
- Style/CommentedKeyword:
110
- Exclude:
111
- - 'lib/assembly-objectfile/content_metadata.rb'
112
-
113
- # Offense count: 122
114
- # Cop supports --auto-correct.
115
- # Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
116
- # URISchemes: http, https
117
- Layout/LineLength:
118
- Max: 277
11
+ Metrics/ClassLength:
12
+ Max: 118
data/Gemfile.lock ADDED
@@ -0,0 +1,97 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ assembly-objectfile (2.1.0)
5
+ activesupport (>= 5.2.0)
6
+ mime-types (> 3)
7
+ mini_exiftool
8
+
9
+ GEM
10
+ remote: http://rubygems.org/
11
+ specs:
12
+ activesupport (7.0.3.1)
13
+ concurrent-ruby (~> 1.0, >= 1.0.2)
14
+ i18n (>= 1.6, < 2)
15
+ minitest (>= 5.1)
16
+ tzinfo (~> 2.0)
17
+ ast (2.4.2)
18
+ byebug (11.1.3)
19
+ coderay (1.1.3)
20
+ concurrent-ruby (1.1.10)
21
+ diff-lcs (1.5.0)
22
+ docile (1.4.0)
23
+ i18n (1.12.0)
24
+ concurrent-ruby (~> 1.0)
25
+ json (2.6.2)
26
+ method_source (1.0.0)
27
+ mime-types (3.4.1)
28
+ mime-types-data (~> 3.2015)
29
+ mime-types-data (3.2022.0105)
30
+ mini_exiftool (2.10.2)
31
+ minitest (5.16.2)
32
+ parallel (1.22.1)
33
+ parser (3.1.2.0)
34
+ ast (~> 2.4.1)
35
+ pry (0.13.1)
36
+ coderay (~> 1.1)
37
+ method_source (~> 1.0)
38
+ pry-byebug (3.9.0)
39
+ byebug (~> 11.0)
40
+ pry (~> 0.13.0)
41
+ rainbow (3.1.1)
42
+ rake (13.0.6)
43
+ regexp_parser (2.5.0)
44
+ rexml (3.2.5)
45
+ rspec (3.11.0)
46
+ rspec-core (~> 3.11.0)
47
+ rspec-expectations (~> 3.11.0)
48
+ rspec-mocks (~> 3.11.0)
49
+ rspec-core (3.11.0)
50
+ rspec-support (~> 3.11.0)
51
+ rspec-expectations (3.11.0)
52
+ diff-lcs (>= 1.2.0, < 2.0)
53
+ rspec-support (~> 3.11.0)
54
+ rspec-mocks (3.11.1)
55
+ diff-lcs (>= 1.2.0, < 2.0)
56
+ rspec-support (~> 3.11.0)
57
+ rspec-support (3.11.0)
58
+ rubocop (1.31.2)
59
+ json (~> 2.3)
60
+ parallel (~> 1.10)
61
+ parser (>= 3.1.0.0)
62
+ rainbow (>= 2.2.2, < 4.0)
63
+ regexp_parser (>= 1.8, < 3.0)
64
+ rexml (>= 3.2.5, < 4.0)
65
+ rubocop-ast (>= 1.18.0, < 2.0)
66
+ ruby-progressbar (~> 1.7)
67
+ unicode-display_width (>= 1.4.0, < 3.0)
68
+ rubocop-ast (1.19.1)
69
+ parser (>= 3.1.1.0)
70
+ rubocop-rspec (2.12.1)
71
+ rubocop (~> 1.31)
72
+ ruby-progressbar (1.11.0)
73
+ simplecov (0.21.2)
74
+ docile (~> 1.1)
75
+ simplecov-html (~> 0.11)
76
+ simplecov_json_formatter (~> 0.1)
77
+ simplecov-html (0.12.3)
78
+ simplecov_json_formatter (0.1.4)
79
+ tzinfo (2.0.4)
80
+ concurrent-ruby (~> 1.0)
81
+ unicode-display_width (2.2.0)
82
+
83
+ PLATFORMS
84
+ ruby
85
+
86
+ DEPENDENCIES
87
+ assembly-objectfile!
88
+ byebug
89
+ pry-byebug
90
+ rake
91
+ rspec (~> 3.0)
92
+ rubocop (~> 1.25)
93
+ rubocop-rspec
94
+ simplecov
95
+
96
+ BUNDLED WITH
97
+ 2.3.17
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://travis-ci.com/sul-dlss/assembly-objectfile.svg?branch=main)](https://travis-ci.com/sul-dlss/assembly-objectfile)
1
+ [![CircleCI](https://circleci.com/gh/sul-dlss/assembly-objectfile/tree/main.svg?style=svg)](https://circleci.com/gh/sul-dlss/assembly-objectfile/tree/main)
2
2
  [![Test Coverage](https://api.codeclimate.com/v1/badges/2310962acce78d78e76c/test_coverage)](https://codeclimate.com/github/sul-dlss/assembly-objectfile/test_coverage)
3
3
  [![Maintainability](https://api.codeclimate.com/v1/badges/2310962acce78d78e76c/maintainability)](https://codeclimate.com/github/sul-dlss/assembly-objectfile/maintainability)
4
4
  [![Gem Version](https://badge.fury.io/rb/assembly-objectfile.svg)](https://badge.fury.io/rb/assembly-objectfile)
@@ -8,15 +8,15 @@
8
8
  ## Overview
9
9
  This gem contains classes used by the Stanford University Digital Library to
10
10
  perform file operations necessary for accessioning of content. It is also
11
- used by related gems to perform content type specific operations (such as jp2
12
- generation).
11
+ used by related gems that perform content type specific operations (e.g.
12
+ assembly-image for jp2 generation).
13
13
 
14
14
  ## Usage
15
15
 
16
16
  The gem currently has methods for:
17
17
  * filesize
18
- * exif
19
- * generate content metadata
18
+ * mimetype
19
+ * exif - consumers use ExifTool to get file information
20
20
 
21
21
  ## Running tests
22
22
 
@@ -34,8 +34,8 @@ rake release
34
34
 
35
35
  1. Exiftool
36
36
 
37
- RHEL: (RPM to install comming soon) Download latest version from:
38
- http://www.sno.phy.queensu.ca/~phil/exiftool
37
+ RHEL: (RPM to install coming soon) Download latest version from:
38
+ https://exiftool.org/
39
39
 
40
40
  tar -xf Image-ExifTool-#.##.tar.gz
41
41
  cd Image-ExifTool-#.##
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  $LOAD_PATH.push File.expand_path('lib', __dir__)
4
- require 'assembly-objectfile/version'
4
+ require 'assembly/object_file/version'
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = 'assembly-objectfile'
@@ -10,30 +10,27 @@ Gem::Specification.new do |s|
10
10
  s.authors = ['Peter Mangiafico', 'Renzo Sanchez-Silva', 'Monty Hindman', 'Tony Calavano']
11
11
  s.email = ['pmangiafico@stanford.edu']
12
12
  s.homepage = 'https://github.com/sul-dlss/assembly-objectfile'
13
- s.summary = 'Ruby immplementation of file services needed to prepare objects to be accessioned in SULAIR digital library'
13
+ s.summary = 'Ruby implementation of file services needed to prepare objects to be accessioned ' \
14
+ 'into the Stanford Digital Repository'
14
15
  s.description = 'Get exif data, file sizes and more.'
15
16
  s.license = 'ALv2'
17
+ s.metadata['rubygems_mfa_required'] = 'true'
16
18
 
17
19
  s.files = `git ls-files`.split("\n")
18
- s.test_files = `git ls-files -- spec/*`.split("\n")
19
20
  s.bindir = 'exe'
20
21
  s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
22
  s.require_paths = ['lib']
22
23
 
23
- s.required_ruby_version = '>= 2.5', '< 4'
24
+ s.required_ruby_version = '>= 3.0'
24
25
 
25
26
  s.add_dependency 'activesupport', '>= 5.2.0'
26
- s.add_dependency 'deprecation'
27
- s.add_dependency 'dry-struct', '~> 1.0'
28
- s.add_dependency 'dry-types', '~> 1.1'
29
27
  s.add_dependency 'mime-types', '> 3'
30
28
  s.add_dependency 'mini_exiftool'
31
- s.add_dependency 'nokogiri'
32
29
 
33
- s.add_development_dependency 'json'
30
+ s.add_development_dependency 'pry-byebug'
34
31
  s.add_development_dependency 'rake'
35
32
  s.add_development_dependency 'rspec', '~> 3.0'
36
- s.add_development_dependency 'rubocop'
33
+ s.add_development_dependency 'rubocop', '~> 1.25'
37
34
  s.add_development_dependency 'rubocop-rspec'
38
- s.add_development_dependency 'simplecov', '~> 0.17.0' # CodeClimate cannot use SimpleCov >= 0.18.0 for generating test coverage
35
+ s.add_development_dependency 'simplecov'
39
36
  end
data/config/boot.rb CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  require 'rubygems'
4
4
 
5
- environment = ENV['ENVIRONMENT'] ||= 'development'
6
5
  project_root = File.expand_path("#{File.dirname(__FILE__)}/..")
7
6
 
8
7
  # Load config for current environment.
@@ -3,7 +3,7 @@
3
3
  # Main Assembly namespace
4
4
  module Assembly
5
5
  class ObjectFile
6
- # Project version number
7
- VERSION = '1.12.0'
6
+ # Gem version
7
+ VERSION = '2.1.0'
8
8
  end
9
9
  end