ruby-brs 1.1.2 → 1.2.1
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/README.md +103 -82
- data/ext/brs_ext/buffer.c +21 -7
- data/ext/brs_ext/buffer.h +7 -7
- data/ext/brs_ext/error.c +11 -11
- data/ext/brs_ext/error.h +2 -1
- data/ext/brs_ext/gvl.h +24 -0
- data/ext/brs_ext/io.c +240 -122
- data/ext/brs_ext/option.c +37 -27
- data/ext/brs_ext/option.h +37 -29
- data/ext/brs_ext/stream/compressor.c +118 -52
- data/ext/brs_ext/stream/compressor.h +4 -1
- data/ext/brs_ext/stream/decompressor.c +54 -22
- data/ext/brs_ext/stream/decompressor.h +4 -1
- data/ext/brs_ext/string.c +118 -64
- data/ext/extconf.rb +10 -1
- data/lib/brs/file.rb +6 -2
- data/lib/brs/option.rb +16 -4
- data/lib/brs/stream/abstract.rb +6 -9
- data/lib/brs/stream/raw/abstract.rb +6 -2
- data/lib/brs/stream/raw/compressor.rb +3 -7
- data/lib/brs/stream/raw/decompressor.rb +1 -5
- data/lib/brs/stream/reader.rb +72 -52
- data/lib/brs/stream/reader_helpers.rb +1 -1
- data/lib/brs/stream/writer.rb +9 -4
- data/lib/brs/stream/writer_helpers.rb +3 -2
- data/lib/brs/validation.rb +4 -2
- data/lib/brs/version.rb +1 -1
- metadata +62 -19
@@ -31,9 +31,10 @@ module BRS
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def putc(object, encoding: ::Encoding::BINARY)
|
34
|
-
|
34
|
+
case object
|
35
|
+
when ::Numeric
|
35
36
|
write object.chr(encoding)
|
36
|
-
|
37
|
+
when ::String
|
37
38
|
write object[0]
|
38
39
|
else
|
39
40
|
raise ValidateError, "invalid object: \"#{object}\" for putc"
|
data/lib/brs/validation.rb
CHANGED
@@ -23,7 +23,7 @@ module BRS
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def self.validate_positive_integer(value)
|
26
|
-
raise ValidateError, "invalid positive integer" unless value.is_a?(::Integer) && value
|
26
|
+
raise ValidateError, "invalid positive integer" unless value.is_a?(::Integer) && value.positive?
|
27
27
|
end
|
28
28
|
|
29
29
|
def self.validate_not_negative_integer(value)
|
@@ -47,7 +47,9 @@ module BRS
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def self.validate_proc(value)
|
50
|
-
|
50
|
+
unless value.is_a?(::Proc) || value.is_a?(::Method) || value.is_a?(::UnboundMethod)
|
51
|
+
raise ValidateError, "invalid proc"
|
52
|
+
end
|
51
53
|
end
|
52
54
|
end
|
53
55
|
end
|
data/lib/brs/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-brs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Aladjev
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-06-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: codecov
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: json
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: minitar
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,28 +58,42 @@ dependencies:
|
|
44
58
|
requirements:
|
45
59
|
- - "~>"
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version: '5.
|
61
|
+
version: '5.14'
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
66
|
- - "~>"
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version: '5.
|
68
|
+
version: '5.14'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: ocg
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
73
|
- - "~>"
|
60
74
|
- !ruby/object:Gem::Version
|
61
|
-
version: '1.
|
75
|
+
version: '1.3'
|
62
76
|
type: :development
|
63
77
|
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
80
|
- - "~>"
|
67
81
|
- !ruby/object:Gem::Version
|
68
|
-
version: '1.
|
82
|
+
version: '1.3'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: parallel
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
69
97
|
- !ruby/object:Gem::Dependency
|
70
98
|
name: rake
|
71
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,42 +128,56 @@ dependencies:
|
|
100
128
|
requirements:
|
101
129
|
- - "~>"
|
102
130
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
131
|
+
version: '1.16'
|
104
132
|
type: :development
|
105
133
|
prerelease: false
|
106
134
|
version_requirements: !ruby/object:Gem::Requirement
|
107
135
|
requirements:
|
108
136
|
- - "~>"
|
109
137
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
138
|
+
version: '1.16'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rubocop-minitest
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0.12'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0.12'
|
111
153
|
- !ruby/object:Gem::Dependency
|
112
154
|
name: rubocop-performance
|
113
155
|
requirement: !ruby/object:Gem::Requirement
|
114
156
|
requirements:
|
115
157
|
- - "~>"
|
116
158
|
- !ruby/object:Gem::Version
|
117
|
-
version: '1.
|
159
|
+
version: '1.11'
|
118
160
|
type: :development
|
119
161
|
prerelease: false
|
120
162
|
version_requirements: !ruby/object:Gem::Requirement
|
121
163
|
requirements:
|
122
164
|
- - "~>"
|
123
165
|
- !ruby/object:Gem::Version
|
124
|
-
version: '1.
|
166
|
+
version: '1.11'
|
125
167
|
- !ruby/object:Gem::Dependency
|
126
|
-
name: rubocop-
|
168
|
+
name: rubocop-rake
|
127
169
|
requirement: !ruby/object:Gem::Requirement
|
128
170
|
requirements:
|
129
171
|
- - "~>"
|
130
172
|
- !ruby/object:Gem::Version
|
131
|
-
version: '
|
173
|
+
version: '0.5'
|
132
174
|
type: :development
|
133
175
|
prerelease: false
|
134
176
|
version_requirements: !ruby/object:Gem::Requirement
|
135
177
|
requirements:
|
136
178
|
- - "~>"
|
137
179
|
- !ruby/object:Gem::Version
|
138
|
-
version: '
|
180
|
+
version: '0.5'
|
139
181
|
- !ruby/object:Gem::Dependency
|
140
182
|
name: simplecov
|
141
183
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,7 +192,7 @@ dependencies:
|
|
150
192
|
- - ">="
|
151
193
|
- !ruby/object:Gem::Version
|
152
194
|
version: '0'
|
153
|
-
description:
|
195
|
+
description:
|
154
196
|
email: aladjev.andrew@gmail.com
|
155
197
|
executables: []
|
156
198
|
extensions:
|
@@ -165,6 +207,7 @@ files:
|
|
165
207
|
- ext/brs_ext/common.h
|
166
208
|
- ext/brs_ext/error.c
|
167
209
|
- ext/brs_ext/error.h
|
210
|
+
- ext/brs_ext/gvl.h
|
168
211
|
- ext/brs_ext/io.c
|
169
212
|
- ext/brs_ext/io.h
|
170
213
|
- ext/brs_ext/macro.h
|
@@ -199,7 +242,7 @@ homepage: https://github.com/andrew-aladev/ruby-brs
|
|
199
242
|
licenses:
|
200
243
|
- MIT
|
201
244
|
metadata: {}
|
202
|
-
post_install_message:
|
245
|
+
post_install_message:
|
203
246
|
rdoc_options: []
|
204
247
|
require_paths:
|
205
248
|
- lib
|
@@ -207,15 +250,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
207
250
|
requirements:
|
208
251
|
- - ">="
|
209
252
|
- !ruby/object:Gem::Version
|
210
|
-
version: '
|
253
|
+
version: '2.5'
|
211
254
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
255
|
requirements:
|
213
256
|
- - ">="
|
214
257
|
- !ruby/object:Gem::Version
|
215
258
|
version: '0'
|
216
259
|
requirements: []
|
217
|
-
rubygems_version: 3.
|
218
|
-
signing_key:
|
260
|
+
rubygems_version: 3.2.15
|
261
|
+
signing_key:
|
219
262
|
specification_version: 4
|
220
263
|
summary: Ruby bindings for brotli library.
|
221
264
|
test_files: []
|