mini_exiftool 2.10.4 → 2.12.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d02a99b3bb57a80fdd788fee4d19730b444733abba15521b3f82182c1616e2a2
4
- data.tar.gz: c0123ea7ed1a3f61b4a0a26efaba5b25633b8219d9c4899ad76da4d295199d38
3
+ metadata.gz: e7dca9467c295a50ea6b98a4ff39da9bed396f914c507ca52097de8ad6ce7018
4
+ data.tar.gz: af9d622e53dde26096285f120bfd78b35082ecdac9bf3360d5696863de386ceb
5
5
  SHA512:
6
- metadata.gz: af633fd3e440b6d264fe8b0b94a8c5e9ce06270cef77eed380474eff9541f63cee8f8b0521ad9637d46d4aff7b06de681e0d9fee28ea1af8babf5d3ad5269fac
7
- data.tar.gz: a96a9ea4a784ba41b57383e72f922c06f525ec7440896bca8d5dfc33ae6fef55f66dd48d3e46429dbf4b34a281485a2fc6afe96812903f82cfac0e5c13b898e6
6
+ metadata.gz: d57db9046a9d94127c53a6f99265a819d86fe5abb1e5dc18ee82ed29a10a93b355084114d2165f537aafbe7c88e9983a87a2cf8df2f8113e715e2a07e5e77a78
7
+ data.tar.gz: b2af043e5674d0fc45b537b676f64db74f5972a64329425071380636b6046e35373719e1810cf1f97cea05a40256232b1c263d39ca43fc4a12098fbac14d2f59
data/Changelog CHANGED
@@ -1,3 +1,12 @@
1
+ 2.12.0
2
+ - Make mini_exiftool Ruby 3.5 ready.
3
+ - Minimize gem file size.
4
+
5
+ 2.11.0
6
+ - Fix an error with weird timestamps.
7
+ Thanks to philister for fixing it (github pull request #45).
8
+ - Set frozen_string_literal to false to work with newer Ruby versions.
9
+
1
10
  2.10.4
2
11
  - Maintenance release.
3
12
 
data/lib/mini_exiftool.rb CHANGED
@@ -1,4 +1,5 @@
1
- # -- encoding: utf-8 --
1
+ # encoding: utf-8
2
+ # frozen_string_literal: false
2
3
  #
3
4
  # MiniExiftool
4
5
  #
@@ -27,7 +28,7 @@ require 'yaml'
27
28
  # Simple OO access to the ExifTool command-line application.
28
29
  class MiniExiftool
29
30
 
30
- VERSION = '2.10.4'
31
+ VERSION = '2.12.0'
31
32
 
32
33
  # Name of the ExifTool command-line application
33
34
  @@cmd = 'exiftool'
@@ -457,7 +458,7 @@ class MiniExiftool
457
458
  else
458
459
  raise MiniExiftool::Error.new("Value #{@opts[:timestamps]} not allowed for option timestamps.")
459
460
  end
460
- rescue ArgumentError
461
+ rescue ArgumentError, RangeError
461
462
  value = false
462
463
  end
463
464
  when /^\+\d+\.\d+$/
metadata CHANGED
@@ -1,15 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_exiftool
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.4
4
+ version: 2.12.0
5
5
  platform: ruby
6
+ original_platform: ''
6
7
  authors:
7
8
  - Jan Friedrich
8
- autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-06 00:00:00.000000000 Z
11
+ date: 2024-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ostruct
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.6.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.6.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: pstore
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.1.3
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 0.1.3
13
41
  - !ruby/object:Gem::Dependency
14
42
  name: rake
15
43
  requirement: !ruby/object:Gem::Requirement
@@ -30,14 +58,14 @@ dependencies:
30
58
  requirements:
31
59
  - - "~>"
32
60
  - !ruby/object:Gem::Version
33
- version: '2.17'
61
+ version: '3.0'
34
62
  type: :development
35
63
  prerelease: false
36
64
  version_requirements: !ruby/object:Gem::Requirement
37
65
  requirements:
38
66
  - - "~>"
39
67
  - !ruby/object:Gem::Version
40
- version: '2.17'
68
+ version: '3.0'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: test-unit
43
71
  requirement: !ruby/object:Gem::Requirement
@@ -76,12 +104,10 @@ executables: []
76
104
  extensions: []
77
105
  extra_rdoc_files: []
78
106
  files:
79
- - "./.aspell.pws"
80
107
  - COPYING
81
108
  - Changelog
82
109
  - Gemfile
83
110
  - README.md
84
- - Rakefile
85
111
  - Tutorial.md
86
112
  - examples/copy_icc_profile.rb
87
113
  - examples/external_photo.rb
@@ -89,52 +115,20 @@ files:
89
115
  - examples/shift_time.rb
90
116
  - examples/show_speedup_with_fast_option.rb
91
117
  - lib/mini_exiftool.rb
92
- - mini_exiftool.gemspec
93
- - regtest/read_all.rb
94
- - regtest/read_all.yml
95
- - test/data/Bad_PreviewIFD.jpg
96
- - test/data/Canon.jpg
97
- - test/data/INFORMATION
98
- - test/data/invalid_byte_sequence_in_utf8.json
99
- - test/data/invalid_rational.json
100
- - test/data/test.jpg
101
- - test/data/test.jpg.json
102
- - test/data/test_coordinates.jpg
103
- - test/data/test_encodings.jpg
104
- - test/data/test_special_dates.jpg
105
- - test/helpers_for_test.rb
106
- - test/test_bad_preview_ifd.rb
107
- - test/test_class_methods.rb
108
- - test/test_composite.rb
109
- - test/test_copy_tags_from.rb
110
- - test/test_dumping.rb
111
- - test/test_encodings.rb
112
- - test/test_filename_access.rb
113
- - test/test_from_hash.rb
114
- - test/test_instance_methods.rb
115
- - test/test_invalid_byte_sequence_in_utf8.rb
116
- - test/test_invalid_rational.rb
117
- - test/test_io.rb
118
- - test/test_pstore.rb
119
- - test/test_read.rb
120
- - test/test_read_coordinates.rb
121
- - test/test_read_numerical.rb
122
- - test/test_save.rb
123
- - test/test_special.rb
124
- - test/test_special_dates.rb
125
- - test/test_write.rb
126
118
  homepage: https://github.com/janfri/mini_exiftool
127
119
  licenses:
128
120
  - LGPL-2.1
129
- metadata: {}
121
+ metadata:
122
+ homepage_uri: https://github.com/janfri/mini_exiftool
123
+ source_code_uri: https://github.com/janfri/mini_exiftool
130
124
  post_install_message: |
131
125
  +-----------------------------------------------------------------------+
132
126
  | Please ensure you have installed exiftool at least version 7.65 |
133
- | and it's found in your PATH (Try "exiftool -ver" on your commandline).|
127
+ | and it's found in your PATH (Try 'exiftool -ver' on your commandline).|
134
128
  | For more details see |
135
- | https://exiftool.org/install.html |
129
+ | https://exiftool.org/install.html |
136
130
  | You need also Ruby 1.9 or higher. |
137
- | If you need support for Ruby 1.8 or exiftool prior 7.65 install |
131
+ | If you need support for Ruby < 1.9 or exiftool < 7.65 then install |
138
132
  | mini_exiftool version < 2.0.0. |
139
133
  +-----------------------------------------------------------------------+
140
134
  rdoc_options: []
@@ -144,15 +138,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
144
138
  requirements:
145
139
  - - ">="
146
140
  - !ruby/object:Gem::Version
147
- version: '0'
141
+ version: '1.9'
148
142
  required_rubygems_version: !ruby/object:Gem::Requirement
149
143
  requirements:
150
144
  - - ">="
151
145
  - !ruby/object:Gem::Version
152
146
  version: '0'
153
- requirements: []
154
- rubygems_version: 3.5.0.dev
155
- signing_key:
147
+ requirements:
148
+ - exiftool, version >= 7,65
149
+ rubygems_version: 3.6.0.dev
156
150
  specification_version: 4
157
151
  summary: This library is a wrapper for the ExifTool command-line application (https://exiftool.org).
158
152
  test_files: []
data/.aspell.pws DELETED
@@ -1,122 +0,0 @@
1
- personal_ws-1.1 en 121
2
- Barushev
3
- Bugfix
4
- CaptionAbstract
5
- CodedCharacterSet
6
- Cypriano
7
- DYNAX
8
- DateTime
9
- DateTimeOriginal
10
- Dungan
11
- ExifTool
12
- FNumber
13
- Fixnum
14
- Forwardable
15
- Friedrich
16
- GPS
17
- Gaelan
18
- Gemfile
19
- Gieseler
20
- Gitorious
21
- Henning
22
- Hinrich
23
- Horrocks
24
- Hoy
25
- JPEG
26
- JPEGs
27
- Joshfindit
28
- J�rome
29
- Krogmann
30
- Kulander
31
- MacRoman
32
- MiniExiftool
33
- MultiExiftool
34
- OO
35
- POSIX
36
- PStore
37
- Picturelife
38
- README
39
- Rau
40
- Refactoring
41
- Regexes
42
- Romahn
43
- Salzberg
44
- SemVer
45
- SemVerTag
46
- Soika
47
- Soutar
48
- StandardError
49
- Stjernstrom
50
- SubjectLocation
51
- SupplementalCategories
52
- Tempfile
53
- TestEscapeFilename
54
- UTF
55
- Wil
56
- acki
57
- aiff
58
- atomar
59
- backport
60
- backticks
61
- bundler
62
- ccoenen
63
- cgat
64
- charset
65
- commandline
66
- coord
67
- customizable
68
- darwin
69
- datetimeoriginal
70
- dir
71
- echoe
72
- encod
73
- encodings
74
- exif
75
- exiftool
76
- filename
77
- filenames
78
- gemspec
79
- github
80
- gras
81
- icc
82
- io
83
- iptc
84
- jpg
85
- json
86
- jvradelis
87
- md
88
- metadata
89
- mfo
90
- mie
91
- multi
92
- neccessary
93
- params
94
- pdf
95
- photoshop
96
- png
97
- popen
98
- prerelease
99
- pstore
100
- ptore
101
- quicktime
102
- rb
103
- rdoc
104
- refactorings
105
- regtest
106
- releating
107
- robotmay
108
- rubyforge
109
- shellwords
110
- shioyama
111
- stderr
112
- stdout
113
- str
114
- timestamps
115
- uwe
116
- vorbis
117
- warings
118
- ws
119
- xmp
120
- yaml
121
- yardopts
122
- �ml�uts
data/Rakefile DELETED
@@ -1,40 +0,0 @@
1
- require 'rim/tire'
2
- require 'rim/version'
3
- require 'rim/regtest'
4
-
5
- $:.unshift 'lib'
6
- require 'mini_exiftool'
7
-
8
- Rim.setup do |p|
9
- p.name = 'mini_exiftool'
10
- p.version = MiniExiftool::VERSION
11
- p.authors = 'Jan Friedrich'
12
- p.email = 'janfri26@gmail.com'
13
- p.summary = 'This library is a wrapper for the ExifTool command-line application (https://exiftool.org).'
14
- p.description <<-END
15
- This library is a wrapper for the ExifTool command-line application
16
- (https://exiftool.org) written by Phil Harvey.
17
- It provides the full power of ExifTool to Ruby: reading and writing of
18
- EXIF-data, IPTC-data and XMP-data.
19
- END
20
- p.homepage = 'https://github.com/janfri/mini_exiftool'
21
- p.license = 'LGPL-2.1'
22
- p.gem_files << 'Tutorial.md'
23
- p.gem_files += FileList.new('examples/**')
24
- p.install_message = <<-END
25
- +-----------------------------------------------------------------------+
26
- | Please ensure you have installed exiftool at least version 7.65 |
27
- | and it's found in your PATH (Try "exiftool -ver" on your commandline).|
28
- | For more details see |
29
- | https://exiftool.org/install.html |
30
- | You need also Ruby 1.9 or higher. |
31
- | If you need support for Ruby 1.8 or exiftool prior 7.65 install |
32
- | mini_exiftool version < 2.0.0. |
33
- +-----------------------------------------------------------------------+
34
- END
35
- p.test_warning = false
36
- p.development_dependencies << 'test-unit'
37
- if p.feature_loaded? 'rim/aspell'
38
- p.aspell_files << 'Tutorial.md'
39
- end
40
- end
@@ -1,31 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- # stub: mini_exiftool 2.10.4 ruby lib
3
- #
4
- # This file is automatically generated by rim.
5
- # PLEASE DO NOT EDIT IT DIRECTLY!
6
- # Change the values in Rim.setup in Rakefile instead.
7
-
8
- Gem::Specification.new do |s|
9
- s.name = "mini_exiftool"
10
- s.version = "2.10.4"
11
-
12
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
13
- s.require_paths = ["lib"]
14
- s.authors = ["Jan Friedrich"]
15
- s.date = "2023-10-06"
16
- s.description = "This library is a wrapper for the ExifTool command-line application\n(https://exiftool.org) written by Phil Harvey.\nIt provides the full power of ExifTool to Ruby: reading and writing of\nEXIF-data, IPTC-data and XMP-data.\n"
17
- s.email = "janfri26@gmail.com"
18
- s.files = ["./.aspell.pws", "COPYING", "Changelog", "Gemfile", "README.md", "Rakefile", "Tutorial.md", "examples/copy_icc_profile.rb", "examples/external_photo.rb", "examples/print_portraits.rb", "examples/shift_time.rb", "examples/show_speedup_with_fast_option.rb", "lib/mini_exiftool.rb", "mini_exiftool.gemspec", "regtest/read_all.rb", "regtest/read_all.yml", "test/data", "test/data/Bad_PreviewIFD.jpg", "test/data/Canon.jpg", "test/data/INFORMATION", "test/data/invalid_byte_sequence_in_utf8.json", "test/data/invalid_rational.json", "test/data/test.jpg", "test/data/test.jpg.json", "test/data/test_coordinates.jpg", "test/data/test_encodings.jpg", "test/data/test_special_dates.jpg", "test/helpers_for_test.rb", "test/test_bad_preview_ifd.rb", "test/test_class_methods.rb", "test/test_composite.rb", "test/test_copy_tags_from.rb", "test/test_dumping.rb", "test/test_encodings.rb", "test/test_filename_access.rb", "test/test_from_hash.rb", "test/test_instance_methods.rb", "test/test_invalid_byte_sequence_in_utf8.rb", "test/test_invalid_rational.rb", "test/test_io.rb", "test/test_pstore.rb", "test/test_read.rb", "test/test_read_coordinates.rb", "test/test_read_numerical.rb", "test/test_save.rb", "test/test_special.rb", "test/test_special_dates.rb", "test/test_write.rb"]
19
- s.homepage = "https://github.com/janfri/mini_exiftool"
20
- s.licenses = ["LGPL-2.1"]
21
- s.post_install_message = "+-----------------------------------------------------------------------+\n| Please ensure you have installed exiftool at least version 7.65 |\n| and it's found in your PATH (Try \"exiftool -ver\" on your commandline).|\n| For more details see |\n| https://exiftool.org/install.html |\n| You need also Ruby 1.9 or higher. |\n| If you need support for Ruby 1.8 or exiftool prior 7.65 install |\n| mini_exiftool version < 2.0.0. |\n+-----------------------------------------------------------------------+\n"
22
- s.rubygems_version = "3.5.0.dev"
23
- s.summary = "This library is a wrapper for the ExifTool command-line application (https://exiftool.org)."
24
-
25
- s.specification_version = 4
26
-
27
- s.add_development_dependency(%q<rake>, [">= 0"])
28
- s.add_development_dependency(%q<rim>, ["~> 2.17"])
29
- s.add_development_dependency(%q<test-unit>, [">= 0"])
30
- s.add_development_dependency(%q<regtest>, ["~> 2"])
31
- end
data/regtest/read_all.rb DELETED
@@ -1,12 +0,0 @@
1
- require 'mini_exiftool'
2
- require 'regtest'
3
-
4
- Dir['test/data/*.jpg'].sort.each do |fn|
5
- Regtest.sample 'read ' << File.basename(fn) do
6
- h = MiniExiftool.new(fn).to_hash
7
- %w(FileModifyDate FileAccessDate FileInodeChangeDate FilePermissions).each do |tag|
8
- h.delete(tag)
9
- end
10
- h
11
- end
12
- end