image_optim 0.28.0 → 0.31.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/check.yml +89 -0
- data/.pre-commit-hooks.yaml +9 -0
- data/.rubocop.yml +6 -3
- data/CHANGELOG.markdown +20 -0
- data/CONTRIBUTING.markdown +1 -1
- data/Gemfile +1 -7
- data/LICENSE.txt +1 -1
- data/README.markdown +18 -9
- data/Vagrantfile +1 -1
- data/image_optim.gemspec +6 -3
- data/lib/image_optim/bin_resolver/bin.rb +9 -9
- data/lib/image_optim/cache.rb +6 -0
- data/lib/image_optim/cmd.rb +45 -6
- data/lib/image_optim/config.rb +11 -5
- data/lib/image_optim/elapsed_time.rb +26 -0
- data/lib/image_optim/errors.rb +9 -0
- data/lib/image_optim/path.rb +1 -1
- data/lib/image_optim/runner/option_parser.rb +21 -17
- data/lib/image_optim/runner.rb +1 -1
- data/lib/image_optim/timer.rb +25 -0
- data/lib/image_optim/worker/advpng.rb +7 -7
- data/lib/image_optim/worker/gifsicle.rb +11 -11
- data/lib/image_optim/worker/jhead.rb +2 -2
- data/lib/image_optim/worker/jpegoptim.rb +11 -11
- data/lib/image_optim/worker/jpegrecompress.rb +6 -6
- data/lib/image_optim/worker/jpegtran.rb +4 -4
- data/lib/image_optim/worker/optipng.rb +7 -7
- data/lib/image_optim/worker/oxipng.rb +53 -0
- data/lib/image_optim/worker/pngcrush.rb +6 -6
- data/lib/image_optim/worker/pngout.rb +7 -7
- data/lib/image_optim/worker/pngquant.rb +9 -9
- data/lib/image_optim/worker/svgo.rb +2 -2
- data/lib/image_optim/worker.rb +32 -29
- data/lib/image_optim.rb +16 -10
- data/script/update_worker_options_in_readme +1 -1
- data/script/worker_analysis +16 -18
- data/spec/image_optim/bin_resolver_spec.rb +5 -5
- data/spec/image_optim/cache_path_spec.rb +7 -10
- data/spec/image_optim/cache_spec.rb +7 -7
- data/spec/image_optim/cmd_spec.rb +64 -6
- data/spec/image_optim/config_spec.rb +36 -20
- data/spec/image_optim/elapsed_time_spec.rb +14 -0
- data/spec/image_optim/handler_spec.rb +1 -1
- data/spec/image_optim/hash_helpers_spec.rb +18 -18
- data/spec/image_optim/option_definition_spec.rb +6 -6
- data/spec/image_optim/path_spec.rb +8 -11
- data/spec/image_optim/runner/option_parser_spec.rb +4 -4
- data/spec/image_optim/timer_spec.rb +32 -0
- data/spec/image_optim/worker/jpegrecompress_spec.rb +2 -2
- data/spec/image_optim/worker/optipng_spec.rb +11 -11
- data/spec/image_optim/worker/oxipng_spec.rb +89 -0
- data/spec/image_optim/worker/pngquant_spec.rb +5 -5
- data/spec/image_optim/worker_spec.rb +17 -17
- data/spec/image_optim_spec.rb +47 -10
- data/spec/images/invisiblepixels/generate +1 -1
- data/spec/spec_helper.rb +24 -21
- metadata +35 -11
- data/.appveyor.yml +0 -53
- data/.travis.yml +0 -48
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: image_optim
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.31.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Kuchin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-10-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fspath
|
@@ -33,7 +33,7 @@ dependencies:
|
|
33
33
|
version: '1.5'
|
34
34
|
- - "<"
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: '
|
36
|
+
version: '4'
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '1.5'
|
44
44
|
- - "<"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
46
|
+
version: '4'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: exifr
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -146,6 +146,20 @@ dependencies:
|
|
146
146
|
- - "~>"
|
147
147
|
- !ruby/object:Gem::Version
|
148
148
|
version: '1.0'
|
149
|
+
- !ruby/object:Gem::Dependency
|
150
|
+
name: rubocop-rspec
|
151
|
+
requirement: !ruby/object:Gem::Requirement
|
152
|
+
requirements:
|
153
|
+
- - "~>"
|
154
|
+
- !ruby/object:Gem::Version
|
155
|
+
version: '2.0'
|
156
|
+
type: :development
|
157
|
+
prerelease: false
|
158
|
+
version_requirements: !ruby/object:Gem::Requirement
|
159
|
+
requirements:
|
160
|
+
- - "~>"
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: '2.0'
|
149
163
|
description:
|
150
164
|
email:
|
151
165
|
executables:
|
@@ -153,10 +167,10 @@ executables:
|
|
153
167
|
extensions: []
|
154
168
|
extra_rdoc_files: []
|
155
169
|
files:
|
156
|
-
- ".
|
170
|
+
- ".github/workflows/check.yml"
|
157
171
|
- ".gitignore"
|
172
|
+
- ".pre-commit-hooks.yaml"
|
158
173
|
- ".rubocop.yml"
|
159
|
-
- ".travis.yml"
|
160
174
|
- CHANGELOG.markdown
|
161
175
|
- CONTRIBUTING.markdown
|
162
176
|
- Gemfile
|
@@ -176,6 +190,8 @@ files:
|
|
176
190
|
- lib/image_optim/cmd.rb
|
177
191
|
- lib/image_optim/config.rb
|
178
192
|
- lib/image_optim/configuration_error.rb
|
193
|
+
- lib/image_optim/elapsed_time.rb
|
194
|
+
- lib/image_optim/errors.rb
|
179
195
|
- lib/image_optim/handler.rb
|
180
196
|
- lib/image_optim/hash_helpers.rb
|
181
197
|
- lib/image_optim/image_meta.rb
|
@@ -188,6 +204,7 @@ files:
|
|
188
204
|
- lib/image_optim/runner/glob_helpers.rb
|
189
205
|
- lib/image_optim/runner/option_parser.rb
|
190
206
|
- lib/image_optim/space.rb
|
207
|
+
- lib/image_optim/timer.rb
|
191
208
|
- lib/image_optim/true_false_nil.rb
|
192
209
|
- lib/image_optim/worker.rb
|
193
210
|
- lib/image_optim/worker/advpng.rb
|
@@ -198,6 +215,7 @@ files:
|
|
198
215
|
- lib/image_optim/worker/jpegrecompress.rb
|
199
216
|
- lib/image_optim/worker/jpegtran.rb
|
200
217
|
- lib/image_optim/worker/optipng.rb
|
218
|
+
- lib/image_optim/worker/oxipng.rb
|
201
219
|
- lib/image_optim/worker/pngcrush.rb
|
202
220
|
- lib/image_optim/worker/pngout.rb
|
203
221
|
- lib/image_optim/worker/pngquant.rb
|
@@ -214,6 +232,7 @@ files:
|
|
214
232
|
- spec/image_optim/cache_spec.rb
|
215
233
|
- spec/image_optim/cmd_spec.rb
|
216
234
|
- spec/image_optim/config_spec.rb
|
235
|
+
- spec/image_optim/elapsed_time_spec.rb
|
217
236
|
- spec/image_optim/handler_spec.rb
|
218
237
|
- spec/image_optim/hash_helpers_spec.rb
|
219
238
|
- spec/image_optim/image_meta_spec.rb
|
@@ -224,8 +243,10 @@ files:
|
|
224
243
|
- spec/image_optim/runner/glob_helpers_spec.rb
|
225
244
|
- spec/image_optim/runner/option_parser_spec.rb
|
226
245
|
- spec/image_optim/space_spec.rb
|
246
|
+
- spec/image_optim/timer_spec.rb
|
227
247
|
- spec/image_optim/worker/jpegrecompress_spec.rb
|
228
248
|
- spec/image_optim/worker/optipng_spec.rb
|
249
|
+
- spec/image_optim/worker/oxipng_spec.rb
|
229
250
|
- spec/image_optim/worker/pngquant_spec.rb
|
230
251
|
- spec/image_optim/worker_spec.rb
|
231
252
|
- spec/image_optim_spec.rb
|
@@ -264,7 +285,7 @@ licenses:
|
|
264
285
|
metadata:
|
265
286
|
bug_tracker_uri: https://github.com/toy/image_optim/issues
|
266
287
|
changelog_uri: https://github.com/toy/image_optim/blob/master/CHANGELOG.markdown
|
267
|
-
documentation_uri: https://www.rubydoc.info/gems/image_optim/0.
|
288
|
+
documentation_uri: https://www.rubydoc.info/gems/image_optim/0.31.1
|
268
289
|
source_code_uri: https://github.com/toy/image_optim
|
269
290
|
post_install_message: |
|
270
291
|
Rails image assets optimization is extracted into image_optim_rails gem
|
@@ -276,20 +297,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
276
297
|
requirements:
|
277
298
|
- - ">="
|
278
299
|
- !ruby/object:Gem::Version
|
279
|
-
version:
|
300
|
+
version: 1.9.3
|
280
301
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
281
302
|
requirements:
|
282
303
|
- - ">="
|
283
304
|
- !ruby/object:Gem::Version
|
284
305
|
version: '0'
|
285
306
|
requirements: []
|
286
|
-
rubygems_version: 3.
|
307
|
+
rubygems_version: 3.2.29
|
287
308
|
signing_key:
|
288
309
|
specification_version: 4
|
289
310
|
summary: Command line tool and ruby interface to optimize (lossless compress, optionally
|
290
311
|
lossy) jpeg, png, gif and svg images using external utilities (advpng, gifsicle,
|
291
|
-
jhead, jpeg-recompress, jpegoptim, jpegrescan, jpegtran, optipng,
|
292
|
-
pngquant, svgo)
|
312
|
+
jhead, jpeg-recompress, jpegoptim, jpegrescan, jpegtran, optipng, oxipng, pngcrush,
|
313
|
+
pngout, pngquant, svgo)
|
293
314
|
test_files:
|
294
315
|
- spec/image_optim/bin_resolver/comparable_condition_spec.rb
|
295
316
|
- spec/image_optim/bin_resolver/simple_version_spec.rb
|
@@ -298,6 +319,7 @@ test_files:
|
|
298
319
|
- spec/image_optim/cache_spec.rb
|
299
320
|
- spec/image_optim/cmd_spec.rb
|
300
321
|
- spec/image_optim/config_spec.rb
|
322
|
+
- spec/image_optim/elapsed_time_spec.rb
|
301
323
|
- spec/image_optim/handler_spec.rb
|
302
324
|
- spec/image_optim/hash_helpers_spec.rb
|
303
325
|
- spec/image_optim/image_meta_spec.rb
|
@@ -308,8 +330,10 @@ test_files:
|
|
308
330
|
- spec/image_optim/runner/glob_helpers_spec.rb
|
309
331
|
- spec/image_optim/runner/option_parser_spec.rb
|
310
332
|
- spec/image_optim/space_spec.rb
|
333
|
+
- spec/image_optim/timer_spec.rb
|
311
334
|
- spec/image_optim/worker/jpegrecompress_spec.rb
|
312
335
|
- spec/image_optim/worker/optipng_spec.rb
|
336
|
+
- spec/image_optim/worker/oxipng_spec.rb
|
313
337
|
- spec/image_optim/worker/pngquant_spec.rb
|
314
338
|
- spec/image_optim/worker_spec.rb
|
315
339
|
- spec/image_optim_spec.rb
|
data/.appveyor.yml
DELETED
@@ -1,53 +0,0 @@
|
|
1
|
-
version: '{build}-{branch}'
|
2
|
-
install:
|
3
|
-
- mkdir tmp\bin || exit 0
|
4
|
-
- set PATH=C:\Ruby25-x64\bin;%cd%\tmp\bin;%PATH%
|
5
|
-
- ruby --version
|
6
|
-
- gem --version
|
7
|
-
- bundle package --all
|
8
|
-
|
9
|
-
- ps: git --work-tree=tmp\bin checkout origin/windows-binaries -- '*.exe'
|
10
|
-
|
11
|
-
- ps: | # svgo
|
12
|
-
npm install -g svgo
|
13
|
-
|
14
|
-
- ps: | # ImageMagick
|
15
|
-
if ((-not (test-path tmp/bin/convert.exe)) -or (-not (test-path tmp/bin/compare.exe)) -or (-not (test-path tmp/bin/magic.xml))) {
|
16
|
-
choco install -y imagemagick.tool
|
17
|
-
cp C:\ProgramData\chocolatey\lib\imagemagick.tool\tools\convert.exe tmp\bin
|
18
|
-
cp C:\ProgramData\chocolatey\lib\imagemagick.tool\tools\compare.exe tmp\bin
|
19
|
-
cp C:\ProgramData\chocolatey\lib\imagemagick.tool\tools\magic.xml tmp\bin
|
20
|
-
}
|
21
|
-
|
22
|
-
- bundle exec image_optim --info --allow-lossy --no-pack
|
23
|
-
cache:
|
24
|
-
- tmp/bin
|
25
|
-
build: off
|
26
|
-
test_script:
|
27
|
-
- ps: |
|
28
|
-
$path = $env:Path
|
29
|
-
$rubypaths = ls -Path C:\Ruby*\bin
|
30
|
-
foreach ($rubypath in $rubypaths) {
|
31
|
-
$env:Path = "$rubypath;" + $path
|
32
|
-
ruby -e "abort unless RUBY_VERSION > '2.3'"
|
33
|
-
if ($LASTEXITCODE -gt 0) {
|
34
|
-
continue
|
35
|
-
}
|
36
|
-
|
37
|
-
echo "################################ $rubypath ################################"
|
38
|
-
ruby --version
|
39
|
-
gem --version
|
40
|
-
bundle package --all
|
41
|
-
bundle install --local -j4
|
42
|
-
bundle exec rspec
|
43
|
-
if ($LASTEXITCODE -gt 0) {
|
44
|
-
exit 1
|
45
|
-
}
|
46
|
-
rm tmp/optimize_test -recurse -force
|
47
|
-
cp spec/images tmp/optimize_test -recurse -force
|
48
|
-
bundle exec image_optim --allow-lossy -r tmp/optimize_test
|
49
|
-
if ($LASTEXITCODE -gt 0) {
|
50
|
-
exit 1
|
51
|
-
}
|
52
|
-
}
|
53
|
-
$env:Path = $path
|
data/.travis.yml
DELETED
@@ -1,48 +0,0 @@
|
|
1
|
-
sudo: false
|
2
|
-
dist: trusty
|
3
|
-
language: ruby
|
4
|
-
cache:
|
5
|
-
bundler: true
|
6
|
-
directories:
|
7
|
-
- $(npm root)
|
8
|
-
- ~/bin
|
9
|
-
rvm:
|
10
|
-
- '1.9.3-p551'
|
11
|
-
- '2.0.0-p648'
|
12
|
-
- '2.1.10'
|
13
|
-
- '2.2.10'
|
14
|
-
- '2.3.8'
|
15
|
-
- '2.4.10'
|
16
|
-
- '2.5.8'
|
17
|
-
- '2.6.6'
|
18
|
-
- '2.7.2'
|
19
|
-
- 'jruby-9.2.11.1'
|
20
|
-
script:
|
21
|
-
- bundle exec image_optim --info
|
22
|
-
- bundle exec rspec
|
23
|
-
before_install:
|
24
|
-
- 'echo "gem: --no-ri --no-rdoc --no-document" > ~/.gemrc'
|
25
|
-
- gem install rubygems-update || gem install rubygems-update --version '< 3'
|
26
|
-
- update_rubygems
|
27
|
-
- gem install bundler || gem install bundler --version '< 2'
|
28
|
-
- nvm install stable
|
29
|
-
- mkdir -p ~/bin
|
30
|
-
- command -v svgo || npm install -g svgo
|
31
|
-
- command -v pngout || curl -L "https://www.jonof.id.au/files/kenutils/pngout-20200115-linux.tar.gz" | tar -xz -C ~/bin --strip-components 2 --wildcards '*/amd64/pngout'
|
32
|
-
matrix:
|
33
|
-
include:
|
34
|
-
- env: CODECLIMATE=1
|
35
|
-
rvm: '2.4.10'
|
36
|
-
after_success: bundle exec codeclimate-test-reporter
|
37
|
-
- env: RUBOCOP=1
|
38
|
-
rvm: '2.4.10'
|
39
|
-
script: bundle exec rubocop
|
40
|
-
before_install: gem update --system && gem install bundler
|
41
|
-
- env: CHECK_RUBIES=1
|
42
|
-
rvm: '2.4.10'
|
43
|
-
script: bundle exec travis_check_rubies
|
44
|
-
before_install: gem update --system && gem install bundler
|
45
|
-
addons:
|
46
|
-
code_climate:
|
47
|
-
repo_token:
|
48
|
-
secure: FDikT3JnOJHOAFSaKwVPB1VOphU0sSzAnzQ+YjSt9XFE+9uFQHth/j4rFoVoqALhCj+47trv6spwkbcSjGCVzm+87OI80GkLCCzNjDOz2W4sP9JWItVgS1VoWW+ioPxpLgpguTb3wutwKOUMEAf+40EX657ZiHumM7nNHrF+RCU=
|