ruby-filemagic 0.7.1-x86-mingw32 → 0.7.2-x86-mingw32
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 +4 -4
- data/ChangeLog +9 -0
- data/Dockerfile +37 -0
- data/README +18 -1
- data/Rakefile +17 -0
- data/ext/filemagic/filemagic.c +1 -0
- data/ext/filemagic/filemagic.h +5 -4
- data/lib/filemagic/2.3/ruby_filemagic.so +0 -0
- data/lib/filemagic/2.4/ruby_filemagic.so +0 -0
- data/lib/filemagic/magic.mgc +0 -0
- data/lib/filemagic/version.rb +1 -1
- data/test/filemagic_test.rb +6 -0
- metadata +16 -13
- data/lib/filemagic/1.9/ruby_filemagic.so +0 -0
- data/lib/filemagic/2.0/ruby_filemagic.so +0 -0
- data/lib/filemagic/2.1/ruby_filemagic.so +0 -0
- data/lib/filemagic/2.2/ruby_filemagic.so +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 377a2c6558fb1f00fd8075cafb68e781a51ad822
|
4
|
+
data.tar.gz: fe3c12269a75fea27053601108d5f44ff0581dc4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 404fd6b9775a6fad5eb790e61022cb36e2e1611be559c091e582ffa9a5f6654077222035040056d7fdf558d89a38e0e0d8eb660d64b84e6a6ec2ac8dc3147a08
|
7
|
+
data.tar.gz: 14488d38240ed291076115457bfeeeefc6586a2be5188c45bbfd6d5cc171075c7a348950b718e93f40379b2f8f1dd9766b7fe61dc03630268f5ba5bf88141c58
|
data/ChangeLog
CHANGED
@@ -2,6 +2,15 @@
|
|
2
2
|
|
3
3
|
= Revision history for ruby-filemagic
|
4
4
|
|
5
|
+
== 0.7.3 [unreleased]
|
6
|
+
|
7
|
+
* Dockerfile to build native extension (pull request #26 by Pavel Lobashov).
|
8
|
+
|
9
|
+
== 0.7.2 [2017-07-02]
|
10
|
+
|
11
|
+
* Fix segfault on <tt>buffer(nil)</tt> when compiled with GCC (pull request
|
12
|
+
#24 by Yuya Tanaka).
|
13
|
+
|
5
14
|
== 0.7.1 [2015-10-27]
|
6
15
|
|
7
16
|
* List default lib and header directories (pull request #18 by Adam Wróbel).
|
data/Dockerfile
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
FROM ruby:2.4
|
2
|
+
|
3
|
+
RUN apt-get update && apt-get install -y mingw-w64 && gem install rake-compiler
|
4
|
+
ENV HOST_ARCH i686-w64-mingw32
|
5
|
+
|
6
|
+
ENV GNURX_VERSION 2.5.1
|
7
|
+
ENV GNURX_SOURCE /mingw-libgnurx-$GNURX_VERSION
|
8
|
+
RUN curl https://vorboss.dl.sourceforge.net/project/mingw/Other/UserContributed/regex/mingw-regex-$GNURX_VERSION/mingw-libgnurx-$GNURX_VERSION-src.tar.gz | \
|
9
|
+
tar xzvf - && \
|
10
|
+
cd $GNURX_SOURCE && \
|
11
|
+
./configure --host=$HOST_ARCH --enable-static --disable-shared && \
|
12
|
+
make
|
13
|
+
|
14
|
+
ENV MAGIC_VERSION 5.31
|
15
|
+
ENV MAGIC_SOURCE /file-$MAGIC_VERSION
|
16
|
+
RUN curl ftp://ftp.astron.com/pub/file/file-$MAGIC_VERSION.tar.gz | \
|
17
|
+
tar xzvf - && \
|
18
|
+
cd $MAGIC_SOURCE && \
|
19
|
+
./configure --disable-silent-rules --enable-fsect-man5 && \
|
20
|
+
make && \
|
21
|
+
make clean && \
|
22
|
+
LDFLAGS=-L$GNURX_SOURCE CFLAGS=-I$GNURX_SOURCE ./configure --disable-silent-rules --enable-fsect-man5 --host=$HOST_ARCH && \
|
23
|
+
make || true
|
24
|
+
|
25
|
+
ENV CROSS_RUBIES 2.3.4 2.4.1
|
26
|
+
RUN for i in $CROSS_RUBIES; do rake-compiler cross-ruby VERSION=$i; done
|
27
|
+
|
28
|
+
ENV APP_SOURCE /ruby-filemagic
|
29
|
+
RUN mkdir $APP_SOURCE
|
30
|
+
WORKDIR $APP_SOURCE
|
31
|
+
|
32
|
+
RUN echo "source 'https://rubygems.org'\ngemspec\n" > Gemfile
|
33
|
+
COPY *.gemspec .
|
34
|
+
RUN bundle install
|
35
|
+
|
36
|
+
COPY . .
|
37
|
+
ENTRYPOINT rake gem:native WITH_CROSS_GNURX=$GNURX_SOURCE WITH_CROSS_MAGIC=$MAGIC_SOURCE
|
data/README
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
== VERSION
|
4
4
|
|
5
|
-
This documentation refers to filemagic version 0.7.
|
5
|
+
This documentation refers to filemagic version 0.7.2
|
6
6
|
|
7
7
|
|
8
8
|
== DESCRIPTION
|
@@ -38,24 +38,33 @@ FileMagic extension module. See also libmagic(3), file(1) and magic(4).
|
|
38
38
|
require 'filemagic'
|
39
39
|
|
40
40
|
p FileMagic::VERSION
|
41
|
+
# => "0.7.2"
|
41
42
|
p FileMagic::MAGIC_VERSION
|
43
|
+
# => "5.28"
|
42
44
|
|
43
45
|
p FileMagic.new.flags
|
46
|
+
# => []
|
44
47
|
|
45
48
|
FileMagic.open(:mime) { |fm|
|
46
49
|
p fm.flags
|
50
|
+
# => [:mime_type, :mime_encoding]
|
47
51
|
p fm.file(__FILE__)
|
52
|
+
# => "text/plain; charset=us-ascii"
|
48
53
|
p fm.file(__FILE__, true)
|
54
|
+
# => "text/plain"
|
49
55
|
|
50
56
|
fm.flags = [:raw, :continue]
|
51
57
|
p fm.flags
|
58
|
+
# => [:continue, :raw]
|
52
59
|
}
|
53
60
|
|
54
61
|
fm = FileMagic.new
|
55
62
|
p fm.flags
|
63
|
+
# => []
|
56
64
|
|
57
65
|
mime = FileMagic.mime
|
58
66
|
p mime.flags
|
67
|
+
# => [:mime_type, :mime_encoding]
|
59
68
|
|
60
69
|
=== Environment
|
61
70
|
|
@@ -74,6 +83,11 @@ Fedora/SuSE:: +file-devel+
|
|
74
83
|
Gentoo:: +sys-libs/libmagic+
|
75
84
|
OS X:: <tt>brew install libmagic</tt>
|
76
85
|
|
86
|
+
=== Build native extension
|
87
|
+
|
88
|
+
rake docker:gem:native
|
89
|
+
|
90
|
+
Requires Docker[https://docker.com] to be installed.
|
77
91
|
|
78
92
|
== LINKS
|
79
93
|
|
@@ -95,6 +109,9 @@ Travis CI:: https://travis-ci.org/blackwinter/ruby-filemagic
|
|
95
109
|
* Martin Carpenter <mailto:mcarpenter@free.fr> for Ruby 1.9.2 compatibility
|
96
110
|
and other improvements.
|
97
111
|
|
112
|
+
* Pavel Lobashov (@ShockwaveNN) for Dockerfile to build cross-compiled Windows
|
113
|
+
extension (pull request #26).
|
114
|
+
|
98
115
|
|
99
116
|
== COPYING
|
100
117
|
|
data/Rakefile
CHANGED
@@ -32,3 +32,20 @@ begin
|
|
32
32
|
rescue LoadError => err
|
33
33
|
warn "Please install the `hen' gem. (#{err})"
|
34
34
|
end
|
35
|
+
|
36
|
+
namespace :docker do
|
37
|
+
|
38
|
+
name = "ruby-filemagic-gem-native:#{FileMagic::VERSION}"
|
39
|
+
|
40
|
+
task :build do
|
41
|
+
sh *%W[docker build -t #{name} .]
|
42
|
+
end
|
43
|
+
|
44
|
+
task :run do
|
45
|
+
sh *%W[docker run -it --rm -v #{Dir.pwd}/pkg:/ruby-filemagic/pkg #{name}]
|
46
|
+
end
|
47
|
+
|
48
|
+
desc "Build native gems using docker image #{name}"
|
49
|
+
task 'gem:native' => %w[build run]
|
50
|
+
|
51
|
+
end
|
data/ext/filemagic/filemagic.c
CHANGED
data/ext/filemagic/filemagic.h
CHANGED
@@ -18,9 +18,9 @@
|
|
18
18
|
}\
|
19
19
|
}
|
20
20
|
|
21
|
-
#define RB_MAGIC_TYPE_FILE magic_file(ms, StringValuePtr(arg))
|
22
|
-
#define RB_MAGIC_TYPE_BUFFER
|
23
|
-
#define RB_MAGIC_TYPE_DESCRIPTOR magic_descriptor(ms, NUM2INT(arg))
|
21
|
+
#define RB_MAGIC_TYPE_FILE type = magic_file(ms, StringValuePtr(arg));
|
22
|
+
#define RB_MAGIC_TYPE_BUFFER { char *arg_str = StringValuePtr(arg); type = magic_buffer(ms, arg_str, RSTRING_LEN(arg)); }
|
23
|
+
#define RB_MAGIC_TYPE_DESCRIPTOR type = magic_descriptor(ms, NUM2INT(arg));
|
24
24
|
|
25
25
|
#define RB_MAGIC_TYPE(what, WHAT) \
|
26
26
|
static VALUE \
|
@@ -32,7 +32,8 @@ rb_magic_##what(int argc, VALUE *argv, VALUE self) {\
|
|
32
32
|
rb_scan_args(argc, argv, "11", &arg, &simple);\
|
33
33
|
GetMagicSet(self, ms);\
|
34
34
|
\
|
35
|
-
|
35
|
+
RB_MAGIC_TYPE_##WHAT\
|
36
|
+
if (type == NULL) {\
|
36
37
|
rb_raise(rb_FileMagicError, "failed lookup: %s", magic_error(ms));\
|
37
38
|
}\
|
38
39
|
\
|
Binary file
|
Binary file
|
data/lib/filemagic/magic.mgc
CHANGED
Binary file
|
data/lib/filemagic/version.rb
CHANGED
data/test/filemagic_test.rb
CHANGED
@@ -62,6 +62,12 @@ magic file from #{FileMagic.path}
|
|
62
62
|
assert_equal('POSIX shell script, ASCII text executable', res)
|
63
63
|
end
|
64
64
|
|
65
|
+
def test_nil_buffer
|
66
|
+
fm = FileMagic.new(FileMagic::MAGIC_NONE)
|
67
|
+
assert_raise(TypeError) { fm.buffer(nil) }
|
68
|
+
fm.close
|
69
|
+
end
|
70
|
+
|
65
71
|
def test_descriptor
|
66
72
|
fm = FileMagic.new(FileMagic::MAGIC_NONE)
|
67
73
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-filemagic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.2
|
5
5
|
platform: x86-mingw32
|
6
6
|
authors:
|
7
7
|
- Travis Whitton
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2017-08-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: hen
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
version: '0.8'
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0.8.
|
23
|
+
version: 0.8.7
|
24
24
|
type: :development
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
version: '0.8'
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.8.
|
33
|
+
version: 0.8.7
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: rake
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
@@ -84,6 +84,7 @@ extra_rdoc_files:
|
|
84
84
|
files:
|
85
85
|
- CONTRIBUTING.md
|
86
86
|
- ChangeLog
|
87
|
+
- Dockerfile
|
87
88
|
- README
|
88
89
|
- Rakefile
|
89
90
|
- TODO
|
@@ -91,10 +92,8 @@ files:
|
|
91
92
|
- ext/filemagic/filemagic.c
|
92
93
|
- ext/filemagic/filemagic.h
|
93
94
|
- lib/filemagic.rb
|
94
|
-
- lib/filemagic/
|
95
|
-
- lib/filemagic/2.
|
96
|
-
- lib/filemagic/2.1/ruby_filemagic.so
|
97
|
-
- lib/filemagic/2.2/ruby_filemagic.so
|
95
|
+
- lib/filemagic/2.3/ruby_filemagic.so
|
96
|
+
- lib/filemagic/2.4/ruby_filemagic.so
|
98
97
|
- lib/filemagic/ext.rb
|
99
98
|
- lib/filemagic/magic.mgc
|
100
99
|
- lib/filemagic/version.rb
|
@@ -114,13 +113,14 @@ licenses:
|
|
114
113
|
metadata: {}
|
115
114
|
post_install_message: |2+
|
116
115
|
|
117
|
-
ruby-filemagic-0.7.
|
116
|
+
ruby-filemagic-0.7.2 [2017-07-02]:
|
118
117
|
|
119
|
-
*
|
118
|
+
* Fix segfault on <tt>buffer(nil)</tt> when compiled with GCC (pull request
|
119
|
+
#24 by Yuya Tanaka).
|
120
120
|
|
121
121
|
rdoc_options:
|
122
122
|
- "--title"
|
123
|
-
- ruby-filemagic Application documentation (v0.7.
|
123
|
+
- ruby-filemagic Application documentation (v0.7.2)
|
124
124
|
- "--charset"
|
125
125
|
- UTF-8
|
126
126
|
- "--line-numbers"
|
@@ -133,7 +133,10 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
133
133
|
requirements:
|
134
134
|
- - ">="
|
135
135
|
- !ruby/object:Gem::Version
|
136
|
-
version:
|
136
|
+
version: '2.3'
|
137
|
+
- - "<"
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '2.5'
|
137
140
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
138
141
|
requirements:
|
139
142
|
- - ">="
|
@@ -141,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
144
|
version: '0'
|
142
145
|
requirements: []
|
143
146
|
rubyforge_project:
|
144
|
-
rubygems_version: 2.
|
147
|
+
rubygems_version: 2.6.12
|
145
148
|
signing_key:
|
146
149
|
specification_version: 4
|
147
150
|
summary: Ruby bindings to the magic(4) library
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|