image_pack 0.2.2 → 0.2.3
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.md +1 -0
- data/README.md +23 -4
- data/ext/image_pack/extconf.rb +35 -124
- data/ext/image_pack/image_pack.c +638 -595
- data/ext/image_pack/mozjpeg_sources.rb +178 -0
- data/ext/image_pack/vendor/mozjpeg/BUILDING.md +744 -0
- data/ext/image_pack/vendor/mozjpeg/CODE_OF_CONDUCT.md +15 -0
- data/ext/image_pack/vendor/mozjpeg/ChangeLog.md +1996 -0
- data/lib/image_pack/configuration.rb +54 -8
- data/lib/image_pack/version.rb +1 -1
- data/lib/image_pack.rb +65 -18
- metadata +13 -78
- data/ext/image_pack/vendor/mozjpeg/README.ijg +0 -258
- data/ext/image_pack/vendor/mozjpeg/cdjpeg.c +0 -156
- data/ext/image_pack/vendor/mozjpeg/cjpeg.c +0 -961
- data/ext/image_pack/vendor/mozjpeg/djpeg.c +0 -855
- data/ext/image_pack/vendor/mozjpeg/jaricom.c +0 -157
- data/ext/image_pack/vendor/mozjpeg/jcarith.c +0 -972
- data/ext/image_pack/vendor/mozjpeg/jcstest.c +0 -126
- data/ext/image_pack/vendor/mozjpeg/jdarith.c +0 -782
- data/ext/image_pack/vendor/mozjpeg/jdatadst-tj.c +0 -198
- data/ext/image_pack/vendor/mozjpeg/jdatasrc-tj.c +0 -194
- data/ext/image_pack/vendor/mozjpeg/jpegtran.c +0 -827
- data/ext/image_pack/vendor/mozjpeg/jpegyuv.c +0 -172
- data/ext/image_pack/vendor/mozjpeg/rdbmp.c +0 -690
- data/ext/image_pack/vendor/mozjpeg/rdcolmap.c +0 -253
- data/ext/image_pack/vendor/mozjpeg/rdgif.c +0 -720
- data/ext/image_pack/vendor/mozjpeg/rdjpeg.c +0 -160
- data/ext/image_pack/vendor/mozjpeg/rdjpgcom.c +0 -494
- data/ext/image_pack/vendor/mozjpeg/rdpng.c +0 -194
- data/ext/image_pack/vendor/mozjpeg/rdppm.c +0 -781
- data/ext/image_pack/vendor/mozjpeg/rdswitch.c +0 -642
- data/ext/image_pack/vendor/mozjpeg/rdtarga.c +0 -508
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jccolext-neon.c +0 -148
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jchuff-neon.c +0 -334
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd.c +0 -976
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jsimd.c +0 -1312
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd.c +0 -1143
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jccolext-mmi.c +0 -455
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jccolor-mmi.c +0 -148
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcgray-mmi.c +0 -132
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcgryext-mmi.c +0 -374
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample-mmi.c +0 -98
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolext-mmi.c +0 -415
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolor-mmi.c +0 -139
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdmerge-mmi.c +0 -149
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdmrgext-mmi.c +0 -615
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdsample-mmi.c +0 -304
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctfst-mmi.c +0 -255
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctint-mmi.c +0 -398
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jidctfst-mmi.c +0 -395
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jidctint-mmi.c +0 -571
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jquanti-mmi.c +0 -124
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd.c +0 -866
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolext-altivec.c +0 -269
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolor-altivec.c +0 -116
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgray-altivec.c +0 -111
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgryext-altivec.c +0 -228
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample-altivec.c +0 -159
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolext-altivec.c +0 -276
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolor-altivec.c +0 -106
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmerge-altivec.c +0 -130
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmrgext-altivec.c +0 -329
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdsample-altivec.c +0 -400
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctfst-altivec.c +0 -154
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctint-altivec.c +0 -258
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctfst-altivec.c +0 -255
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctint-altivec.c +0 -357
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jquanti-altivec.c +0 -250
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd.c +0 -884
- data/ext/image_pack/vendor/mozjpeg/strtest.c +0 -170
- data/ext/image_pack/vendor/mozjpeg/tjbench.c +0 -1044
- data/ext/image_pack/vendor/mozjpeg/tjexample.c +0 -406
- data/ext/image_pack/vendor/mozjpeg/tjunittest.c +0 -961
- data/ext/image_pack/vendor/mozjpeg/tjutil.c +0 -70
- data/ext/image_pack/vendor/mozjpeg/transupp.c +0 -2373
- data/ext/image_pack/vendor/mozjpeg/turbojpeg-jni.c +0 -1259
- data/ext/image_pack/vendor/mozjpeg/turbojpeg.c +0 -2320
- data/ext/image_pack/vendor/mozjpeg/wrbmp.c +0 -552
- data/ext/image_pack/vendor/mozjpeg/wrgif.c +0 -580
- data/ext/image_pack/vendor/mozjpeg/wrjpgcom.c +0 -577
- data/ext/image_pack/vendor/mozjpeg/wrppm.c +0 -366
- data/ext/image_pack/vendor/mozjpeg/wrtarga.c +0 -258
- data/ext/image_pack/vendor/mozjpeg/yuvjpeg.c +0 -268
|
@@ -2,14 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
module ImagePack
|
|
4
4
|
class Configuration
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
SIZE_ATTRIBUTES = %i[
|
|
6
|
+
direct_input_threshold
|
|
7
|
+
direct_pixel_threshold
|
|
8
|
+
max_pixels
|
|
9
|
+
max_output_size
|
|
10
|
+
max_input_size
|
|
11
|
+
].freeze
|
|
12
|
+
|
|
13
|
+
INT_ATTRIBUTES = %i[
|
|
14
|
+
max_width
|
|
15
|
+
max_height
|
|
16
|
+
].freeze
|
|
17
|
+
|
|
18
|
+
attr_reader :execution,
|
|
19
|
+
:direct_input_threshold,
|
|
20
|
+
:direct_pixel_threshold,
|
|
21
|
+
:max_pixels,
|
|
22
|
+
:max_width,
|
|
23
|
+
:max_height,
|
|
24
|
+
:max_output_size,
|
|
25
|
+
:max_input_size
|
|
13
26
|
|
|
14
27
|
def initialize
|
|
15
28
|
@execution = :auto
|
|
@@ -21,5 +34,38 @@ module ImagePack
|
|
|
21
34
|
@max_output_size = 256 * 1024 * 1024
|
|
22
35
|
@max_input_size = 256 * 1024 * 1024
|
|
23
36
|
end
|
|
37
|
+
|
|
38
|
+
def execution=(value)
|
|
39
|
+
unless ImagePack::EXECUTION_MODES.include?(value)
|
|
40
|
+
raise InvalidArgumentError, "execution must be one of #{ImagePack::EXECUTION_MODES}, got: #{value.inspect}"
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
if value == :offload && ImagePack.respond_to?(:offload_safe?) && !ImagePack.offload_safe?
|
|
44
|
+
raise UnsupportedError,
|
|
45
|
+
"execution: :offload requires Ruby >= 3.4.0; use execution: :nogvl or :auto"
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
@execution = value
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
SIZE_ATTRIBUTES.each do |name|
|
|
52
|
+
define_method("#{name}=") do |value|
|
|
53
|
+
instance_variable_set("@#{name}", validate_nonnegative_integer!(name, value))
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
INT_ATTRIBUTES.each do |name|
|
|
58
|
+
define_method("#{name}=") do |value|
|
|
59
|
+
instance_variable_set("@#{name}", validate_nonnegative_integer!(name, value))
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
private
|
|
64
|
+
|
|
65
|
+
def validate_nonnegative_integer!(name, value)
|
|
66
|
+
return value if value.is_a?(Integer) && value >= 0
|
|
67
|
+
|
|
68
|
+
raise InvalidArgumentError, "#{name} must be an Integer >= 0, got: #{value.inspect}"
|
|
69
|
+
end
|
|
24
70
|
end
|
|
25
71
|
end
|
data/lib/image_pack/version.rb
CHANGED
data/lib/image_pack.rb
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
required = Gem::Version.new("3.
|
|
3
|
+
required = Gem::Version.new("3.1.0")
|
|
4
4
|
current = Gem::Version.new(RUBY_VERSION)
|
|
5
5
|
|
|
6
6
|
if current < required
|
|
7
7
|
raise LoadError,
|
|
8
|
-
"image_pack requires Ruby >= 3.
|
|
9
|
-
"
|
|
8
|
+
"image_pack requires Ruby >= 3.1.0, got #{RUBY_VERSION}. " \
|
|
9
|
+
"Ruby >= 3.4.0 is required only for execution: :offload."
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
require "pathname"
|
|
@@ -50,10 +50,15 @@ module ImagePack
|
|
|
50
50
|
{
|
|
51
51
|
version: VERSION,
|
|
52
52
|
mozjpeg: defined?(NATIVE_MOZJPEG_VERSION) ? NATIVE_MOZJPEG_VERSION : nil,
|
|
53
|
-
simd: defined?(NATIVE_SIMD) ? NATIVE_SIMD : nil
|
|
53
|
+
simd: defined?(NATIVE_SIMD) ? NATIVE_SIMD : nil,
|
|
54
|
+
offload_safe: offload_safe?
|
|
54
55
|
}
|
|
55
56
|
end
|
|
56
57
|
|
|
58
|
+
def offload_safe?
|
|
59
|
+
defined?(NATIVE_OFFLOAD_SAFE) && NATIVE_OFFLOAD_SAFE == true
|
|
60
|
+
end
|
|
61
|
+
|
|
57
62
|
def compress_bytes(bytes, **options)
|
|
58
63
|
raise InvalidArgumentError, "bytes must be a String" unless bytes.is_a?(String)
|
|
59
64
|
|
|
@@ -86,8 +91,12 @@ module ImagePack
|
|
|
86
91
|
strip_metadata: false,
|
|
87
92
|
execution: nil,
|
|
88
93
|
cancellable: false)
|
|
94
|
+
validate_boolean!(:progressive, progressive)
|
|
95
|
+
validate_boolean!(:strip_metadata, strip_metadata)
|
|
96
|
+
validate_boolean!(:cancellable, cancellable)
|
|
89
97
|
execution ||= configuration.execution
|
|
90
98
|
validate_execution!(execution)
|
|
99
|
+
validate_execution_supported!(execution)
|
|
91
100
|
validate_cancellable!(:lossless_optimize, execution, cancellable)
|
|
92
101
|
|
|
93
102
|
normalized_input_kind = input_kind!(input)
|
|
@@ -115,13 +124,17 @@ module ImagePack
|
|
|
115
124
|
cancellable: false)
|
|
116
125
|
validate_algo!(algo)
|
|
117
126
|
validate_min_ssim!(min_ssim)
|
|
118
|
-
|
|
127
|
+
validate_boolean!(:mozjpeg_trellis, mozjpeg_trellis)
|
|
128
|
+
validate_boolean!(:progressive, progressive)
|
|
129
|
+
validate_boolean!(:strip_metadata, strip_metadata)
|
|
130
|
+
validate_boolean!(:cancellable, cancellable)
|
|
119
131
|
quality_was_given = !quality.nil?
|
|
120
132
|
effective_quality = quality_was_given ? quality : DEFAULT_QUALITY
|
|
121
133
|
effective_quality = 1 if min_ssim && !quality_was_given
|
|
122
134
|
validate_quality!(effective_quality)
|
|
123
135
|
execution ||= configuration.execution
|
|
124
136
|
validate_execution!(execution)
|
|
137
|
+
validate_execution_supported!(execution)
|
|
125
138
|
validate_cancellable!(algo, execution, cancellable)
|
|
126
139
|
|
|
127
140
|
normalized_input_kind = input_kind!(input)
|
|
@@ -130,7 +143,7 @@ module ImagePack
|
|
|
130
143
|
|
|
131
144
|
__compress_jpeg(input, normalized_input_kind,
|
|
132
145
|
output, normalized_output_kind,
|
|
133
|
-
ALGO_TO_NATIVE.fetch(algo), effective_quality
|
|
146
|
+
ALGO_TO_NATIVE.fetch(algo), effective_quality,
|
|
134
147
|
min_ssim ? min_ssim.to_f : 0.0,
|
|
135
148
|
mozjpeg_trellis ? 1 : 0,
|
|
136
149
|
progressive ? 1 : 0,
|
|
@@ -146,21 +159,33 @@ module ImagePack
|
|
|
146
159
|
channels:,
|
|
147
160
|
output: nil,
|
|
148
161
|
algo: DEFAULT_ALGO,
|
|
149
|
-
quality:
|
|
162
|
+
quality: nil,
|
|
150
163
|
min_ssim: nil,
|
|
164
|
+
mozjpeg_trellis: true,
|
|
151
165
|
progressive: false,
|
|
152
166
|
drop_alpha: nil,
|
|
167
|
+
exact_size: false,
|
|
153
168
|
execution: nil,
|
|
154
169
|
cancellable: false)
|
|
170
|
+
validate_pixel_buffer!(buffer)
|
|
155
171
|
validate_algo!(algo)
|
|
156
172
|
validate_min_ssim!(min_ssim)
|
|
157
|
-
|
|
173
|
+
validate_boolean!(:mozjpeg_trellis, mozjpeg_trellis)
|
|
174
|
+
validate_boolean!(:progressive, progressive)
|
|
175
|
+
validate_drop_alpha!(drop_alpha)
|
|
176
|
+
validate_boolean!(:exact_size, exact_size)
|
|
177
|
+
validate_boolean!(:cancellable, cancellable)
|
|
178
|
+
quality_was_given = !quality.nil?
|
|
179
|
+
effective_quality = quality_was_given ? quality : DEFAULT_QUALITY
|
|
180
|
+
effective_quality = 1 if min_ssim && !quality_was_given
|
|
181
|
+
validate_quality!(effective_quality)
|
|
158
182
|
validate_dimensions!(width, height, channels)
|
|
159
183
|
execution ||= configuration.execution
|
|
160
184
|
validate_execution!(execution)
|
|
185
|
+
validate_execution_supported!(execution)
|
|
161
186
|
validate_cancellable!(algo, execution, cancellable)
|
|
162
187
|
|
|
163
|
-
if channels
|
|
188
|
+
if channels == 4
|
|
164
189
|
case drop_alpha
|
|
165
190
|
when nil
|
|
166
191
|
warn "ImagePack.compress_pixels: RGBA input has its alpha channel " \
|
|
@@ -175,16 +200,18 @@ module ImagePack
|
|
|
175
200
|
normalized_output_kind = output_kind!(output)
|
|
176
201
|
has_scheduler = fiber_scheduler_active?
|
|
177
202
|
|
|
178
|
-
if min_ssim && channels
|
|
203
|
+
if min_ssim && channels == 4
|
|
179
204
|
raise UnsupportedError, "min_ssim is not supported for RGBA input"
|
|
180
205
|
end
|
|
181
206
|
|
|
182
207
|
__compress_pixels(buffer,
|
|
183
|
-
width
|
|
208
|
+
width, height, channels,
|
|
184
209
|
output, normalized_output_kind,
|
|
185
|
-
ALGO_TO_NATIVE.fetch(algo),
|
|
210
|
+
ALGO_TO_NATIVE.fetch(algo), effective_quality,
|
|
186
211
|
min_ssim ? min_ssim.to_f : 0.0,
|
|
212
|
+
mozjpeg_trellis ? 1 : 0,
|
|
187
213
|
progressive ? 1 : 0,
|
|
214
|
+
exact_size ? 1 : 0,
|
|
188
215
|
execution,
|
|
189
216
|
cancellable ? 1 : 0,
|
|
190
217
|
has_scheduler ? 1 : 0)
|
|
@@ -246,11 +273,16 @@ module ImagePack
|
|
|
246
273
|
raise InvalidArgumentError, "min_ssim must be Numeric > 0.0 and <= 1.0, got: #{min_ssim.inspect}"
|
|
247
274
|
end
|
|
248
275
|
|
|
249
|
-
|
|
250
|
-
def validate_mozjpeg_trellis!(value)
|
|
276
|
+
def validate_boolean!(name, value)
|
|
251
277
|
return if value == true || value == false
|
|
252
278
|
|
|
253
|
-
raise InvalidArgumentError, "
|
|
279
|
+
raise InvalidArgumentError, "#{name} must be true or false, got: #{value.inspect}"
|
|
280
|
+
end
|
|
281
|
+
|
|
282
|
+
def validate_drop_alpha!(value)
|
|
283
|
+
return if value.nil? || value == true || value == false
|
|
284
|
+
|
|
285
|
+
raise InvalidArgumentError, "drop_alpha must be true, false, or nil, got: #{value.inspect}"
|
|
254
286
|
end
|
|
255
287
|
|
|
256
288
|
def validate_execution!(execution)
|
|
@@ -259,12 +291,27 @@ module ImagePack
|
|
|
259
291
|
raise InvalidArgumentError, "execution must be one of #{EXECUTION_MODES}, got: #{execution.inspect}"
|
|
260
292
|
end
|
|
261
293
|
|
|
294
|
+
def validate_execution_supported!(execution)
|
|
295
|
+
return unless execution == :offload
|
|
296
|
+
return if offload_safe?
|
|
297
|
+
|
|
298
|
+
raise UnsupportedError,
|
|
299
|
+
"execution: :offload requires Ruby >= 3.4.0; use execution: :nogvl or :auto"
|
|
300
|
+
end
|
|
301
|
+
|
|
262
302
|
def validate_dimensions!(width, height, channels)
|
|
263
|
-
raise InvalidArgumentError, "width must be > 0" unless width.is_a?(Integer) && width.positive?
|
|
264
|
-
raise InvalidArgumentError, "height must be > 0" unless height.is_a?(Integer) && height.positive?
|
|
303
|
+
raise InvalidArgumentError, "width must be Integer > 0" unless width.is_a?(Integer) && width.positive?
|
|
304
|
+
raise InvalidArgumentError, "height must be Integer > 0" unless height.is_a?(Integer) && height.positive?
|
|
265
305
|
raise InvalidArgumentError, "channels must be 1, 3 or 4" unless [1, 3, 4].include?(channels)
|
|
266
306
|
end
|
|
267
307
|
|
|
308
|
+
def validate_pixel_buffer!(buffer)
|
|
309
|
+
return if buffer.is_a?(String)
|
|
310
|
+
return if defined?(IO::Buffer) && buffer.is_a?(IO::Buffer)
|
|
311
|
+
|
|
312
|
+
raise InvalidArgumentError, "pixel buffer must be a String or IO::Buffer"
|
|
313
|
+
end
|
|
314
|
+
|
|
268
315
|
def validate_cancellable!(_algo, execution, cancellable)
|
|
269
316
|
return unless cancellable
|
|
270
317
|
return unless execution == :direct
|
|
@@ -274,7 +321,7 @@ module ImagePack
|
|
|
274
321
|
end
|
|
275
322
|
|
|
276
323
|
def fiber_scheduler_active?
|
|
277
|
-
Fiber.respond_to?(:scheduler) && !Fiber.scheduler.nil?
|
|
324
|
+
offload_safe? && Fiber.respond_to?(:scheduler) && !Fiber.scheduler.nil?
|
|
278
325
|
end
|
|
279
326
|
end
|
|
280
327
|
end
|
metadata
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: image_pack
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Roman Haydarov
|
|
8
|
+
autorequire:
|
|
8
9
|
bindir: exe
|
|
9
10
|
cert_chain: []
|
|
10
|
-
date:
|
|
11
|
+
date: 2026-06-17 00:00:00.000000000 Z
|
|
11
12
|
dependencies:
|
|
12
13
|
- !ruby/object:Gem::Dependency
|
|
13
14
|
name: rake
|
|
@@ -80,8 +81,8 @@ dependencies:
|
|
|
80
81
|
- !ruby/object:Gem::Version
|
|
81
82
|
version: '2.21'
|
|
82
83
|
description: Single API, vendored pure-C MozJPEG/libjpeg codec, no tempfiles, Ruby
|
|
83
|
-
3.4 Fiber::Scheduler-aware
|
|
84
|
-
libjpeg, git, or CMake required.
|
|
84
|
+
3.1+ native JPEG execution; Ruby 3.4+ enables Fiber::Scheduler-aware offload. Ships
|
|
85
|
+
vendored C sources — no system libjpeg, git, or CMake required.
|
|
85
86
|
email:
|
|
86
87
|
- romnhajdarov@gmail.com
|
|
87
88
|
executables: []
|
|
@@ -95,27 +96,25 @@ files:
|
|
|
95
96
|
- THIRD_PARTY_NOTICES.md
|
|
96
97
|
- ext/image_pack/extconf.rb
|
|
97
98
|
- ext/image_pack/image_pack.c
|
|
99
|
+
- ext/image_pack/mozjpeg_sources.rb
|
|
98
100
|
- ext/image_pack/vendor/.vendored
|
|
101
|
+
- ext/image_pack/vendor/mozjpeg/BUILDING.md
|
|
99
102
|
- ext/image_pack/vendor/mozjpeg/BUILDING.txt
|
|
100
103
|
- ext/image_pack/vendor/mozjpeg/CMakeLists.txt
|
|
104
|
+
- ext/image_pack/vendor/mozjpeg/CODE_OF_CONDUCT.md
|
|
105
|
+
- ext/image_pack/vendor/mozjpeg/ChangeLog.md
|
|
101
106
|
- ext/image_pack/vendor/mozjpeg/LICENSE.md
|
|
102
107
|
- ext/image_pack/vendor/mozjpeg/README-mozilla.txt
|
|
103
108
|
- ext/image_pack/vendor/mozjpeg/README-turbo.txt
|
|
104
|
-
- ext/image_pack/vendor/mozjpeg/README.ijg
|
|
105
109
|
- ext/image_pack/vendor/mozjpeg/README.md
|
|
106
110
|
- ext/image_pack/vendor/mozjpeg/cderror.h
|
|
107
|
-
- ext/image_pack/vendor/mozjpeg/cdjpeg.c
|
|
108
111
|
- ext/image_pack/vendor/mozjpeg/cdjpeg.h
|
|
109
|
-
- ext/image_pack/vendor/mozjpeg/cjpeg.c
|
|
110
112
|
- ext/image_pack/vendor/mozjpeg/cmyk.h
|
|
111
113
|
- ext/image_pack/vendor/mozjpeg/coderules.txt
|
|
112
114
|
- ext/image_pack/vendor/mozjpeg/croptest.in
|
|
113
|
-
- ext/image_pack/vendor/mozjpeg/djpeg.c
|
|
114
115
|
- ext/image_pack/vendor/mozjpeg/example.txt
|
|
115
|
-
- ext/image_pack/vendor/mozjpeg/jaricom.c
|
|
116
116
|
- ext/image_pack/vendor/mozjpeg/jcapimin.c
|
|
117
117
|
- ext/image_pack/vendor/mozjpeg/jcapistd.c
|
|
118
|
-
- ext/image_pack/vendor/mozjpeg/jcarith.c
|
|
119
118
|
- ext/image_pack/vendor/mozjpeg/jccoefct.c
|
|
120
119
|
- ext/image_pack/vendor/mozjpeg/jccolext.c
|
|
121
120
|
- ext/image_pack/vendor/mozjpeg/jccolor.c
|
|
@@ -137,14 +136,10 @@ files:
|
|
|
137
136
|
- ext/image_pack/vendor/mozjpeg/jcphuff.c
|
|
138
137
|
- ext/image_pack/vendor/mozjpeg/jcprepct.c
|
|
139
138
|
- ext/image_pack/vendor/mozjpeg/jcsample.c
|
|
140
|
-
- ext/image_pack/vendor/mozjpeg/jcstest.c
|
|
141
139
|
- ext/image_pack/vendor/mozjpeg/jctrans.c
|
|
142
140
|
- ext/image_pack/vendor/mozjpeg/jdapimin.c
|
|
143
141
|
- ext/image_pack/vendor/mozjpeg/jdapistd.c
|
|
144
|
-
- ext/image_pack/vendor/mozjpeg/jdarith.c
|
|
145
|
-
- ext/image_pack/vendor/mozjpeg/jdatadst-tj.c
|
|
146
142
|
- ext/image_pack/vendor/mozjpeg/jdatadst.c
|
|
147
|
-
- ext/image_pack/vendor/mozjpeg/jdatasrc-tj.c
|
|
148
143
|
- ext/image_pack/vendor/mozjpeg/jdatasrc.c
|
|
149
144
|
- ext/image_pack/vendor/mozjpeg/jdcoefct.c
|
|
150
145
|
- ext/image_pack/vendor/mozjpeg/jdcoefct.h
|
|
@@ -189,8 +184,6 @@ files:
|
|
|
189
184
|
- ext/image_pack/vendor/mozjpeg/jpegcomp.h
|
|
190
185
|
- ext/image_pack/vendor/mozjpeg/jpegint.h
|
|
191
186
|
- ext/image_pack/vendor/mozjpeg/jpeglib.h
|
|
192
|
-
- ext/image_pack/vendor/mozjpeg/jpegtran.c
|
|
193
|
-
- ext/image_pack/vendor/mozjpeg/jpegyuv.c
|
|
194
187
|
- ext/image_pack/vendor/mozjpeg/jquant1.c
|
|
195
188
|
- ext/image_pack/vendor/mozjpeg/jquant2.c
|
|
196
189
|
- ext/image_pack/vendor/mozjpeg/jsimd.h
|
|
@@ -201,18 +194,6 @@ files:
|
|
|
201
194
|
- ext/image_pack/vendor/mozjpeg/jversion.h.in
|
|
202
195
|
- ext/image_pack/vendor/mozjpeg/libjpeg.map.in
|
|
203
196
|
- ext/image_pack/vendor/mozjpeg/libjpeg.txt
|
|
204
|
-
- ext/image_pack/vendor/mozjpeg/rdbmp.c
|
|
205
|
-
- ext/image_pack/vendor/mozjpeg/rdcolmap.c
|
|
206
|
-
- ext/image_pack/vendor/mozjpeg/rdgif.c
|
|
207
|
-
- ext/image_pack/vendor/mozjpeg/rdjpeg.c
|
|
208
|
-
- ext/image_pack/vendor/mozjpeg/rdjpgcom.c
|
|
209
|
-
- ext/image_pack/vendor/mozjpeg/rdpng.c
|
|
210
|
-
- ext/image_pack/vendor/mozjpeg/rdppm.c
|
|
211
|
-
- ext/image_pack/vendor/mozjpeg/rdswitch.c
|
|
212
|
-
- ext/image_pack/vendor/mozjpeg/rdtarga.c
|
|
213
|
-
- ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jccolext-neon.c
|
|
214
|
-
- ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jchuff-neon.c
|
|
215
|
-
- ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd.c
|
|
216
197
|
- ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd_neon.S
|
|
217
198
|
- ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jccolext-neon.c
|
|
218
199
|
- ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jchuff-neon.c
|
|
@@ -293,29 +274,11 @@ files:
|
|
|
293
274
|
- ext/image_pack/vendor/mozjpeg/simd/i386/jquantf-sse2.asm
|
|
294
275
|
- ext/image_pack/vendor/mozjpeg/simd/i386/jquanti-avx2.asm
|
|
295
276
|
- ext/image_pack/vendor/mozjpeg/simd/i386/jquanti-sse2.asm
|
|
296
|
-
- ext/image_pack/vendor/mozjpeg/simd/i386/jsimd.c
|
|
297
277
|
- ext/image_pack/vendor/mozjpeg/simd/i386/jsimdcpu.asm
|
|
298
278
|
- ext/image_pack/vendor/mozjpeg/simd/jsimd.h
|
|
299
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips/jsimd.c
|
|
300
279
|
- ext/image_pack/vendor/mozjpeg/simd/mips/jsimd_dspr2.S
|
|
301
280
|
- ext/image_pack/vendor/mozjpeg/simd/mips/jsimd_dspr2_asm.h
|
|
302
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jccolext-mmi.c
|
|
303
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jccolor-mmi.c
|
|
304
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jcgray-mmi.c
|
|
305
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jcgryext-mmi.c
|
|
306
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample-mmi.c
|
|
307
281
|
- ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample.h
|
|
308
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolext-mmi.c
|
|
309
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolor-mmi.c
|
|
310
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jdmerge-mmi.c
|
|
311
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jdmrgext-mmi.c
|
|
312
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jdsample-mmi.c
|
|
313
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctfst-mmi.c
|
|
314
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctint-mmi.c
|
|
315
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jidctfst-mmi.c
|
|
316
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jidctint-mmi.c
|
|
317
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jquanti-mmi.c
|
|
318
|
-
- ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd.c
|
|
319
282
|
- ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd_mmi.h
|
|
320
283
|
- ext/image_pack/vendor/mozjpeg/simd/mips64/loongson-mmintrin.h
|
|
321
284
|
- ext/image_pack/vendor/mozjpeg/simd/nasm/jcolsamp.inc
|
|
@@ -323,23 +286,7 @@ files:
|
|
|
323
286
|
- ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdcfg.inc
|
|
324
287
|
- ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdcfg.inc.h
|
|
325
288
|
- ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdext.inc
|
|
326
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolext-altivec.c
|
|
327
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolor-altivec.c
|
|
328
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgray-altivec.c
|
|
329
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgryext-altivec.c
|
|
330
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample-altivec.c
|
|
331
289
|
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample.h
|
|
332
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolext-altivec.c
|
|
333
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolor-altivec.c
|
|
334
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmerge-altivec.c
|
|
335
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmrgext-altivec.c
|
|
336
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jdsample-altivec.c
|
|
337
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctfst-altivec.c
|
|
338
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctint-altivec.c
|
|
339
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctfst-altivec.c
|
|
340
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctint-altivec.c
|
|
341
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jquanti-altivec.c
|
|
342
|
-
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd.c
|
|
343
290
|
- ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd_altivec.h
|
|
344
291
|
- ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolext-avx2.asm
|
|
345
292
|
- ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolext-sse2.asm
|
|
@@ -377,30 +324,16 @@ files:
|
|
|
377
324
|
- ext/image_pack/vendor/mozjpeg/simd/x86_64/jquanti-sse2.asm
|
|
378
325
|
- ext/image_pack/vendor/mozjpeg/simd/x86_64/jsimd.c
|
|
379
326
|
- ext/image_pack/vendor/mozjpeg/simd/x86_64/jsimdcpu.asm
|
|
380
|
-
- ext/image_pack/vendor/mozjpeg/strtest.c
|
|
381
327
|
- ext/image_pack/vendor/mozjpeg/structure.txt
|
|
382
|
-
- ext/image_pack/vendor/mozjpeg/tjbench.c
|
|
383
328
|
- ext/image_pack/vendor/mozjpeg/tjbenchtest.in
|
|
384
329
|
- ext/image_pack/vendor/mozjpeg/tjbenchtest.java.in
|
|
385
|
-
- ext/image_pack/vendor/mozjpeg/tjexample.c
|
|
386
330
|
- ext/image_pack/vendor/mozjpeg/tjexampletest.in
|
|
387
331
|
- ext/image_pack/vendor/mozjpeg/tjexampletest.java.in
|
|
388
|
-
- ext/image_pack/vendor/mozjpeg/tjunittest.c
|
|
389
|
-
- ext/image_pack/vendor/mozjpeg/tjutil.c
|
|
390
332
|
- ext/image_pack/vendor/mozjpeg/tjutil.h
|
|
391
|
-
- ext/image_pack/vendor/mozjpeg/transupp.c
|
|
392
333
|
- ext/image_pack/vendor/mozjpeg/transupp.h
|
|
393
|
-
- ext/image_pack/vendor/mozjpeg/turbojpeg-jni.c
|
|
394
|
-
- ext/image_pack/vendor/mozjpeg/turbojpeg.c
|
|
395
334
|
- ext/image_pack/vendor/mozjpeg/turbojpeg.h
|
|
396
335
|
- ext/image_pack/vendor/mozjpeg/usage.txt
|
|
397
336
|
- ext/image_pack/vendor/mozjpeg/wizard.txt
|
|
398
|
-
- ext/image_pack/vendor/mozjpeg/wrbmp.c
|
|
399
|
-
- ext/image_pack/vendor/mozjpeg/wrgif.c
|
|
400
|
-
- ext/image_pack/vendor/mozjpeg/wrjpgcom.c
|
|
401
|
-
- ext/image_pack/vendor/mozjpeg/wrppm.c
|
|
402
|
-
- ext/image_pack/vendor/mozjpeg/wrtarga.c
|
|
403
|
-
- ext/image_pack/vendor/mozjpeg/yuvjpeg.c
|
|
404
337
|
- lib/image_pack.rb
|
|
405
338
|
- lib/image_pack/configuration.rb
|
|
406
339
|
- lib/image_pack/errors.rb
|
|
@@ -412,6 +345,7 @@ metadata:
|
|
|
412
345
|
homepage_uri: https://github.com/roman-haidarov/image_pack
|
|
413
346
|
source_code_uri: https://github.com/roman-haidarov/image_pack
|
|
414
347
|
changelog_uri: https://github.com/roman-haidarov/image_pack/blob/main/CHANGELOG.md
|
|
348
|
+
post_install_message:
|
|
415
349
|
rdoc_options: []
|
|
416
350
|
require_paths:
|
|
417
351
|
- lib
|
|
@@ -419,14 +353,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
419
353
|
requirements:
|
|
420
354
|
- - ">="
|
|
421
355
|
- !ruby/object:Gem::Version
|
|
422
|
-
version: 3.
|
|
356
|
+
version: 3.1.0
|
|
423
357
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
424
358
|
requirements:
|
|
425
359
|
- - ">="
|
|
426
360
|
- !ruby/object:Gem::Version
|
|
427
361
|
version: '0'
|
|
428
362
|
requirements: []
|
|
429
|
-
rubygems_version: 3.
|
|
363
|
+
rubygems_version: 3.3.27
|
|
364
|
+
signing_key:
|
|
430
365
|
specification_version: 4
|
|
431
366
|
summary: 'Ruby-native pure-C JPEG runtime: MozJPEG/libjpeg'
|
|
432
367
|
test_files: []
|