ruby-magic 0.5.3 → 0.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +42 -1
- data/CONTRIBUTORS.md +2 -0
- data/COPYRIGHT +1 -1
- data/NOTICE +245 -180
- data/README.md +1 -3
- data/dependencies.yml +8 -8
- data/ext/magic/common.h +10 -2
- data/ext/magic/extconf.rb +23 -20
- data/ext/magic/ruby-magic.c +15 -3
- data/lib/magic/version.rb +3 -3
- data/lib/ruby-magic.rb +3 -0
- data/patches/libmagic/0001-Don-t-attempt-to-build-tests-documentation-and-Python-bindings.patch +44 -0
- data/ports/archives/file-5.44.tar.gz +0 -0
- metadata +19 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: da869b933af45fec81ddefbcb35a75e4856019c6a9a352508fc96b92e4a8fbc9
|
4
|
+
data.tar.gz: 5ddae92ffb976ceb006b425f140c79ab72a6e81f2605220ab7a495a6fae2e3a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '09f7b9c6389962422da7aa106c6f5c9c3f713388c414d0e2e4b68ce34d03751af53bacd1a17fc8c456ce3a7d2e67cb2993376653d6b47297736fae3a07c57120'
|
7
|
+
data.tar.gz: 021474e328de0d6984e7c1836f74fd53b71e59f1dcfc6994181f02a04b76020938a5e56f100ac7b8b9f835bd11642ebbd688d5afa415d17a719cdc184996dc78
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,38 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
7
7
|
|
8
8
|
## [Unreleased]
|
9
9
|
|
10
|
+
## [0.5.5] - 2023-01-23
|
11
|
+
|
12
|
+
### Changed
|
13
|
+
|
14
|
+
- Update to latest libmagic version (5.44).
|
15
|
+
- Update mini_portile2 to version 2.8.0.
|
16
|
+
- Update RDoc in the Ruby gemspec and the Rake task.
|
17
|
+
- Update PKG_CONFIG_PATH paths to include more platforms.
|
18
|
+
- Add new library flag called MAGIC_NO_COMPRESS_FORK.
|
19
|
+
- Add assert to ensure that the internal object is initialised.
|
20
|
+
- Reduce scope of some string variables.
|
21
|
+
- Relax rake-compiler and rake-compiler-dock dependencies.
|
22
|
+
- Only enable support for the GC compaction when there is platform support.
|
23
|
+
- Remove workaround for linux build per RCD.
|
24
|
+
- Work around Ruby 3.1 pkg_config limitations.
|
25
|
+
|
26
|
+
## [0.5.4] - 2022-01-28
|
27
|
+
|
28
|
+
### Added
|
29
|
+
|
30
|
+
- Added a pessimistic version pin of `rake-compiler` and `rake-compiler-dock` versions in `Gemfile`.
|
31
|
+
|
32
|
+
### Changed
|
33
|
+
|
34
|
+
- Removed _RubyGems_ version pin from the Gem gemspec file.
|
35
|
+
- Simplified the `.gitlab-ci.yml` used to run _CI_ remotely on _GitLab_.
|
36
|
+
- Enabled verbose log when cross-compiling a native Ruby Gem using the `rake-compiler-dock` Gem. This allows for commands run to be shown.
|
37
|
+
|
38
|
+
### Deprecated
|
39
|
+
|
40
|
+
- Retired support for Ruby version 2.5 as it has reached _End of Life_ (EOL).
|
41
|
+
|
10
42
|
## [0.5.3] - 2021-12-22
|
11
43
|
|
12
44
|
### Fixed
|
@@ -93,6 +125,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
93
125
|
|
94
126
|
- First version of Magic.
|
95
127
|
|
96
|
-
[Unreleased]: https://github.com/kwilczynski/ruby-magic/compare/v0.
|
128
|
+
[Unreleased]: https://github.com/kwilczynski/ruby-magic/compare/v0.5.4...HEAD
|
129
|
+
[0.5.4]: https://github.com/kwilczynski/ruby-magic/compare/v0.5.3...v0.5.4
|
130
|
+
[0.5.3]: https://github.com/kwilczynski/ruby-magic/compare/v0.5.2...v0.5.3
|
131
|
+
[0.5.2]: https://github.com/kwilczynski/ruby-magic/compare/v0.5.1...v0.5.2
|
132
|
+
[0.5.1]: https://github.com/kwilczynski/ruby-magic/compare/v0.5.0...v0.5.1
|
133
|
+
[0.5.0]: https://github.com/kwilczynski/ruby-magic/compare/v0.4.0...v0.5.0
|
134
|
+
[0.4.0]: https://github.com/kwilczynski/ruby-magic/compare/v0.3.2...v0.4.0
|
135
|
+
[0.3.2]: https://github.com/kwilczynski/ruby-magic/compare/v0.3.1...v0.3.2
|
136
|
+
[0.3.1]: https://github.com/kwilczynski/ruby-magic/compare/v0.3.0...v0.3.1
|
137
|
+
[0.3.0]: https://github.com/kwilczynski/ruby-magic/compare/v0.2.0...v0.3.0
|
97
138
|
[0.2.0]: https://github.com/kwilczynski/ruby-magic/compare/v0.1.0...v0.2.0
|
98
139
|
[0.1.0]: https://github.com/kwilczynski/ruby-magic/compare/29e6c26...v0.1.0
|
data/CONTRIBUTORS.md
CHANGED
@@ -7,8 +7,10 @@ of Ruby Magic. They are hereby acknowledged and collectively identified as "The
|
|
7
7
|
Ruby Magic Authors". Copyright is held by the original contributor according to
|
8
8
|
the versioning history; see [LICENSE](LICENSE) file.
|
9
9
|
|
10
|
+
- Antonio Terceiro ([@terceiro](https://github.com/terceiro))
|
10
11
|
- Igor Victor ([@gogainda](https://github.com/gogainda))
|
11
12
|
- John Hawthorn ([@jhawthorn](https://github.com/jhawthorn))
|
13
|
+
- Lars Kanis ([@larskanis](https://github.com/larskanis))
|
12
14
|
- Mike Dalessio ([@flavorjones](https://github.com/flavorjones))
|
13
15
|
- Shinya Maeda ([@dosuken123](https://github.com/dosuken123))
|
14
16
|
- Stan Hu ([@stanhu](https://github.com/stanhu))
|
data/COPYRIGHT
CHANGED
@@ -1 +1 @@
|
|
1
|
-
Copyright 2013-
|
1
|
+
Copyright 2013-2022 Krzysztof Wilczyński
|
data/NOTICE
CHANGED
@@ -1,21 +1,186 @@
|
|
1
1
|
Ruby Magic
|
2
|
-
Copyright 2013-
|
2
|
+
Copyright 2013-2022 Krzysztof Wilczyński
|
3
3
|
|
4
4
|
This product relies on and/or includes a number of Open Source software
|
5
5
|
projects, including those that have been modified.
|
6
6
|
|
7
|
-
*
|
7
|
+
* file
|
8
8
|
|
9
|
-
|
9
|
+
file(1) Command and the libmagic(3) library.
|
10
10
|
|
11
11
|
LICENSE:
|
12
|
-
|
12
|
+
BSD, CDDL
|
13
13
|
|
14
14
|
HOMEPAGE:
|
15
|
-
|
15
|
+
http://darwinsys.com/file
|
16
16
|
|
17
|
-
|
17
|
+
Copyright (c) Ian F. Darwin 1986, 1987, 1989, 1990, 1991, 1992, 1994, 1995.
|
18
|
+
Software written by Ian F. Darwin and others;
|
19
|
+
maintained 1994- Christos Zoulas.
|
20
|
+
|
21
|
+
This software is not subject to any export provision of the United States
|
22
|
+
Department of Commerce, and may be exported to any country or planet.
|
23
|
+
|
24
|
+
Redistribution and use in source and binary forms, with or without
|
25
|
+
modification, are permitted provided that the following conditions
|
26
|
+
are met:
|
27
|
+
1. Redistributions of source code must retain the above copyright
|
28
|
+
notice immediately at the beginning of the file, without modification,
|
29
|
+
this list of conditions, and the following disclaimer.
|
30
|
+
2. Redistributions in binary form must reproduce the above copyright
|
31
|
+
notice, this list of conditions and the following disclaimer in the
|
32
|
+
documentation and/or other materials provided with the distribution.
|
33
|
+
|
34
|
+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
35
|
+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
36
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
37
|
+
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
|
38
|
+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
39
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
40
|
+
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
41
|
+
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
42
|
+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
43
|
+
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
44
|
+
SUCH DAMAGE.
|
45
|
+
|
46
|
+
* guard
|
47
|
+
|
48
|
+
Guard is a command line tool to easily handle events on file system
|
49
|
+
modifications.
|
50
|
+
|
51
|
+
LICENSE:
|
52
|
+
MIT
|
53
|
+
|
54
|
+
HOMEPAGE:
|
55
|
+
https://github.com/guard/guard
|
56
|
+
|
57
|
+
Copyright (c) 2009-2016 Thibaud Guillaume-Gentil
|
58
|
+
|
59
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
60
|
+
a copy of this software and associated documentation files (the
|
61
|
+
"Software"), to deal in the Software without restriction, including
|
62
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
63
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
64
|
+
permit persons to whom the Software is furnished to do so, subject to
|
65
|
+
the following conditions:
|
66
|
+
|
67
|
+
The above copyright notice and this permission notice shall be
|
68
|
+
included in all copies or substantial portions of the Software.
|
69
|
+
|
70
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
71
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
72
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
73
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
74
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
75
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
76
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
77
|
+
|
78
|
+
* guard-bundler
|
79
|
+
|
80
|
+
Guard::Bundler automatically install/update your gem bundle when needed.
|
81
|
+
|
82
|
+
LICENSE:
|
83
|
+
MIT
|
84
|
+
|
85
|
+
HOMEPAGE:
|
86
|
+
https://github.com/guard/guard-bundler
|
87
|
+
|
88
|
+
Copyright (c) 2010-2014 Yann Lugrin, Rémy Coutable
|
89
|
+
|
90
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
91
|
+
a copy of this software and associated documentation files (the
|
92
|
+
"Software"), to deal in the Software without restriction, including
|
93
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
94
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
95
|
+
permit persons to whom the Software is furnished to do so, subject to
|
96
|
+
the following conditions:
|
97
|
+
|
98
|
+
The above copyright notice and this permission notice shall be
|
99
|
+
included in all copies or substantial portions of the Software.
|
100
|
+
|
101
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
102
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
103
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
104
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
105
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
106
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
107
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
108
|
+
|
109
|
+
* guard-rake
|
110
|
+
|
111
|
+
guard-rake runs a rake task when files change.
|
112
|
+
|
113
|
+
LICENSE:
|
114
|
+
MIT
|
115
|
+
|
116
|
+
HOMEPAGE:
|
117
|
+
https://github.com/rubyist/guard-rake
|
118
|
+
|
119
|
+
Copyright (c) 2011 Scott Barron
|
120
|
+
|
121
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
122
|
+
a copy of this software and associated documentation files (the
|
123
|
+
'Software'), to deal in the Software without restriction, including
|
124
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
125
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
126
|
+
permit persons to whom the Software is furnished to do so, subject to
|
127
|
+
the following conditions:
|
128
|
+
|
129
|
+
The above copyright notice and this permission notice shall be
|
130
|
+
included in all copies or substantial portions of the Software.
|
131
|
+
|
132
|
+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
133
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
134
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
135
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
136
|
+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
137
|
+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
138
|
+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
139
|
+
|
140
|
+
* mini_portile2
|
141
|
+
|
142
|
+
mini_portile and mini_portile2 - Simple autoconf builder for developers
|
143
|
+
|
144
|
+
LICENSE:
|
145
|
+
MIT
|
146
|
+
|
147
|
+
HOMEPAGE:
|
148
|
+
https://github.com/flavorjones/mini_portile
|
149
|
+
|
150
|
+
Copyright (c) 2011-2016 Luis Lavena and Mike Dalessio
|
151
|
+
|
152
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
153
|
+
a copy of this software and associated documentation files (the
|
154
|
+
"Software"), to deal in the Software without restriction, including
|
155
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
156
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
157
|
+
permit persons to whom the Software is furnished to do so, subject to
|
158
|
+
the following conditions:
|
159
|
+
|
160
|
+
The above copyright notice and this permission notice shall be
|
161
|
+
included in all copies or substantial portions of the Software.
|
162
|
+
|
163
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
164
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
165
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
166
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
167
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
168
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
169
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
170
|
+
|
171
|
+
* mocha
|
172
|
+
|
173
|
+
Mocha is a mocking and stubbing library for Ruby.
|
174
|
+
|
175
|
+
LICENSE:
|
176
|
+
The Ruby License, MIT
|
177
|
+
|
178
|
+
HOMEPAGE:
|
179
|
+
https://mocha.jamesmead.org/
|
18
180
|
|
181
|
+
Copyright Revieworld Ltd. 2006
|
182
|
+
|
183
|
+
Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
|
19
184
|
You can redistribute it and/or modify it under either the terms of the
|
20
185
|
2-clause BSDL (see the file BSDL), or the conditions below:
|
21
186
|
|
@@ -103,12 +268,78 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
103
268
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
104
269
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
105
270
|
|
271
|
+
* rake-compiler
|
272
|
+
|
273
|
+
Provide a standard and simplified way to build and package Ruby C and Java
|
274
|
+
extensions using Rake as glue.
|
275
|
+
|
276
|
+
LICENSE:
|
277
|
+
MIT
|
278
|
+
|
279
|
+
HOMEPAGE:
|
280
|
+
https://github.com/rake-compiler/rake-compiler
|
281
|
+
|
282
|
+
Copyright (c) 2008-2011 Luis Lavena.
|
283
|
+
|
284
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
285
|
+
a copy of this software and associated documentation files (the
|
286
|
+
"Software"), to deal in the Software without restriction, including
|
287
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
288
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
289
|
+
permit persons to whom the Software is furnished to do so, subject to
|
290
|
+
the following conditions:
|
291
|
+
|
292
|
+
The above copyright notice and this permission notice shall be
|
293
|
+
included in all copies or substantial portions of the Software.
|
294
|
+
|
295
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
296
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
297
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
298
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
299
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
300
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
301
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
302
|
+
|
303
|
+
* rake-compiler-dock
|
304
|
+
|
305
|
+
Easy to use and reliable cross compiler environment for building Windows,
|
306
|
+
Linux, Mac and JRuby binary gems.
|
307
|
+
|
308
|
+
LICENSE:
|
309
|
+
MIT
|
310
|
+
|
311
|
+
HOMEPAGE:
|
312
|
+
https://github.com/rake-compiler/rake-compiler-dock
|
313
|
+
|
314
|
+
Copyright (c) 2015 Lars Kanis
|
315
|
+
|
316
|
+
MIT License
|
317
|
+
|
318
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
319
|
+
a copy of this software and associated documentation files (the
|
320
|
+
"Software"), to deal in the Software without restriction, including
|
321
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
322
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
323
|
+
permit persons to whom the Software is furnished to do so, subject to
|
324
|
+
the following conditions:
|
325
|
+
|
326
|
+
The above copyright notice and this permission notice shall be
|
327
|
+
included in all copies or substantial portions of the Software.
|
328
|
+
|
329
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
330
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
331
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
332
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
333
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
334
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
335
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
336
|
+
|
106
337
|
* rdoc
|
107
338
|
|
108
339
|
RDoc - Ruby Documentation System.
|
109
340
|
|
110
341
|
LICENSE:
|
111
|
-
The Ruby License
|
342
|
+
The Ruby License, GPL-2.0
|
112
343
|
|
113
344
|
HOMEPAGE:
|
114
345
|
https://ruby.github.io/rdoc
|
@@ -171,18 +402,15 @@ version 2 (see the file GPL), or the conditions below:
|
|
171
402
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
172
403
|
PURPOSE.
|
173
404
|
|
174
|
-
*
|
175
|
-
|
176
|
-
Provide a standard and simplified way to build and package Ruby C and Java
|
177
|
-
extensions using Rake as glue.
|
405
|
+
* rubocop
|
178
406
|
|
179
407
|
LICENSE:
|
180
408
|
MIT
|
181
409
|
|
182
410
|
HOMEPAGE:
|
183
|
-
https://github.com/
|
411
|
+
https://github.com/rubocop-hq/rubocop
|
184
412
|
|
185
|
-
Copyright (c)
|
413
|
+
Copyright (c) 2012-22 Bozhidar Batsov
|
186
414
|
|
187
415
|
Permission is hereby granted, free of charge, to any person obtaining
|
188
416
|
a copy of this software and associated documentation files (the
|
@@ -203,19 +431,18 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
203
431
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
204
432
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
205
433
|
|
206
|
-
*
|
434
|
+
* ruby
|
207
435
|
|
208
|
-
|
436
|
+
The Ruby Programming Language.
|
209
437
|
|
210
438
|
LICENSE:
|
211
439
|
The Ruby License
|
212
440
|
|
213
441
|
HOMEPAGE:
|
214
|
-
https://
|
215
|
-
|
216
|
-
Copyright Revieworld Ltd. 2006
|
442
|
+
https://www.ruby-lang.org
|
217
443
|
|
218
444
|
Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
|
445
|
+
|
219
446
|
You can redistribute it and/or modify it under either the terms of the
|
220
447
|
2-clause BSDL (see the file BSDL), or the conditions below:
|
221
448
|
|
@@ -341,165 +568,3 @@ version 2 (see the file GPL), or the conditions below:
|
|
341
568
|
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
342
569
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
343
570
|
PURPOSE.
|
344
|
-
|
345
|
-
* guard
|
346
|
-
|
347
|
-
Guard is a command line tool to easily handle events on file system
|
348
|
-
modifications.
|
349
|
-
|
350
|
-
LICENSE:
|
351
|
-
MIT
|
352
|
-
|
353
|
-
HOMEPAGE:
|
354
|
-
https://guardgem.org/
|
355
|
-
|
356
|
-
Copyright (c) 2009-2016 Thibaud Guillaume-Gentil
|
357
|
-
|
358
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
359
|
-
a copy of this software and associated documentation files (the
|
360
|
-
"Software"), to deal in the Software without restriction, including
|
361
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
362
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
363
|
-
permit persons to whom the Software is furnished to do so, subject to
|
364
|
-
the following conditions:
|
365
|
-
|
366
|
-
The above copyright notice and this permission notice shall be
|
367
|
-
included in all copies or substantial portions of the Software.
|
368
|
-
|
369
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
370
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
371
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
372
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
373
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
374
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
375
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
376
|
-
|
377
|
-
* guard-bundler
|
378
|
-
|
379
|
-
Guard::Bundler automatically install/update your gem bundle when needed.
|
380
|
-
|
381
|
-
LICENSE:
|
382
|
-
MIT
|
383
|
-
|
384
|
-
HOMEPAGE:
|
385
|
-
https://github.com/guard/guard-bundler
|
386
|
-
|
387
|
-
Copyright (c) 2010-2014 Yann Lugrin, Rémy Coutable
|
388
|
-
|
389
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
390
|
-
a copy of this software and associated documentation files (the
|
391
|
-
"Software"), to deal in the Software without restriction, including
|
392
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
393
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
394
|
-
permit persons to whom the Software is furnished to do so, subject to
|
395
|
-
the following conditions:
|
396
|
-
|
397
|
-
The above copyright notice and this permission notice shall be
|
398
|
-
included in all copies or substantial portions of the Software.
|
399
|
-
|
400
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
401
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
402
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
403
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
404
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
405
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
406
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
407
|
-
|
408
|
-
* guard-rake
|
409
|
-
|
410
|
-
guard-rake runs a rake task when files change.
|
411
|
-
|
412
|
-
LICENSE:
|
413
|
-
MIT
|
414
|
-
|
415
|
-
HOMEPAGE:
|
416
|
-
https://github.com/rubyist/guard-rake
|
417
|
-
|
418
|
-
Copyright (c) 2011 Scott Barron
|
419
|
-
|
420
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
421
|
-
a copy of this software and associated documentation files (the
|
422
|
-
'Software'), to deal in the Software without restriction, including
|
423
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
424
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
425
|
-
permit persons to whom the Software is furnished to do so, subject to
|
426
|
-
the following conditions:
|
427
|
-
|
428
|
-
The above copyright notice and this permission notice shall be
|
429
|
-
included in all copies or substantial portions of the Software.
|
430
|
-
|
431
|
-
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
|
432
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
433
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
434
|
-
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
435
|
-
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
436
|
-
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
437
|
-
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
438
|
-
|
439
|
-
* rubocop
|
440
|
-
|
441
|
-
LICENSE:
|
442
|
-
MIT
|
443
|
-
|
444
|
-
HOMEPAGE:
|
445
|
-
https://github.com/rubocop-hq/rubocop
|
446
|
-
|
447
|
-
Copyright (c) 2012-20 Bozhidar Batsov
|
448
|
-
|
449
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
450
|
-
a copy of this software and associated documentation files (the
|
451
|
-
"Software"), to deal in the Software without restriction, including
|
452
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
453
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
454
|
-
permit persons to whom the Software is furnished to do so, subject to
|
455
|
-
the following conditions:
|
456
|
-
|
457
|
-
The above copyright notice and this permission notice shall be
|
458
|
-
included in all copies or substantial portions of the Software.
|
459
|
-
|
460
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
461
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
462
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
463
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
464
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
465
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
466
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
467
|
-
|
468
|
-
* file
|
469
|
-
|
470
|
-
file(1) Command and the libmagic(3) library.
|
471
|
-
|
472
|
-
LICENSE:
|
473
|
-
BSD, CDDL
|
474
|
-
|
475
|
-
HOMEPAGE:
|
476
|
-
http://darwinsys.com/file
|
477
|
-
|
478
|
-
Copyright (c) Ian F. Darwin 1986, 1987, 1989, 1990, 1991, 1992, 1994, 1995.
|
479
|
-
Software written by Ian F. Darwin and others;
|
480
|
-
maintained 1994- Christos Zoulas.
|
481
|
-
|
482
|
-
This software is not subject to any export provision of the United States
|
483
|
-
Department of Commerce, and may be exported to any country or planet.
|
484
|
-
|
485
|
-
Redistribution and use in source and binary forms, with or without
|
486
|
-
modification, are permitted provided that the following conditions
|
487
|
-
are met:
|
488
|
-
1. Redistributions of source code must retain the above copyright
|
489
|
-
notice immediately at the beginning of the file, without modification,
|
490
|
-
this list of conditions, and the following disclaimer.
|
491
|
-
2. Redistributions in binary form must reproduce the above copyright
|
492
|
-
notice, this list of conditions and the following disclaimer in the
|
493
|
-
documentation and/or other materials provided with the distribution.
|
494
|
-
|
495
|
-
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
496
|
-
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
497
|
-
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
498
|
-
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
|
499
|
-
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
500
|
-
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
501
|
-
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
502
|
-
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
503
|
-
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
504
|
-
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
505
|
-
SUCH DAMAGE.
|
data/README.md
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
# File Magic in Ruby
|
2
2
|
|
3
|
-
[![Build Status](https://travis-ci.com/kwilczynski/ruby-magic.svg)](https://travis-ci.com/kwilczynski/ruby-magic)
|
4
|
-
[![Documentation Status](https://inch-ci.org/github/kwilczynski/ruby-magic.svg)](https://inch-ci.org/github/kwilczynski/ruby-magic)
|
5
3
|
[![Gem Version](https://badge.fury.io/rb/ruby-magic.svg)](http://badge.fury.io/rb/ruby-magic)
|
6
4
|
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
|
7
5
|
|
@@ -39,7 +37,7 @@ the project.
|
|
39
37
|
|
40
38
|
## Copyright
|
41
39
|
|
42
|
-
Copyright 2013-
|
40
|
+
Copyright 2013-2022 Krzysztof Wilczyński
|
43
41
|
|
44
42
|
## License
|
45
43
|
|
data/dependencies.yml
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
libmagic:
|
2
|
-
version: "5.
|
3
|
-
sha256: "
|
2
|
+
version: "5.44"
|
3
|
+
sha256: "3751c7fba8dbc831cb8d7cc8aff21035459b8ce5155ef8b0880a27d028475f3b"
|
4
4
|
# Manually verified checksum:
|
5
5
|
#
|
6
|
-
# $ gpg --verify file-5.
|
7
|
-
# gpg: Signature made
|
8
|
-
# gpg: using DSA key
|
6
|
+
# $ gpg --verify file-5.43.tar.gz.asc file-5.43.tar.gz
|
7
|
+
# gpg: Signature made Tue 27 Dec 2022 03:27:03 JST
|
8
|
+
# gpg: using DSA key BE04995BA8F90ED0C0C176C471112AB16CB33B3A
|
9
9
|
# gpg: Good signature from "Christos Zoulas (personal key) <christos@zoulas.com>" [unknown]
|
10
10
|
# gpg: aka "Christos Zoulas (NetBSD key) <christos@netbsd.org>" [unknown]
|
11
11
|
# gpg: WARNING: This key is not certified with a trusted signature!
|
@@ -16,7 +16,7 @@ libmagic:
|
|
16
16
|
#
|
17
17
|
# -----BEGIN PGP SIGNATURE-----
|
18
18
|
#
|
19
|
-
#
|
20
|
-
#
|
21
|
-
#
|
19
|
+
# iF0EABECAB0WIQS+BJlbqPkO0MDBdsRxESqxbLM7OgUCY6nndwAKCRBxESqxbLM7
|
20
|
+
# OiUWAJ9ygauXJ3pohF38SQuLYu+J8qayuwCeIFPcEukUyNuYv04B9FIXkumreI8=
|
21
|
+
# =/CFO
|
22
22
|
# -----END PGP SIGNATURE-----
|
data/ext/magic/common.h
CHANGED
@@ -81,6 +81,10 @@ extern "C" {
|
|
81
81
|
# define MAGIC_NO_CHECK_JSON 0
|
82
82
|
#endif /* MAGIC_NO_CHECK_JSON */
|
83
83
|
|
84
|
+
#if !defined(MAGIC_NO_COMPRESS_FORK)
|
85
|
+
# define MAGIC_NO_COMPRESS_FORK 0
|
86
|
+
#endif /* MAGIC_NO_COMPRESS_FORK */
|
87
|
+
|
84
88
|
#define DATA_P(x) (RB_TYPE_P((x), T_DATA))
|
85
89
|
#define BOOLEAN_P(x) (RB_TYPE_P((x), T_TRUE) || RB_TYPE_P((x), T_FALSE))
|
86
90
|
#define STRING_P(x) (RB_TYPE_P((x), T_STRING))
|
@@ -105,12 +109,16 @@ extern "C" {
|
|
105
109
|
# define RVALUE_TYPE int
|
106
110
|
#endif /* RUBY_API_VERSION_CODE > 20700 */
|
107
111
|
|
108
|
-
#if RUBY_API_VERSION_CODE >= 20700
|
112
|
+
#if RUBY_API_VERSION_CODE >= 20700 && \
|
113
|
+
HAVE_RB_GC_MARK_MOVABLE
|
109
114
|
# define HAVE_RUBY_GC_COMPACT 1
|
110
115
|
# define MAGIC_GC_MARK(x) rb_gc_mark_movable((x))
|
111
116
|
#else
|
112
117
|
# define MAGIC_GC_MARK(x) rb_gc_mark((x))
|
113
|
-
#endif /*
|
118
|
+
#endif /*
|
119
|
+
* RUBY_API_VERSION_CODE >= 20700
|
120
|
+
* HAVE_RB_GC_MARK_MOVABLE
|
121
|
+
*/
|
114
122
|
|
115
123
|
#define CLASS_NAME(o) (NIL_P((o)) ? "nil" : rb_obj_classname((o)))
|
116
124
|
|
data/ext/magic/extconf.rb
CHANGED
@@ -4,12 +4,10 @@ require 'find'
|
|
4
4
|
require 'mkmf'
|
5
5
|
require 'pathname'
|
6
6
|
|
7
|
-
# helpful constants
|
8
7
|
PACKAGE_ROOT_DIR = File.expand_path(File.join(File.dirname(__FILE__), '..', '..'))
|
9
8
|
|
10
|
-
#
|
11
|
-
|
12
|
-
REQUIRED_MINI_PORTILE_VERSION = "~> 2.6"
|
9
|
+
# This version has to match the Gem definition.
|
10
|
+
REQUIRED_MINI_PORTILE_VERSION = "~> 2.8"
|
13
11
|
|
14
12
|
MAGIC_HELP_MESSAGE = <<~HELP
|
15
13
|
USAGE: ruby #{$0} [options]
|
@@ -286,7 +284,7 @@ else
|
|
286
284
|
|
287
285
|
libmagic_recipe = process_recipe('libmagic', dependencies["libmagic"]["version"], static_p, cross_build_p) do |recipe|
|
288
286
|
recipe.files = [{
|
289
|
-
url: "https://ruby-magic
|
287
|
+
url: "https://cdn.statically.io/gh/kwilczynski/ruby-magic/cdn/cdn/file-#{recipe.version}.tar.gz",
|
290
288
|
sha256: dependencies["libmagic"]["sha256"],
|
291
289
|
}]
|
292
290
|
end
|
@@ -296,20 +294,31 @@ else
|
|
296
294
|
$LDFLAGS += " -Wl,-rpath,#{libmagic_recipe.path}/lib"
|
297
295
|
|
298
296
|
if static_p
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
297
|
+
pkg_config_paths = [
|
298
|
+
"#{libmagic_recipe.path}/lib64/pkgconfig",
|
299
|
+
"#{libmagic_recipe.path}/lib32/pkgconfig",
|
300
|
+
"#{libmagic_recipe.path}/lib/pkgconfig"
|
301
|
+
].join(':')
|
302
|
+
|
303
|
+
if ENV["PKG_CONFIG_PATH"]
|
304
|
+
pkg_config_paths = "#{ENV['PKG_CONFIG_PATH']}:#{pkg_config_paths}"
|
305
|
+
end
|
304
306
|
|
305
|
-
|
306
|
-
|
307
|
+
ENV['PKG_CONFIG_PATH'] = pkg_config_paths
|
308
|
+
pc_file = File.join(libmagic_recipe.path, "lib", "pkgconfig", "libmagic.pc")
|
309
|
+
if pkg_config(pc_file)
|
310
|
+
# See https://bugs.ruby-lang.org/issues/18490, broken in Ruby 3.1 but fixed in Ruby 3.2.
|
311
|
+
flags = xpopen(["pkg-config", "--libs", "--static", pc_file], err: [:child, :out], &:read)
|
312
|
+
flags.split.each { |flag| append_ldflags(flag) } if $?.success?
|
313
|
+
else
|
314
|
+
raise "Please install the `pkg-config` utility!"
|
315
|
+
end
|
307
316
|
end
|
308
317
|
|
309
318
|
if cross_build_p
|
310
319
|
# database files will be packaged up by the cross-compiling callback in the ExtensionTask
|
311
320
|
to_path = File.join(PACKAGE_ROOT_DIR, "ext/magic/share")
|
312
|
-
FileUtils.rm_rf(to_path,
|
321
|
+
FileUtils.rm_rf(to_path, verbose: true)
|
313
322
|
FileUtils.mkdir(to_path)
|
314
323
|
FileUtils.cp_r(Dir[File.join(libmagic_recipe.path, 'share/misc/*.mgc')], to_path)
|
315
324
|
end
|
@@ -383,15 +392,9 @@ unless have_header('ruby.h')
|
|
383
392
|
EOS
|
384
393
|
end
|
385
394
|
|
386
|
-
# these are needed for `rb_thread_call_without_gvl` to be properly detected on some linux systems.
|
387
|
-
# specifically, rake-compiler-dock's redhat-based image needs these.
|
388
|
-
have_library('pthread')
|
389
|
-
have_library('rt')
|
390
|
-
have_library('dl')
|
391
|
-
have_library('crypt')
|
392
|
-
|
393
395
|
have_func('rb_thread_call_without_gvl')
|
394
396
|
have_func('rb_thread_blocking_region')
|
397
|
+
have_func('rb_gc_mark_movable')
|
395
398
|
|
396
399
|
unless have_header('magic.h')
|
397
400
|
abort "\n" + (<<-EOS).gsub(/^[ ]{,3}/, '') + "\n"
|
data/ext/magic/ruby-magic.c
CHANGED
@@ -522,7 +522,7 @@ rb_mgc_set_flags(VALUE object, VALUE value)
|
|
522
522
|
int local_errno;
|
523
523
|
rb_mgc_object_t *mgc;
|
524
524
|
rb_mgc_arguments_t mga;
|
525
|
-
const char *klass =
|
525
|
+
const char *klass = NULL;
|
526
526
|
const char *flag = NULL;
|
527
527
|
|
528
528
|
MAGIC_CHECK_INTEGER_TYPE(value);
|
@@ -545,6 +545,7 @@ rb_mgc_set_flags(VALUE object, VALUE value)
|
|
545
545
|
flag = "CHECK";
|
546
546
|
|
547
547
|
if (flag) {
|
548
|
+
klass = "Magic";
|
548
549
|
if (!NIL_P(object))
|
549
550
|
klass = rb_obj_classname(object);
|
550
551
|
|
@@ -589,7 +590,7 @@ rb_mgc_load(VALUE object, VALUE arguments)
|
|
589
590
|
{
|
590
591
|
rb_mgc_object_t *mgc;
|
591
592
|
rb_mgc_arguments_t mga;
|
592
|
-
const char *klass =
|
593
|
+
const char *klass = NULL;
|
593
594
|
VALUE value = Qundef;
|
594
595
|
|
595
596
|
if (ARRAY_P(RARRAY_FIRST(arguments)))
|
@@ -601,6 +602,7 @@ rb_mgc_load(VALUE object, VALUE arguments)
|
|
601
602
|
MAGIC_OBJECT(object, mgc);
|
602
603
|
|
603
604
|
if (rb_mgc_do_not_auto_load) {
|
605
|
+
klass = "Magic";
|
604
606
|
if (!NIL_P(object))
|
605
607
|
klass = rb_obj_classname(object);
|
606
608
|
|
@@ -1342,6 +1344,9 @@ magic_allocate(VALUE klass)
|
|
1342
1344
|
E_NOT_ENOUGH_MEMORY);
|
1343
1345
|
}
|
1344
1346
|
|
1347
|
+
assert(mgc != NULL &&
|
1348
|
+
"Must be a valid pointer to `rb_mgc_object_t' type");
|
1349
|
+
|
1345
1350
|
mgc->cookie = NULL;
|
1346
1351
|
mgc->mutex = Qundef;
|
1347
1352
|
mgc->database_loaded = 0;
|
@@ -1516,7 +1521,7 @@ static VALUE
|
|
1516
1521
|
magic_return(void *data)
|
1517
1522
|
{
|
1518
1523
|
rb_mgc_arguments_t *mga = data;
|
1519
|
-
const char *unknown =
|
1524
|
+
const char *unknown = NULL;
|
1520
1525
|
VALUE separator = Qundef;
|
1521
1526
|
VALUE array, string;
|
1522
1527
|
|
@@ -1545,6 +1550,7 @@ magic_return(void *data)
|
|
1545
1550
|
* return an empty string, to indicate lack of results, rather
|
1546
1551
|
* than a confusing string consisting of three questions marks.
|
1547
1552
|
*/
|
1553
|
+
unknown = "???";
|
1548
1554
|
if (strncmp(mga->result, unknown, strlen(unknown)) == 0)
|
1549
1555
|
return CSTR2RVAL("");
|
1550
1556
|
|
@@ -1594,7 +1600,9 @@ static const rb_data_type_t rb_mgc_type = {
|
|
1594
1600
|
.dcompact = magic_compact,
|
1595
1601
|
#endif /* HAVE_RUBY_GC_COMPACT */
|
1596
1602
|
},
|
1603
|
+
#if defined(RUBY_TYPED_FREE_IMMEDIATELY)
|
1597
1604
|
.flags = RUBY_TYPED_FREE_IMMEDIATELY,
|
1605
|
+
#endif /* RUBY_TYPED_FREE_IMMEDIATELY */
|
1598
1606
|
};
|
1599
1607
|
|
1600
1608
|
void
|
@@ -1770,6 +1778,10 @@ Init_magic(void)
|
|
1770
1778
|
* Do not look for, or inside compressed files.
|
1771
1779
|
*/
|
1772
1780
|
MAGIC_DEFINE_FLAG(NO_CHECK_COMPRESS);
|
1781
|
+
/*
|
1782
|
+
* Do not allow decompression that needs to fork.
|
1783
|
+
*/
|
1784
|
+
MAGIC_DEFINE_FLAG(NO_COMPRESS_FORK);
|
1773
1785
|
/*
|
1774
1786
|
* Do not look for, or inside tar archive files.
|
1775
1787
|
*/
|
data/lib/magic/version.rb
CHANGED
@@ -4,7 +4,7 @@ class Magic
|
|
4
4
|
#
|
5
5
|
# Current version of _Magic_.
|
6
6
|
#
|
7
|
-
VERSION = '0.5.
|
7
|
+
VERSION = '0.5.5'.freeze
|
8
8
|
|
9
9
|
class << self
|
10
10
|
#
|
@@ -13,7 +13,7 @@ class Magic
|
|
13
13
|
#
|
14
14
|
# Example:
|
15
15
|
#
|
16
|
-
# Magic.version_array #=> [5,
|
16
|
+
# Magic.version_array #=> [5, 42]
|
17
17
|
#
|
18
18
|
# See also: Magic::version and Magic::version_string
|
19
19
|
#
|
@@ -29,7 +29,7 @@ class Magic
|
|
29
29
|
#
|
30
30
|
# Example:
|
31
31
|
#
|
32
|
-
# Magic.version_string #=> "5.
|
32
|
+
# Magic.version_string #=> "5.42"
|
33
33
|
#
|
34
34
|
# See also: Magic::version and Magic::version_array
|
35
35
|
#
|
data/lib/ruby-magic.rb
ADDED
data/patches/libmagic/0001-Don-t-attempt-to-build-tests-documentation-and-Python-bindings.patch
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
From 7bc0237df1b0d3faeef59fea933f51941100b15e Mon Sep 17 00:00:00 2001
|
2
|
+
From: =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= <kw@linux.com>
|
3
|
+
Date: Tue, 19 Jul 2022 23:50:48 +0900
|
4
|
+
Subject: [PATCH] Don't attempt to build tests, documentation and Python
|
5
|
+
bindings
|
6
|
+
MIME-Version: 1.0
|
7
|
+
Content-Type: text/plain; charset=UTF-8
|
8
|
+
Content-Transfer-Encoding: 8bit
|
9
|
+
|
10
|
+
Signed-off-by: Krzysztof Wilczyński <kw@linux.com>
|
11
|
+
---
|
12
|
+
Makefile.am | 2 +-
|
13
|
+
Makefile.in | 2 +-
|
14
|
+
2 files changed, 2 insertions(+), 2 deletions(-)
|
15
|
+
|
16
|
+
diff --git a/Makefile.am b/Makefile.am
|
17
|
+
index e816779..980cafa 100644
|
18
|
+
--- a/Makefile.am
|
19
|
+
+++ b/Makefile.am
|
20
|
+
@@ -3,7 +3,7 @@ ACLOCAL_AMFLAGS = -I m4
|
21
|
+
EXTRA_DIST = MAINT RELEASE-PROCEDURE README.DEVELOPER README.md \
|
22
|
+
m4/visibility.m4
|
23
|
+
|
24
|
+
-SUBDIRS = src magic tests doc python
|
25
|
+
+SUBDIRS = src magic
|
26
|
+
|
27
|
+
# This variable must have 'exec' in its name, in order to be installed
|
28
|
+
# by 'install-exec' target (instead of default 'install-data')
|
29
|
+
diff --git a/Makefile.in b/Makefile.in
|
30
|
+
index e2f0673..2f02b82 100644
|
31
|
+
--- a/Makefile.in
|
32
|
+
+++ b/Makefile.in
|
33
|
+
@@ -361,7 +361,7 @@ ACLOCAL_AMFLAGS = -I m4
|
34
|
+
EXTRA_DIST = MAINT RELEASE-PROCEDURE README.DEVELOPER README.md \
|
35
|
+
m4/visibility.m4
|
36
|
+
|
37
|
+
-SUBDIRS = src magic tests doc python
|
38
|
+
+SUBDIRS = src magic
|
39
|
+
|
40
|
+
# This variable must have 'exec' in its name, in order to be installed
|
41
|
+
# by 'install-exec' target (instead of default 'install-data')
|
42
|
+
--
|
43
|
+
2.37.1
|
44
|
+
|
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-magic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Krzysztof Wilczyński
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mini_portile2
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '2.
|
19
|
+
version: '2.8'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '2.
|
26
|
+
version: '2.8'
|
27
27
|
description: |
|
28
28
|
File Magic in Ruby.
|
29
29
|
|
@@ -32,7 +32,10 @@ email: kw@linux.com
|
|
32
32
|
executables: []
|
33
33
|
extensions:
|
34
34
|
- ext/magic/extconf.rb
|
35
|
-
extra_rdoc_files:
|
35
|
+
extra_rdoc_files:
|
36
|
+
- ext/magic/functions.c
|
37
|
+
- ext/magic/ruby-magic.c
|
38
|
+
- README.md
|
36
39
|
files:
|
37
40
|
- AUTHORS
|
38
41
|
- CHANGELOG.md
|
@@ -53,19 +56,25 @@ files:
|
|
53
56
|
- lib/magic/core/file.rb
|
54
57
|
- lib/magic/core/string.rb
|
55
58
|
- lib/magic/version.rb
|
59
|
+
- lib/ruby-magic.rb
|
60
|
+
- patches/libmagic/0001-Don-t-attempt-to-build-tests-documentation-and-Python-bindings.patch
|
61
|
+
- ports/archives/file-5.44.tar.gz
|
56
62
|
homepage: https://github.com/kwilczynski/ruby-magic
|
57
63
|
licenses:
|
58
64
|
- Apache-2.0
|
59
65
|
metadata:
|
60
66
|
bug_tracker_uri: https://github.com/kwilczynski/ruby-magic/issues
|
61
|
-
source_code_uri: https://github.com/kwilczynski/ruby-magic
|
62
67
|
changelog_uri: https://github.com/kwilczynski/ruby-magic/blob/master/CHANGELOG.md
|
63
68
|
documentation_uri: https://www.rubydoc.info/gems/ruby-magic
|
64
|
-
|
69
|
+
source_code_uri: https://github.com/kwilczynski/ruby-magic
|
70
|
+
rubygems_mfa_required: 'true'
|
65
71
|
post_install_message: 'Thank you for installing!
|
66
72
|
|
67
73
|
'
|
68
|
-
rdoc_options:
|
74
|
+
rdoc_options:
|
75
|
+
- "--main"
|
76
|
+
- README.md
|
77
|
+
- "--line-numbers"
|
69
78
|
require_paths:
|
70
79
|
- lib
|
71
80
|
- lib
|
@@ -73,14 +82,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
73
82
|
requirements:
|
74
83
|
- - ">="
|
75
84
|
- !ruby/object:Gem::Version
|
76
|
-
version: 2.
|
85
|
+
version: 2.6.0
|
77
86
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
78
87
|
requirements:
|
79
88
|
- - ">="
|
80
89
|
- !ruby/object:Gem::Version
|
81
90
|
version: '0'
|
82
91
|
requirements: []
|
83
|
-
rubygems_version: 3.
|
92
|
+
rubygems_version: 3.4.5
|
84
93
|
signing_key:
|
85
94
|
specification_version: 4
|
86
95
|
summary: File Magic in Ruby
|