assembly-objectfile 1.12.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
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