image_optim_pack 0.12.1.20250921 → 0.12.2
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/.github/workflows/build.yml +1 -1
- data/.github/workflows/check.yml +1 -1
- data/CHANGELOG.markdown +5 -0
- data/Dockerfile +8 -8
- data/Dockerfile.debian +8 -8
- data/Makefile +35 -21
- data/checksums.mk +2 -2
- data/image_optim_pack.gemspec +1 -1
- data/script/livecheck +5 -5
- data/vendor/darwin-arm64/advpng +0 -0
- data/vendor/darwin-arm64/liblcms2.dylib +0 -0
- data/vendor/darwin-arm64/libpng.dylib +0 -0
- data/vendor/darwin-arm64/libz.dylib +0 -0
- data/vendor/darwin-arm64/optipng +0 -0
- data/vendor/darwin-arm64/pngcrush +0 -0
- data/vendor/darwin-arm64/pngquant +0 -0
- data/vendor/darwin-x86_64/advpng +0 -0
- data/vendor/darwin-x86_64/libpng.dylib +0 -0
- data/vendor/darwin-x86_64/libz.dylib +0 -0
- data/vendor/darwin-x86_64/optipng +0 -0
- data/vendor/darwin-x86_64/pngcrush +0 -0
- data/vendor/darwin-x86_64/pngquant +0 -0
- data/vendor/linux-x86_64/advpng +0 -0
- data/vendor/linux-x86_64/libpng.so +0 -0
- data/vendor/linux-x86_64/libz.so +0 -0
- data/vendor/linux-x86_64/pngcrush +0 -0
- data/vendor/linux-x86_64/pngquant +0 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a93e8bdc2e268667748f37d395e447d0f06767746257e552b407763ea273a53f
|
4
|
+
data.tar.gz: d0bad7960a0e00acb00559880b077eaf641238b3bf9a6f5425f024f0ea71da78
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 89afe382210b8ce53ab8cf96e2e405758764b045725c9d8a4c74fac924e3f9f21d8402dc5385b6a31653a94eed56b04329441c8195ae9692877f1af427ad2604
|
7
|
+
data.tar.gz: e7039cc7ed57f02632e31e4fe54bc0a3d58da3adcc0d29495e168deae9160dc88f7787e1156e1fb008e9cbcbbd241991bbcd26f9efa3dab8ed16dbf7444d300d
|
data/.github/workflows/build.yml
CHANGED
data/.github/workflows/check.yml
CHANGED
data/CHANGELOG.markdown
CHANGED
@@ -2,6 +2,11 @@
|
|
2
2
|
|
3
3
|
## unreleased
|
4
4
|
|
5
|
+
## v0.12.2 (2025-10-05)
|
6
|
+
|
7
|
+
* Rebuild pngquant ensuring proper linking of libraries [@toy](https://github.com/toy)
|
8
|
+
* libz 1.3.1 [@toy](https://github.com/toy)
|
9
|
+
|
5
10
|
## v0.12.1.20250921 (2025-09-21)
|
6
11
|
|
7
12
|
* jpegoptim 1.5.6 [@toy](https://github.com/toy)
|
data/Dockerfile
CHANGED
@@ -29,12 +29,12 @@ RUN ./extract libpng && \
|
|
29
29
|
./configure --with-zlib-prefix=/usr/local && \
|
30
30
|
make install
|
31
31
|
|
32
|
-
FROM libpng as
|
33
|
-
ARG
|
34
|
-
ARG
|
35
|
-
COPY download/
|
36
|
-
RUN ./extract
|
37
|
-
cd build/
|
32
|
+
FROM libpng as liblcms2
|
33
|
+
ARG LIBLCMS2_VER
|
34
|
+
ARG LIBLCMS2_SHA256
|
35
|
+
COPY download/liblcms2-$LIBLCMS2_VER.tar.gz download/
|
36
|
+
RUN ./extract liblcms2 && \
|
37
|
+
cd build/liblcms2 && \
|
38
38
|
./configure && \
|
39
39
|
make install
|
40
40
|
|
@@ -137,7 +137,7 @@ RUN ./extract pngout_linux_static && \
|
|
137
137
|
cd build/pngout_linux_static && \
|
138
138
|
cp amd64/pngout-static /usr/local/bin/pngout
|
139
139
|
|
140
|
-
FROM
|
140
|
+
FROM liblcms2 as pngquant
|
141
141
|
ARG PNGQUANT_VER
|
142
142
|
ARG PNGQUANT_SHA256
|
143
143
|
COPY download/pngquant-$PNGQUANT_VER.tar.gz download/
|
@@ -176,7 +176,7 @@ COPY --from=pngquant /usr/local/bin/pngquant /usr/local/bin/
|
|
176
176
|
COPY --from=libjpeg /usr/local/lib/libjpeg.so.9 /usr/local/lib/
|
177
177
|
COPY --from=libpng /usr/local/lib/libpng16.so.16 /usr/local/lib/
|
178
178
|
COPY --from=libz /usr/local/lib/libz.so.1 /usr/local/lib/
|
179
|
-
COPY --from=
|
179
|
+
COPY --from=liblcms2 /usr/local/lib/liblcms2.so.2 /usr/local/lib/
|
180
180
|
|
181
181
|
RUN npm -g install svgo
|
182
182
|
RUN gem install --no-document image_optim
|
data/Dockerfile.debian
CHANGED
@@ -29,12 +29,12 @@ RUN ./extract libpng && \
|
|
29
29
|
./configure --with-zlib-prefix=/usr/local && \
|
30
30
|
make install
|
31
31
|
|
32
|
-
FROM libpng as
|
33
|
-
ARG
|
34
|
-
ARG
|
35
|
-
COPY download/
|
36
|
-
RUN ./extract
|
37
|
-
cd build/
|
32
|
+
FROM libpng as liblcms2
|
33
|
+
ARG LIBLCMS2_VER
|
34
|
+
ARG LIBLCMS2_SHA256
|
35
|
+
COPY download/liblcms2-$LIBLCMS2_VER.tar.gz download/
|
36
|
+
RUN ./extract liblcms2 && \
|
37
|
+
cd build/liblcms2 && \
|
38
38
|
./configure && \
|
39
39
|
make install
|
40
40
|
|
@@ -137,7 +137,7 @@ RUN ./extract pngout_linux_static && \
|
|
137
137
|
cd build/pngout_linux_static && \
|
138
138
|
cp amd64/pngout-static /usr/local/bin/pngout
|
139
139
|
|
140
|
-
FROM
|
140
|
+
FROM liblcms2 as pngquant
|
141
141
|
ARG PNGQUANT_VER
|
142
142
|
ARG PNGQUANT_SHA256
|
143
143
|
COPY download/pngquant-$PNGQUANT_VER.tar.gz download/
|
@@ -176,7 +176,7 @@ COPY --from=pngquant /usr/local/bin/pngquant /usr/local/bin/
|
|
176
176
|
COPY --from=libjpeg /usr/local/lib/libjpeg.so.9 /usr/local/lib/
|
177
177
|
COPY --from=libpng /usr/local/lib/libpng16.so.16 /usr/local/lib/
|
178
178
|
COPY --from=libz /usr/local/lib/libz.so.1 /usr/local/lib/
|
179
|
-
COPY --from=
|
179
|
+
COPY --from=liblcms2 /usr/local/lib/liblcms2.so.2 /usr/local/lib/
|
180
180
|
|
181
181
|
RUN npm -g install svgo
|
182
182
|
RUN gem install --no-document image_optim
|
data/Makefile
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
all :
|
2
2
|
|
3
|
+
ORIGINAL_VARIABLES := $(.VARIABLES)
|
4
|
+
print-variables :
|
5
|
+
$(foreach v, $(sort $(filter-out $(ORIGINAL_VARIABLES) ORIGINAL_VARIABLES,$(.VARIABLES))), $(info $(v) = $($(v))))
|
6
|
+
.PHONY : print-variables
|
7
|
+
|
3
8
|
# ====== VERSIONS ======
|
4
9
|
|
5
10
|
ADVANCECOMP_VER := 2.6
|
@@ -8,10 +13,10 @@ JHEAD_VER := 3.04
|
|
8
13
|
JPEGARCHIVE_VER := 2.2.0
|
9
14
|
JPEGOPTIM_VER := 1.5.6
|
10
15
|
LIBJPEG_VER := 9f
|
11
|
-
|
16
|
+
LIBLCMS2_VER := 2.17
|
12
17
|
LIBMOZJPEG_VER := 4.1.5
|
13
18
|
LIBPNG_VER := 1.6.50
|
14
|
-
LIBZ_VER := 1.
|
19
|
+
LIBZ_VER := 1.3.1
|
15
20
|
OPTIPNG_VER := 7.9.1
|
16
21
|
OXIPNG_VER := 9.1.5
|
17
22
|
PNGCRUSH_VER := 1.8.13
|
@@ -59,7 +64,15 @@ ANSI_RESET=\033[0m
|
|
59
64
|
downcase = $(shell echo $1 | tr A-Z a-z)
|
60
65
|
|
61
66
|
tar := $(shell if command -v bsdtar >/dev/null 2>&1; then echo bsdtar; else echo tar; fi)
|
62
|
-
sha256sum := $(shell
|
67
|
+
sha256sum := $(shell \
|
68
|
+
empty_sha256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855; \
|
69
|
+
for cmd in sha256sum "shasum -a 256" gsha256sum sha256; do \
|
70
|
+
if echo "$$empty_sha256 /dev/null" | $$cmd -c >/dev/null 2>&1; then \
|
71
|
+
echo "$$cmd"; \
|
72
|
+
exit 0; \
|
73
|
+
fi; \
|
74
|
+
done; \
|
75
|
+
echo false)
|
63
76
|
|
64
77
|
# ====== ARCHIVES ======
|
65
78
|
|
@@ -90,10 +103,10 @@ $(call archive,$1,$3)
|
|
90
103
|
$$($1_ARC) :
|
91
104
|
mkdir -p $(DL_DIR)
|
92
105
|
test -w $(DL_DIR)
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
106
|
+
tmpfile=`mktemp "$$@.XXXXXXXXXX"` && \
|
107
|
+
wget -q -O "$$$$tmpfile" --no-use-server-timestamps "$(subst [VER],$($1_VER),$(strip $2))" && \
|
108
|
+
chmod 644 "$$$$tmpfile" && \
|
109
|
+
mv "$$$$tmpfile" "$$@"
|
97
110
|
endef
|
98
111
|
|
99
112
|
$(eval $(call archive-dl,ADVANCECOMP, https://github.com/amadvance/advancecomp/releases/download/v[VER]/advancecomp-[VER].tar.gz))
|
@@ -102,10 +115,10 @@ $(eval $(call archive-dl,JHEAD, https://www.sentex.ca/~mwandel/jhead/jhead
|
|
102
115
|
$(eval $(call archive-dl,JPEGARCHIVE, https://github.com/danielgtaylor/jpeg-archive/archive/v[VER].tar.gz))
|
103
116
|
$(eval $(call archive-dl,JPEGOPTIM, https://github.com/tjko/jpegoptim/archive/v[VER].tar.gz))
|
104
117
|
$(eval $(call archive-dl,LIBJPEG, https://www.ijg.org/files/jpegsrc.v[VER].tar.gz))
|
105
|
-
$(eval $(call archive-dl,
|
118
|
+
$(eval $(call archive-dl,LIBLCMS2, https://prdownloads.sourceforge.net/lcms/lcms2-[VER].tar.gz?download))
|
106
119
|
$(eval $(call archive-dl,LIBMOZJPEG, https://github.com/mozilla/mozjpeg/archive/v[VER].tar.gz))
|
107
120
|
$(eval $(call archive-dl,LIBPNG, https://prdownloads.sourceforge.net/libpng/libpng-[VER].tar.gz?download))
|
108
|
-
$(eval $(call archive-dl,LIBZ, https://
|
121
|
+
$(eval $(call archive-dl,LIBZ, https://github.com/madler/zlib/archive/v[VER].tar.gz))
|
109
122
|
$(eval $(call archive-dl,OPTIPNG, https://prdownloads.sourceforge.net/optipng/optipng-[VER].tar.gz?download))
|
110
123
|
$(eval $(call archive-dl,OXIPNG, https://github.com/oxipng/oxipng/archive/refs/tags/v[VER].tar.gz))
|
111
124
|
$(eval $(call archive-dl,PNGCRUSH, https://prdownloads.sourceforge.net/pmt/pngcrush-[VER]-nolib.tar.gz?download))
|
@@ -182,7 +195,7 @@ $(eval $(call target,JPEG-RECOMPRESS,JPEGARCHIVE))
|
|
182
195
|
$(eval $(call target,JPEGOPTIM))
|
183
196
|
$(eval $(call target,JPEGTRAN,LIBJPEG,.libs/jpegtran))
|
184
197
|
$(eval $(call target,LIBJPEG,,libjpeg$(DLEXT)))
|
185
|
-
$(eval $(call target,
|
198
|
+
$(eval $(call target,LIBLCMS2,,liblcms2$(DLEXT)))
|
186
199
|
$(eval $(call target-build,LIBMOZJPEG,,libjpeg.a))
|
187
200
|
$(eval $(call target,LIBPNG,,libpng$(DLEXT)))
|
188
201
|
$(eval $(call target,LIBZ,,libz$(DLEXT)))
|
@@ -238,6 +251,7 @@ define check_output
|
|
238
251
|
endef
|
239
252
|
|
240
253
|
define check_shlib
|
254
|
+
@$(ldd) $(OUTPUT_DIR)/$1 | egrep "\s+.*/.*"
|
241
255
|
@! $(ldd) $(OUTPUT_DIR)/$1 | egrep -o "[^: ]+/[^: ]+" | egrep -v "^(@loader_path|/lib|/lib64|/usr|$(OUTPUT_DIR))/"
|
242
256
|
endef
|
243
257
|
|
@@ -453,8 +467,8 @@ else
|
|
453
467
|
endif
|
454
468
|
cd $(DIR) && ln -sf .libs/libjpeg$(DLEXT) .
|
455
469
|
|
456
|
-
##
|
457
|
-
$(
|
470
|
+
## liblcms2
|
471
|
+
$(LIBLCMS2_TARGET) :
|
458
472
|
cd $(DIR) && ./configure --host "$(HOST)"
|
459
473
|
cd $(DIR) && $(libtool_target_soname)
|
460
474
|
ifdef IS_DARWIN
|
@@ -529,15 +543,15 @@ endif
|
|
529
543
|
cd $(DIR) && touch pngout
|
530
544
|
|
531
545
|
## pngquant
|
532
|
-
$(eval $(call depend,PNGQUANT,
|
533
|
-
$(PNGQUANT_TARGET) : export OVERRIDE_BIN_DIR = $(LIBPNG_DIR)/override-bin
|
534
|
-
$(PNGQUANT_TARGET) : export PATH := $(OVERRIDE_BIN_DIR):$(PATH)
|
546
|
+
$(eval $(call depend,PNGQUANT,LIBLCMS2 LIBPNG LIBZ))
|
535
547
|
$(PNGQUANT_TARGET) : export RUSTFLAGS = -C link-arg=$(XORIGIN)
|
536
548
|
$(PNGQUANT_TARGET) :
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
549
|
+
printf "%s\n" \
|
550
|
+
$(foreach LIB,PNG Z LCMS2, \
|
551
|
+
"[target.$(RUST_HOST).$(call downcase,$(LIB))]" \
|
552
|
+
"rustc-link-lib = ['$(call downcase,$(LIB))']" \
|
553
|
+
"rustc-link-search = ['native=$(LIB$(LIB)_DIR)']" \
|
554
|
+
"include = '$(LIB$(LIB)_DIR)'" \
|
555
|
+
) > $(DIR)/override.toml
|
556
|
+
cd $(DIR) && cargo build --release --frozen --offline --target=$(RUST_HOST) --config override.toml
|
543
557
|
$(call chrpath_origin,$@)
|
data/checksums.mk
CHANGED
@@ -4,10 +4,10 @@ JHEAD_SHA256 := ef89bbcf4f6c25ed88088cf242a47a6aedfff4f08cc7dc205bf3e2c0f10a03c9
|
|
4
4
|
JPEGARCHIVE_SHA256 := 3da16a5abbddd925dee0379aa51d9fe0cba33da0b5703be27c13a2dda3d7ed75
|
5
5
|
JPEGOPTIM_SHA256 := 661a808dfffa933d78c6beb47a2937d572b9f03e94cbaaab3d4c0d72f410e9be
|
6
6
|
LIBJPEG_SHA256 := 04705c110cb2469caa79fb71fba3d7bf834914706e9641a4589485c1f832565b
|
7
|
-
|
7
|
+
LIBLCMS2_SHA256 := d11af569e42a1baa1650d20ad61d12e41af4fead4aa7964a01f93b08b53ab074
|
8
8
|
LIBMOZJPEG_SHA256 := 9fcbb7171f6ac383f5b391175d6fb3acde5e64c4c4727274eade84ed0998fcc1
|
9
9
|
LIBPNG_SHA256 := 708f4398f996325819936d447f982e0db90b6b8212b7507e7672ea232210949a
|
10
|
-
LIBZ_SHA256 :=
|
10
|
+
LIBZ_SHA256 := 17e88863f3600672ab49182f217281b6fc4d3c762bde361935e436a95214d05c
|
11
11
|
OPTIPNG_SHA256 := c2579be58c2c66dae9d63154edcb3d427fef64cb00ec0aff079c9d156ec46f29
|
12
12
|
OXIPNG_SHA256 := 8f99d5c67efa2a7550023bf610b90e65d421375c9ed7f37097f83ae5c05f85bd
|
13
13
|
PNGCRUSH_SHA256 := fed0aaf5c098aa8c7f78c75365cd18d7341417326ecbdba547876b7b4f3df4be
|
data/image_optim_pack.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = 'image_optim_pack'
|
5
|
-
s.version = '0.12.
|
5
|
+
s.version = '0.12.2'
|
6
6
|
s.summary = %q{Precompiled binaries for image_optim: advpng, gifsicle, jhead, jpeg-recompress, jpegoptim, jpegtran, optipng, oxipng, pngcrush, pngout, pngquant}
|
7
7
|
s.homepage = "https://github.com/toy/#{s.name}"
|
8
8
|
s.authors = ['Ivan Kuchin']
|
data/script/livecheck
CHANGED
@@ -38,7 +38,7 @@ CONFIG = {
|
|
38
38
|
regexp: /jpegsrc.v(.*?).tar.gz/,
|
39
39
|
info_url: 'https://jpegclub.org/reference/reference-sources/#:~:text=CHANGE%20LOG',
|
40
40
|
},
|
41
|
-
|
41
|
+
liblcms2: {
|
42
42
|
url: 'https://sourceforge.net/projects/lcms/rss?path=/lcms',
|
43
43
|
regexp: %r{/lcms/(\d+(?:\.\d+)*)/},
|
44
44
|
info_url: 'https://www.littlecms.com/blog/',
|
@@ -51,12 +51,12 @@ CONFIG = {
|
|
51
51
|
libpng: {
|
52
52
|
url: 'https://sourceforge.net/projects/libpng/rss?path=/libpng16',
|
53
53
|
regexp: %r{/libpng\d*/(\d+(?:\.\d+)*)/},
|
54
|
-
info_url: 'https://github.com/
|
54
|
+
info_url: 'https://github.com/pnggroup/libpng/blob/libpng16/CHANGES#:~:text=Send%20comments/corrections/commendations%20to%20png%2Dmng%2Dimplement%20at%20lists.sf.net.',
|
55
55
|
},
|
56
56
|
libz: {
|
57
|
-
url: 'https://
|
58
|
-
regexp: %r{
|
59
|
-
info_url: 'https://
|
57
|
+
url: 'https://github.com/madler/zlib/releases.atom',
|
58
|
+
regexp: %r{<id>tag:github.com,2008:Repository/\d+/v(\d+(?:\.\d+)*)</id>},
|
59
|
+
info_url: 'https://www.zlib.net/ChangeLog.txt',
|
60
60
|
},
|
61
61
|
optipng: {
|
62
62
|
url: 'https://optipng.sourceforge.net',
|
data/vendor/darwin-arm64/advpng
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/vendor/darwin-arm64/optipng
CHANGED
Binary file
|
Binary file
|
Binary file
|
data/vendor/darwin-x86_64/advpng
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/vendor/linux-x86_64/advpng
CHANGED
Binary file
|
Binary file
|
data/vendor/linux-x86_64/libz.so
CHANGED
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: image_optim_pack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.12.
|
4
|
+
version: 0.12.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Kuchin
|
@@ -203,7 +203,7 @@ licenses:
|
|
203
203
|
metadata:
|
204
204
|
bug_tracker_uri: https://github.com/toy/image_optim_pack/issues
|
205
205
|
changelog_uri: https://github.com/toy/image_optim_pack/blob/master/CHANGELOG.markdown
|
206
|
-
documentation_uri: https://www.rubydoc.info/gems/image_optim_pack/0.12.
|
206
|
+
documentation_uri: https://www.rubydoc.info/gems/image_optim_pack/0.12.2
|
207
207
|
source_code_uri: https://github.com/toy/image_optim_pack
|
208
208
|
rdoc_options: []
|
209
209
|
require_paths:
|