image_optim_pack 0.9.1.20221104-x86_64-darwin → 0.9.1.20221210-x86_64-darwin

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7c5b91f4949e59e3ab7e743ba5f551dcc0ba4c70d736edb13586b5e928d35321
4
- data.tar.gz: 0b358cbad45c7f8e8bc211d11b91d7c566bb6b5b7a0898c53fcebb8c6fd062f7
3
+ metadata.gz: b181831a0a8d5eb1bdb71569b4b3f27799e66482da02f3484689214b8d62d6a6
4
+ data.tar.gz: bbbace829cab3f6476ee9966aad8c8e5d15f5b60cb54f7a325e3f60a8620f5d0
5
5
  SHA512:
6
- metadata.gz: e4746949cb0c1a0df87e473e3f4d2207701d721e716877c58a002a1881234e8028d3828cdeb6bce0907ee0eb1b9ed8359bc929c9944c6d06dfaf3605f4ee3290
7
- data.tar.gz: 4ec3ce59992bb556c1804846de507053af7be9c9681d89f6483e54faf8652da951bb19771293925753c706612d7e08325df8baae4623642ce6638e3c85fcaa92
6
+ metadata.gz: eae88b8a2ce71bf20c1bf40aaf0bd4302f6ff0b77834c41494aec1b5fef6cfb909fd288102c87c2b5fcfac66b0fba336d7300716d9641269d4fbdee495a494e1
7
+ data.tar.gz: f96594ac22f944d821766a3bc8e658a5c6889eb5f20ce35cd87eb3fd0fad7903859a93a87275bd4390fbb674ed34202cc116b4775e70461db10baed2ed1f63b4
@@ -25,6 +25,7 @@ jobs:
25
25
  - '3.1'
26
26
  - jruby-9.2
27
27
  - jruby-9.3
28
+ - jruby-9.4
28
29
  fail-fast: false
29
30
  steps:
30
31
  - uses: actions/checkout@v2
@@ -3,9 +3,16 @@ on:
3
3
  push:
4
4
  tags:
5
5
  - '*'
6
+ workflow_dispatch:
6
7
  jobs:
7
8
  docker-build:
8
9
  runs-on: ubuntu-latest
10
+ strategy:
11
+ matrix:
12
+ params:
13
+ - ''
14
+ - DOCKER_FILE=Dockerfile.debian DOCKER_TAG_SUFFIX=-debian
15
+ fail-fast: false
9
16
  steps:
10
17
  - uses: actions/checkout@v2
11
18
  - uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
@@ -13,4 +20,4 @@ jobs:
13
20
  registry: ghcr.io
14
21
  username: ${{ github.actor }}
15
22
  password: ${{ secrets.GITHUB_TOKEN }}
16
- - run: make docker-push
23
+ - run: make docker-push ${{ matrix.params }}
data/CHANGELOG.markdown CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  ## unreleased
4
4
 
5
+ ## v0.9.1.20221210 (2022-12-10)
6
+
7
+ * oxipng 7.0.0 [@toy](https://github.com/toy)
8
+
9
+ ## v0.9.1.20221127 (2022-11-27)
10
+
11
+ * advancecomp 2.4 and libpng 1.6.39 [@toy](https://github.com/toy)
12
+
5
13
  ## v0.9.1.20221104 (2022-11-04)
6
14
 
7
15
  * liblcms 2.14 [@toy](https://github.com/toy)
data/Dockerfile.debian ADDED
@@ -0,0 +1,179 @@
1
+ FROM debian as base
2
+ ENV LD_LIBRARY_PATH=/usr/local/lib
3
+ WORKDIR /tmp
4
+
5
+ FROM base as build
6
+ RUN apt-get update && apt-get install -y build-essential cmake nasm bash findutils
7
+ COPY script/extract ./
8
+ ENV CPATH=/usr/local/include
9
+
10
+ FROM build as libz
11
+ ARG LIBZ_VER
12
+ ARG LIBZ_SHA256
13
+ COPY download/libz-$LIBZ_VER.tar.gz download/
14
+ RUN ./extract libz && \
15
+ cd build/libz && \
16
+ ./configure && \
17
+ make install
18
+
19
+ FROM libz as libpng
20
+ ARG LIBPNG_VER
21
+ ARG LIBPNG_SHA256
22
+ COPY download/libpng-$LIBPNG_VER.tar.gz download/
23
+ RUN ./extract libpng && \
24
+ cd build/libpng && \
25
+ ./configure --with-zlib-prefix=/usr/local && \
26
+ make install
27
+
28
+ FROM libpng as liblcms
29
+ ARG LIBLCMS_VER
30
+ ARG LIBLCMS_SHA256
31
+ COPY download/liblcms-$LIBLCMS_VER.tar.gz download/
32
+ RUN ./extract liblcms && \
33
+ cd build/liblcms && \
34
+ ./configure && \
35
+ make install
36
+
37
+ FROM build as libjpeg
38
+ ARG LIBJPEG_VER
39
+ ARG LIBJPEG_SHA256
40
+ COPY download/libjpeg-$LIBJPEG_VER.tar.gz download/
41
+ RUN ./extract libjpeg && \
42
+ cd build/libjpeg && \
43
+ ./configure && \
44
+ make install
45
+
46
+ FROM build as libmozjpeg
47
+ ARG LIBMOZJPEG_VER
48
+ ARG LIBMOZJPEG_SHA256
49
+ COPY download/libmozjpeg-$LIBMOZJPEG_VER.tar.gz download/
50
+ RUN ./extract libmozjpeg && \
51
+ cd build/libmozjpeg && \
52
+ cmake -DPNG_SUPPORTED=0 . && \
53
+ make install
54
+
55
+ FROM libpng as advancecomp
56
+ ARG ADVANCECOMP_VER
57
+ ARG ADVANCECOMP_SHA256
58
+ COPY download/advancecomp-$ADVANCECOMP_VER.tar.gz download/
59
+ RUN ./extract advancecomp && \
60
+ cd build/advancecomp && \
61
+ ./configure && \
62
+ make install
63
+
64
+ FROM build as gifsicle
65
+ ARG GIFSICLE_VER
66
+ ARG GIFSICLE_SHA256
67
+ COPY download/gifsicle-$GIFSICLE_VER.tar.gz download/
68
+ RUN ./extract gifsicle && \
69
+ cd build/gifsicle && \
70
+ ./configure && \
71
+ make install
72
+
73
+ FROM build as jhead
74
+ ARG JHEAD_VER
75
+ ARG JHEAD_SHA256
76
+ COPY download/jhead-$JHEAD_VER.tar.gz download/
77
+ RUN ./extract jhead && \
78
+ cd build/jhead && \
79
+ make && \
80
+ install -c jhead /usr/local/bin
81
+
82
+ FROM libmozjpeg as jpegarchive
83
+ ARG JPEGARCHIVE_VER
84
+ ARG JPEGARCHIVE_SHA256
85
+ COPY download/jpegarchive-$JPEGARCHIVE_VER.tar.gz download/
86
+ RUN ./extract jpegarchive && \
87
+ cd build/jpegarchive && \
88
+ CFLAGS=-fcommon make install
89
+
90
+ FROM libjpeg as jpegoptim
91
+ ARG JPEGOPTIM_VER
92
+ ARG JPEGOPTIM_SHA256
93
+ COPY download/jpegoptim-$JPEGOPTIM_VER.tar.gz download/
94
+ RUN ./extract jpegoptim && \
95
+ cd build/jpegoptim && \
96
+ ./configure && \
97
+ make install
98
+
99
+ FROM libpng as optipng
100
+ ARG OPTIPNG_VER
101
+ ARG OPTIPNG_SHA256
102
+ COPY download/optipng-$OPTIPNG_VER.tar.gz download/
103
+ RUN ./extract optipng && \
104
+ cd build/optipng && \
105
+ ./configure && \
106
+ make install
107
+
108
+ FROM rust:1 as oxipng
109
+ RUN apt-get update && apt-get install -y build-essential
110
+ COPY script/extract ./
111
+ ARG OXIPNG_VER
112
+ ARG OXIPNG_SHA256
113
+ COPY download/oxipng-$OXIPNG_VER.tar.gz download/
114
+ RUN ./extract oxipng && \
115
+ cd build/oxipng && \
116
+ cargo build --release && \
117
+ install -c target/release/oxipng /usr/local/bin
118
+
119
+ FROM libpng as pngcrush
120
+ ARG PNGCRUSH_VER
121
+ ARG PNGCRUSH_SHA256
122
+ COPY download/pngcrush-$PNGCRUSH_VER.tar.gz download/
123
+ RUN ./extract pngcrush && \
124
+ cd build/pngcrush && \
125
+ make && \
126
+ install -c pngcrush /usr/local/bin
127
+
128
+ FROM build as pngout
129
+ ARG PNGOUT_LINUX_STATIC_VER
130
+ ARG PNGOUT_LINUX_STATIC_SHA256
131
+ COPY download/pngout_linux_static-$PNGOUT_LINUX_STATIC_VER.tar.gz download/
132
+ RUN ./extract pngout_linux_static && \
133
+ cd build/pngout_linux_static && \
134
+ cp amd64/pngout-static /usr/local/bin/pngout
135
+
136
+ FROM liblcms as pngquant
137
+ ARG PNGQUANT_VER
138
+ ARG PNGQUANT_SHA256
139
+ COPY download/pngquant-$PNGQUANT_VER.tar.gz download/
140
+ RUN ./extract pngquant && \
141
+ cd build/pngquant && \
142
+ make install
143
+
144
+ # FROM build as [name]
145
+ # ARG [NAME]_VER
146
+ # ARG [NAME]_SHA256
147
+ # COPY download/[name]-$[NAME]_VER.tar.gz download/
148
+ # RUN ./extract [name] && \
149
+ # cd build/[name] && \
150
+ # ./configure && \
151
+ # make install
152
+
153
+ FROM base as image_optim
154
+ RUN apt-get update && apt-get install -y ruby npm perl-base dumb-init
155
+
156
+ COPY README.markdown /
157
+ COPY acknowledgements /acknowledgements
158
+
159
+ COPY --from=advancecomp /usr/local/bin/advpng /usr/local/bin/
160
+ COPY --from=gifsicle /usr/local/bin/gifsicle /usr/local/bin/
161
+ COPY --from=jhead /usr/local/bin/jhead /usr/local/bin/
162
+ COPY --from=jpegarchive /usr/local/bin/jpeg-recompress /usr/local/bin/
163
+ COPY --from=jpegoptim /usr/local/bin/jpegoptim /usr/local/bin/
164
+ COPY --from=libjpeg /usr/local/bin/jpegtran /usr/local/bin/
165
+ COPY --from=optipng /usr/local/bin/optipng /usr/local/bin/
166
+ COPY --from=oxipng /usr/local/bin/oxipng /usr/local/bin/
167
+ COPY --from=pngcrush /usr/local/bin/pngcrush /usr/local/bin/
168
+ COPY --from=pngout /usr/local/bin/pngout /usr/local/bin/
169
+ COPY --from=pngquant /usr/local/bin/pngquant /usr/local/bin/
170
+
171
+ COPY --from=libjpeg /usr/local/lib/libjpeg.so.9 /usr/local/lib/
172
+ COPY --from=libpng /usr/local/lib/libpng16.so.16 /usr/local/lib/
173
+ COPY --from=libz /usr/local/lib/libz.so.1 /usr/local/lib/
174
+ COPY --from=liblcms /usr/local/lib/liblcms2.so.2 /usr/local/lib/
175
+
176
+ RUN npm -g install svgo
177
+ RUN gem install --no-document image_optim
178
+ ENTRYPOINT ["dumb-init", "image_optim"]
179
+ CMD ["--help"]
data/Makefile CHANGED
@@ -2,7 +2,7 @@ all :
2
2
 
3
3
  # ====== VERSIONS ======
4
4
 
5
- ADVANCECOMP_VER := 2.3
5
+ ADVANCECOMP_VER := 2.4
6
6
  GIFSICLE_VER := 1.93
7
7
  JHEAD_VER := 3.04
8
8
  JPEGARCHIVE_VER := 2.2.0
@@ -10,10 +10,10 @@ JPEGOPTIM_VER := 1.5.0
10
10
  LIBJPEG_VER := 9e
11
11
  LIBLCMS_VER := 2.14
12
12
  LIBMOZJPEG_VER := 4.1.1
13
- LIBPNG_VER := 1.6.38
13
+ LIBPNG_VER := 1.6.39
14
14
  LIBZ_VER := 1.2.11
15
15
  OPTIPNG_VER := 0.7.7
16
- OXIPNG_VER := 6.0.1
16
+ OXIPNG_VER := 7.0.0
17
17
  PNGCRUSH_VER := 1.8.13
18
18
  PNGOUT_VER := 20200115
19
19
  PNGOUT_LINUX_VER := $(PNGOUT_VER)
@@ -277,28 +277,30 @@ update-versions :
277
277
 
278
278
  DOCKER_IMAGE := ghcr.io/toy/image_optim
279
279
  DOCKER_TAG := $(shell date +%Y%m%d)
280
+ DOCKER_FILE := Dockerfile
280
281
 
281
282
  docker-build : download
282
283
  @docker build \
283
284
  --pull \
284
285
  $(foreach archive,$(ARCHIVES),--build-arg $(archive)_VER=$($(archive)_VER) --build-arg $(archive)_SHA256=$($(archive)_SHA256)) \
285
- -t $(DOCKER_IMAGE):latest \
286
+ -t $(DOCKER_IMAGE):latest$(DOCKER_TAG_SUFFIX) \
287
+ -f $(DOCKER_FILE) \
286
288
  .
287
289
  @docker tag \
288
- $(DOCKER_IMAGE):latest \
289
- $(DOCKER_IMAGE):$(DOCKER_TAG)
290
+ $(DOCKER_IMAGE):latest$(DOCKER_TAG_SUFFIX) \
291
+ $(DOCKER_IMAGE):$(DOCKER_TAG)$(DOCKER_TAG_SUFFIX)
290
292
  .PHONY : docker-build
291
293
 
292
294
  docker-test : docker-build
293
295
  @docker run \
294
296
  --rm \
295
- $(DOCKER_IMAGE):latest \
297
+ $(DOCKER_IMAGE):latest$(DOCKER_TAG_SUFFIX) \
296
298
  --info
297
299
  .PHONY : docker-test
298
300
 
299
301
  docker-push : docker-test
300
- @docker push $(DOCKER_IMAGE):latest
301
- @docker push $(DOCKER_IMAGE):$(DOCKER_TAG)
302
+ @docker push $(DOCKER_IMAGE):latest$(DOCKER_TAG_SUFFIX)
303
+ @docker push $(DOCKER_IMAGE):$(DOCKER_TAG)$(DOCKER_TAG_SUFFIX)
302
304
  .PHONY : docker-push
303
305
 
304
306
  # ====== CLEAN ======
data/checksums.mk CHANGED
@@ -1,4 +1,4 @@
1
- ADVANCECOMP_SHA256 := 811f661dfbbdddefdcb5eaf133e403ca2af99328b850b22c1249f7bebe657578
1
+ ADVANCECOMP_SHA256 := 911133b8bdebd43aa86379e19584112b092459304401a56066e964207da423a5
2
2
  GIFSICLE_SHA256 := 92f67079732bf4c1da087e6ae0905205846e5ac777ba5caa66d12a73aa943447
3
3
  JHEAD_SHA256 := ef89bbcf4f6c25ed88088cf242a47a6aedfff4f08cc7dc205bf3e2c0f10a03c9
4
4
  JPEGARCHIVE_SHA256 := 3da16a5abbddd925dee0379aa51d9fe0cba33da0b5703be27c13a2dda3d7ed75
@@ -6,10 +6,10 @@ JPEGOPTIM_SHA256 := 67b0feba73fd72f0bd383f25bf84149a73378d34c0c25bc0b9b25b0264d8
6
6
  LIBJPEG_SHA256 := 4077d6a6a75aeb01884f708919d25934c93305e49f7e3f36db9129320e6f4f3d
7
7
  LIBLCMS_SHA256 := 28474ea6f6591c4d4cee972123587001a4e6e353412a41b3e9e82219818d5740
8
8
  LIBMOZJPEG_SHA256 := 66b1b8d6b55d263f35f27f55acaaa3234df2a401232de99b6d099e2bb0a9d196
9
- LIBPNG_SHA256 := e2b5e1b4329650992c041996cf1269681b341191dc07ffed816c555769cceb77
9
+ LIBPNG_SHA256 := af4fb7f260f839919e5958e5ab01a275d4fe436d45442a36ee62f73e5beb75ba
10
10
  LIBZ_SHA256 := c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1
11
11
  OPTIPNG_SHA256 := 4f32f233cef870b3f95d3ad6428bfe4224ef34908f1b42b0badf858216654452
12
- OXIPNG_SHA256 := 02625687bf19263bc2d537f9f81f85784c5b729c003e9dbb8551126d0e28ba7a
12
+ OXIPNG_SHA256 := 2a669c9b966cb54f8247c0accc9d90502944359abdd4143d9162d64e0acbaf76
13
13
  PNGCRUSH_SHA256 := fed0aaf5c098aa8c7f78c75365cd18d7341417326ecbdba547876b7b4f3df4be
14
14
  PNGOUT_LINUX_SHA256 := ac38bba6f0de29033de866538c3afa64341319b695bbe388efbc5fd9e830e928
15
15
  PNGOUT_LINUX_STATIC_SHA256 := 7a78ea475d65a00981bf418e5dfa3b34e42d6460fb992340802873bb14b08597
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'image_optim_pack'
5
- s.version = '0.9.1.20221104'
5
+ s.version = '0.9.1.20221210'
6
6
  s.summary = %q{Precompiled binaries for image_optim: advpng, gifsicle, jhead, jpeg-recompress, jpegoptim, jpegtran, optipng, pngcrush, pngquant}
7
7
  s.homepage = "https://github.com/toy/#{s.name}"
8
8
  s.authors = ['Ivan Kuchin']
@@ -45,7 +45,7 @@ table = Terminal::Table.new
45
45
 
46
46
  table.headings = ['version', 'days', 'base dls'] + platforms.map do |platform|
47
47
  platform.split('-').reverse.join("\n")
48
- end
48
+ end + ['total']
49
49
 
50
50
  versions.group_by(&:number).each do |version_n, platform_versions|
51
51
  next if platform_versions.length == 1
@@ -65,7 +65,7 @@ versions.group_by(&:number).each do |version_n, platform_versions|
65
65
  version_n,
66
66
  (version_time[version_n] / (24 * 60 * 60)).round,
67
67
  base_downloads,
68
- ] + platform_values
68
+ ] + platform_values + [downloads_by_platform.values.sum]
69
69
  end
70
70
 
71
71
  (1...table.number_of_columns).each do |column|
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: image_optim_pack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.1.20221104
4
+ version: 0.9.1.20221210
5
5
  platform: x86_64-darwin
6
6
  authors:
7
7
  - Ivan Kuchin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-04 00:00:00.000000000 Z
11
+ date: 2022-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: image_optim
@@ -107,6 +107,7 @@ files:
107
107
  - ".rubocop.yml"
108
108
  - CHANGELOG.markdown
109
109
  - Dockerfile
110
+ - Dockerfile.debian
110
111
  - Gemfile
111
112
  - LICENSE.txt
112
113
  - Makefile
@@ -180,7 +181,7 @@ licenses:
180
181
  metadata:
181
182
  bug_tracker_uri: https://github.com/toy/image_optim_pack/issues
182
183
  changelog_uri: https://github.com/toy/image_optim_pack/blob/master/CHANGELOG.markdown
183
- documentation_uri: https://www.rubydoc.info/gems/image_optim_pack/0.9.1.20221104
184
+ documentation_uri: https://www.rubydoc.info/gems/image_optim_pack/0.9.1.20221210
184
185
  source_code_uri: https://github.com/toy/image_optim_pack
185
186
  post_install_message:
186
187
  rdoc_options: []
@@ -197,7 +198,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
197
198
  - !ruby/object:Gem::Version
198
199
  version: '0'
199
200
  requirements: []
200
- rubygems_version: 3.3.11
201
+ rubygems_version: 3.3.26
201
202
  signing_key:
202
203
  specification_version: 4
203
204
  summary: 'Precompiled binaries for image_optim: advpng, gifsicle, jhead, jpeg-recompress,