mimemagic 0.3.7 → 0.3.9

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: f6da483b1c1d4378db22986ec169a3ec569d138a8ab29f5daeb065af66d39fbd
4
- data.tar.gz: e987b92b51834ade1b3529b6cb7761d444d6e7089c070e2324ce97e9a22d135c
3
+ metadata.gz: 1d84538302b0c1f003f3e36f11e0e2835ca9b540a6e9a1d4a47b924fdf4776e6
4
+ data.tar.gz: 6d93e1248f0316bc5044ddd0e8d52de3578d3a75421b157a5de2e3679a091ea0
5
5
  SHA512:
6
- metadata.gz: 250747be3d00f5deb7d0fef8cb6682b8f7589c26b640192aa4f53d6ee4025119063a59d64e2eea20aafb31e4abc231042ce3d1bca35555f8b6e94be220205aa8
7
- data.tar.gz: 24a9b36f0ff3c788ec4f62e97e9526ec93b4b71625e3f722bc0b1d234fa879ee4ce7287913618471d8c8dedf8693eebfa1081afbd3933233ff5a9a7214018dd7
6
+ metadata.gz: 4df9042b85cb9ad4a775eb16a7b0818c7968e231c461acf03bb2d6e23aaacdb18d01949816be8f5978f963ce0285d59a3b393124c66b880b0eec5d0625642606
7
+ data.tar.gz: 52c7730c100af91b4231850ddc733b896b56db96513cc9661d984884bb19c61c46f1210959bb2608666488141d1eb54e33b610ebee9d3654d4c8f7b192ba0a00
data/CHANGELOG.md CHANGED
@@ -18,6 +18,18 @@ None
18
18
 
19
19
  None
20
20
 
21
+ ## 0.3.9 (2021-03-25)
22
+
23
+ * Resolve issues parsing the version of freedesktop.org.xml shipped with
24
+ Ubuntu Trusty.
25
+
26
+ * Make Rake a runtime dependency.
27
+
28
+ ## 0.3.8 (2021-03-25)
29
+
30
+ Relax the dependency on Nokogiri to something less specific in order
31
+ to avoid conflicting with other dependencies in people's applications.
32
+
21
33
  ## 0.3.7 (2021-03-25)
22
34
 
23
35
  Add a dependency on having a preinstalled version of the fd.o shared
@@ -9,13 +9,13 @@ def locate_mime_database
9
9
  "/usr/share/mime/packages/freedesktop.org.xml"
10
10
  ].compact
11
11
  path = possible_paths.find { |candidate| File.exist?(candidate) }
12
-
12
+
13
13
  return path unless path.nil?
14
- raise(<<~ERROR)
14
+ raise(<<-ERROR.gsub(/^ {3}/, ""))
15
15
  Could not find MIME type database in the following locations: #{possible_paths}
16
-
17
- Ensure you have either installed the shared-mime-types package for your distribution, or
18
- obtain a version of freedesktop.org.xml and set FREEDESKTOP_MIME_TYPES_PATH to the location
16
+
17
+ Ensure you have either installed the shared-mime-info package for your distribution, or
18
+ obtain a version of freedesktop.org.xml and set FREEDESKTOP_MIME_TYPES_PATH to the location
19
19
  of that file.
20
20
  ERROR
21
21
  end
@@ -30,4 +30,4 @@ task :default do
30
30
  end
31
31
  })
32
32
  end
33
- end
33
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+ # Extra magic
3
+
4
+ [['application/vnd.openxmlformats-officedocument.presentationml.presentation', [[0, "PK\003\004", [[0..5000, '[Content_Types].xml', [[0..5000, 'ppt/']]]]]]],
5
+ ['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', [[0, "PK\003\004", [[0..5000, '[Content_Types].xml', [[0..5000, 'xl/']]]]]]],
6
+ ['application/vnd.openxmlformats-officedocument.wordprocessingml.document', [[0, "PK\003\004", [[0..5000, '[Content_Types].xml', [[0..5000, 'word/']]]]]]]].each do |magic|
7
+ MimeMagic.add(magic[0], magic: magic[1])
8
+ end
@@ -26,7 +26,16 @@ class MimeMagic
26
26
  offset = offset.size == 2 ? offset[0]..offset[1] : offset[0]
27
27
  case type
28
28
  when 'string'
29
- value.gsub!(/\\(x[\dA-Fa-f]{1,2}|0\d{1,3}|\d{1,3}|.)/) { eval("\"\\#{$1}\"") }
29
+ # This *one* pattern match, in the entirety of fd.o's mime types blows up the parser
30
+ # because of the escape character \c, so right here we have a hideous hack to
31
+ # accommodate that.
32
+ if value == '\chapter'
33
+ '\chapter'
34
+ else
35
+ value.gsub!(/\\(x[\dA-Fa-f]{1,2}|0\d{1,3}|\d{1,3}|.)/) {
36
+ eval("\"\\#{$1}\"")
37
+ }
38
+ end
30
39
  when 'big16'
31
40
  value = str2int(value)
32
41
  value = ((value >> 8).chr + (value & 0xFF).chr)
@@ -1,5 +1,5 @@
1
1
  class MimeMagic
2
2
  # MimeMagic version string
3
3
  # @api public
4
- VERSION = '0.3.7'
4
+ VERSION = '0.3.9'
5
5
  end
data/mimemagic.gemspec CHANGED
@@ -19,10 +19,10 @@ Gem::Specification.new do |s|
19
19
  s.homepage = 'https://github.com/mimemagicrb/mimemagic'
20
20
  s.license = 'MIT'
21
21
 
22
- s.add_dependency('nokogiri', '~> 1.11.2')
22
+ s.add_dependency('nokogiri', '~> 1')
23
+ s.add_dependency('rake')
23
24
 
24
25
  s.add_development_dependency('minitest', '~> 5.14')
25
- s.add_development_dependency('rake', '~> 13.0')
26
26
 
27
27
  if s.respond_to?(:metadata)
28
28
  s.metadata['changelog_uri'] = "https://github.com/mimemagicrb/mimemagic/blob/master/CHANGELOG.md"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mimemagic
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.7
4
+ version: 0.3.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Mendler
@@ -17,42 +17,42 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 1.11.2
20
+ version: '1'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 1.11.2
27
+ version: '1'
28
28
  - !ruby/object:Gem::Dependency
29
- name: minitest
29
+ name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - "~>"
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
- version: '5.14'
35
- type: :development
34
+ version: '0'
35
+ type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - "~>"
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: '5.14'
41
+ version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
- name: rake
43
+ name: minitest
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: '13.0'
48
+ version: '5.14'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: '13.0'
55
+ version: '5.14'
56
56
  description: Fast mime detection by extension or content in pure ruby (Uses freedesktop.org.xml
57
57
  shared-mime-info database)
58
58
  email: