@img/sharp-libvips-dev 1.1.0-rc5 → 1.2.0-rc.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.
- package/cplusplus/vips-operators.cpp +39 -0
- package/include/archive.h +53 -2
- package/include/archive_entry.h +56 -25
- package/include/ffi.h +20 -2
- package/include/fontconfig/fontconfig.h +1 -1
- package/include/glib-2.0/gio/gdbusnameowning.h +12 -10
- package/include/glib-2.0/gio/gio-visibility.h +34 -0
- package/include/glib-2.0/gio/gsettings.h +35 -31
- package/include/glib-2.0/gio/gzlibcompressor.h +6 -0
- package/include/glib-2.0/girepository/gi-visibility.h +34 -0
- package/include/glib-2.0/girepository/gitypes.h +6 -0
- package/include/glib-2.0/glib/gbitlock.h +11 -0
- package/include/glib-2.0/glib/gdate.h +6 -0
- package/include/glib-2.0/glib/glib-visibility.h +34 -0
- package/include/glib-2.0/glib/gmain.h +13 -10
- package/include/glib-2.0/glib/gmessages.h +4 -1
- package/include/glib-2.0/glib/gstring.h +2 -0
- package/include/glib-2.0/glib/gversionmacros.h +9 -0
- package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
- package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
- package/include/glib-2.0/gobject/gsignal.h +33 -8
- package/include/harfbuzz/hb-common.h +1 -431
- package/include/harfbuzz/hb-deprecated.h +80 -2
- package/include/harfbuzz/hb-draw.h +2 -10
- package/include/harfbuzz/hb-face.h +1 -1
- package/include/harfbuzz/hb-font.h +55 -36
- package/include/harfbuzz/hb-paint.h +5 -3
- package/include/harfbuzz/hb-script-list.h +484 -0
- package/include/harfbuzz/hb-subset.h +22 -2
- package/include/harfbuzz/hb-version.h +3 -3
- package/include/libheif/heif.h +2 -0
- package/include/libheif/heif_version.h +2 -2
- package/include/libpng16/png.h +10 -10
- package/include/libpng16/pngconf.h +20 -27
- package/include/libpng16/pnglibconf.h +1 -1
- package/include/libxml2/libxml/HTMLparser.h +33 -30
- package/include/libxml2/libxml/HTMLtree.h +1 -0
- package/include/libxml2/libxml/SAX.h +2 -186
- package/include/libxml2/libxml/SAX2.h +2 -3
- package/include/libxml2/libxml/catalog.h +1 -0
- package/include/libxml2/libxml/debugXML.h +0 -138
- package/include/libxml2/libxml/encoding.h +124 -61
- package/include/libxml2/libxml/entities.h +0 -19
- package/include/libxml2/libxml/globals.h +0 -16
- package/include/libxml2/libxml/nanoftp.h +3 -173
- package/include/libxml2/libxml/parser.h +474 -231
- package/include/libxml2/libxml/parserInternals.h +21 -101
- package/include/libxml2/libxml/relaxng.h +7 -2
- package/include/libxml2/libxml/threads.h +0 -6
- package/include/libxml2/libxml/tree.h +29 -85
- package/include/libxml2/libxml/valid.h +20 -12
- package/include/libxml2/libxml/xinclude.h +5 -0
- package/include/libxml2/libxml/xlink.h +4 -0
- package/include/libxml2/libxml/xmlIO.h +15 -34
- package/include/libxml2/libxml/xmlautomata.h +19 -2
- package/include/libxml2/libxml/xmlerror.h +17 -18
- package/include/libxml2/libxml/xmlexports.h +6 -56
- package/include/libxml2/libxml/xmlmemory.h +19 -19
- package/include/libxml2/libxml/xmlmodule.h +4 -0
- package/include/libxml2/libxml/xmlreader.h +11 -3
- package/include/libxml2/libxml/xmlregexp.h +7 -106
- package/include/libxml2/libxml/xmlsave.h +11 -2
- package/include/libxml2/libxml/xmlschemas.h +10 -5
- package/include/libxml2/libxml/xmlunicode.h +3 -354
- package/include/libxml2/libxml/xmlversion.h +18 -33
- package/include/libxml2/libxml/xpath.h +5 -15
- package/include/libxml2/libxml/xpathInternals.h +9 -3
- package/include/libxml2/libxml/xpointer.h +1 -91
- package/include/pixman-1/pixman-version.h +2 -2
- package/include/pixman-1/pixman.h +200 -0
- package/include/png.h +10 -10
- package/include/pngconf.h +20 -27
- package/include/pnglibconf.h +1 -1
- package/include/vips/VImage8.h +62 -14
- package/include/vips/arithmetic.h +34 -34
- package/include/vips/basic.h +16 -0
- package/include/vips/buf.h +0 -5
- package/include/vips/colour.h +6 -7
- package/include/vips/connection.h +25 -37
- package/include/vips/enumtypes.h +11 -2
- package/include/vips/foreign.h +73 -43
- package/include/vips/format.h +7 -5
- package/include/vips/gate.h +0 -11
- package/include/vips/header.h +11 -11
- package/include/vips/image.h +8 -3
- package/include/vips/interpolate.h +0 -2
- package/include/vips/memory.h +4 -0
- package/include/vips/mosaicing.h +4 -0
- package/include/vips/object.h +14 -18
- package/include/vips/operation.h +0 -2
- package/include/vips/private.h +50 -2
- package/include/vips/region.h +1 -3
- package/include/vips/resample.h +2 -0
- package/include/vips/semaphore.h +8 -3
- package/include/vips/thread.h +1 -24
- package/include/vips/threadpool.h +0 -6
- package/include/vips/type.h +13 -9
- package/include/vips/util.h +17 -98
- package/include/vips/vector.h +0 -4
- package/include/vips/version.h +8 -8
- package/include/vips/vips.h +1 -0
- package/package.json +1 -1
- package/versions.json +11 -11
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h +0 -221
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h +0 -37
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h +0 -525
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h +0 -40
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h +0 -115
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h +0 -481
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h +0 -113
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-macros.h +0 -718
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-marshal.h +0 -33
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h +0 -70
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h +0 -168
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h +0 -46
- package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixdata.h +0 -165
- package/include/glib-2.0/glib/gwin32.h +0 -142
- package/include/harfbuzz/hb-subset-repacker.h +0 -81
- package/include/hwy/ops/tuple-inl.h +0 -125
- package/include/orc-0.4/orc/orc-stdint.h +0 -1
- package/include/orc-0.4/orc/orc.h +0 -16
- package/include/orc-0.4/orc/orcarm.h +0 -879
- package/include/orc-0.4/orc/orcbytecode.h +0 -35
- package/include/orc-0.4/orc/orcbytecodes.h +0 -255
- package/include/orc-0.4/orc/orccode.h +0 -53
- package/include/orc-0.4/orc/orccompiler.h +0 -176
- package/include/orc-0.4/orc/orcconstant.h +0 -39
- package/include/orc-0.4/orc/orccpu.h +0 -21
- package/include/orc-0.4/orc/orccpuinsn.h +0 -40
- package/include/orc-0.4/orc/orcdebug.h +0 -158
- package/include/orc-0.4/orc/orcemulateopcodes.h +0 -203
- package/include/orc-0.4/orc/orcexecutor.h +0 -135
- package/include/orc-0.4/orc/orcfunctions.h +0 -93
- package/include/orc-0.4/orc/orcinstruction.h +0 -39
- package/include/orc-0.4/orc/orcinternal.h +0 -46
- package/include/orc-0.4/orc/orclimits.h +0 -94
- package/include/orc-0.4/orc/orcmips.h +0 -229
- package/include/orc-0.4/orc/orcmmx.h +0 -79
- package/include/orc-0.4/orc/orcneon.h +0 -43
- package/include/orc-0.4/orc/orconce.h +0 -166
- package/include/orc-0.4/orc/orcopcode.h +0 -63
- package/include/orc-0.4/orc/orcparse.h +0 -27
- package/include/orc-0.4/orc/orcpowerpc.h +0 -209
- package/include/orc-0.4/orc/orcprogram.h +0 -192
- package/include/orc-0.4/orc/orcrule.h +0 -52
- package/include/orc-0.4/orc/orcsse.h +0 -55
- package/include/orc-0.4/orc/orctarget.h +0 -115
- package/include/orc-0.4/orc/orcutils.h +0 -238
- package/include/orc-0.4/orc/orcvariable.h +0 -81
- package/include/orc-0.4/orc/orcx86.h +0 -199
- package/include/orc-0.4/orc/orcx86insn.h +0 -672
package/include/vips/object.h
CHANGED
|
@@ -137,8 +137,7 @@ typedef enum /*< flags >*/ {
|
|
|
137
137
|
#define VIPS_ARG_INTERPOLATE(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET) \
|
|
138
138
|
VIPS_ARG_OBJECT(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, VIPS_TYPE_INTERPOLATE)
|
|
139
139
|
|
|
140
|
-
#define VIPS_ARG_BOOL(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
141
|
-
FLAGS, OFFSET, VALUE) \
|
|
140
|
+
#define VIPS_ARG_BOOL(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, VALUE) \
|
|
142
141
|
{ \
|
|
143
142
|
GParamSpec *pspec; \
|
|
144
143
|
\
|
|
@@ -151,8 +150,7 @@ typedef enum /*< flags >*/ {
|
|
|
151
150
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
152
151
|
}
|
|
153
152
|
|
|
154
|
-
#define VIPS_ARG_DOUBLE(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
155
|
-
FLAGS, OFFSET, MIN, MAX, VALUE) \
|
|
153
|
+
#define VIPS_ARG_DOUBLE(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, MIN, MAX, VALUE) \
|
|
156
154
|
{ \
|
|
157
155
|
GParamSpec *pspec; \
|
|
158
156
|
\
|
|
@@ -165,8 +163,7 @@ typedef enum /*< flags >*/ {
|
|
|
165
163
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
166
164
|
}
|
|
167
165
|
|
|
168
|
-
#define VIPS_ARG_BOXED(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
169
|
-
FLAGS, OFFSET, TYPE) \
|
|
166
|
+
#define VIPS_ARG_BOXED(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, TYPE) \
|
|
170
167
|
{ \
|
|
171
168
|
GParamSpec *pspec; \
|
|
172
169
|
\
|
|
@@ -179,8 +176,7 @@ typedef enum /*< flags >*/ {
|
|
|
179
176
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
180
177
|
}
|
|
181
178
|
|
|
182
|
-
#define VIPS_ARG_INT(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
183
|
-
FLAGS, OFFSET, MIN, MAX, VALUE) \
|
|
179
|
+
#define VIPS_ARG_INT(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, MIN, MAX, VALUE) \
|
|
184
180
|
{ \
|
|
185
181
|
GParamSpec *pspec; \
|
|
186
182
|
\
|
|
@@ -193,8 +189,7 @@ typedef enum /*< flags >*/ {
|
|
|
193
189
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
194
190
|
}
|
|
195
191
|
|
|
196
|
-
#define VIPS_ARG_UINT64(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
197
|
-
FLAGS, OFFSET, MIN, MAX, VALUE) \
|
|
192
|
+
#define VIPS_ARG_UINT64(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, MIN, MAX, VALUE) \
|
|
198
193
|
{ \
|
|
199
194
|
GParamSpec *pspec; \
|
|
200
195
|
\
|
|
@@ -207,8 +202,7 @@ typedef enum /*< flags >*/ {
|
|
|
207
202
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
208
203
|
}
|
|
209
204
|
|
|
210
|
-
#define VIPS_ARG_ENUM(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
211
|
-
FLAGS, OFFSET, TYPE, VALUE) \
|
|
205
|
+
#define VIPS_ARG_ENUM(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, TYPE, VALUE) \
|
|
212
206
|
{ \
|
|
213
207
|
GParamSpec *pspec; \
|
|
214
208
|
\
|
|
@@ -221,8 +215,7 @@ typedef enum /*< flags >*/ {
|
|
|
221
215
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
222
216
|
}
|
|
223
217
|
|
|
224
|
-
#define VIPS_ARG_FLAGS(CLASS, NAME, PRIORITY, LONG, DESC, \
|
|
225
|
-
FLAGS, OFFSET, TYPE, VALUE) \
|
|
218
|
+
#define VIPS_ARG_FLAGS(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, TYPE, VALUE) \
|
|
226
219
|
{ \
|
|
227
220
|
GParamSpec *pspec; \
|
|
228
221
|
\
|
|
@@ -235,8 +228,7 @@ typedef enum /*< flags >*/ {
|
|
|
235
228
|
pspec, (VipsArgumentFlags) (FLAGS), (PRIORITY), (OFFSET)); \
|
|
236
229
|
}
|
|
237
230
|
|
|
238
|
-
#define VIPS_ARG_STRING(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, \
|
|
239
|
-
VALUE) \
|
|
231
|
+
#define VIPS_ARG_STRING(CLASS, NAME, PRIORITY, LONG, DESC, FLAGS, OFFSET, VALUE) \
|
|
240
232
|
{ \
|
|
241
233
|
GParamSpec *pspec; \
|
|
242
234
|
\
|
|
@@ -318,8 +310,14 @@ typedef GHashTable VipsArgumentTable;
|
|
|
318
310
|
|
|
319
311
|
VIPS_API
|
|
320
312
|
int vips_argument_get_id(void);
|
|
313
|
+
|
|
314
|
+
#ifndef __GI_SCANNER__
|
|
315
|
+
|
|
321
316
|
void vips__object_set_member(VipsObject *object, GParamSpec *pspec,
|
|
322
317
|
GObject **member, GObject *argument);
|
|
318
|
+
|
|
319
|
+
#endif /* !__GI_SCANNER__ */
|
|
320
|
+
|
|
323
321
|
typedef void *(*VipsArgumentMapFn)(VipsObject *object, GParamSpec *pspec,
|
|
324
322
|
VipsArgumentClass *argument_class,
|
|
325
323
|
VipsArgumentInstance *argument_instance, void *a, void *b);
|
|
@@ -626,8 +624,6 @@ void vips_object_print_name(VipsObject *object);
|
|
|
626
624
|
VIPS_API
|
|
627
625
|
gboolean vips_object_sanity(VipsObject *object);
|
|
628
626
|
|
|
629
|
-
/* Don't put spaces around void here, it breaks gtk-doc.
|
|
630
|
-
*/
|
|
631
627
|
VIPS_API
|
|
632
628
|
GType vips_object_get_type(void);
|
|
633
629
|
|
package/include/vips/operation.h
CHANGED
package/include/vips/private.h
CHANGED
|
@@ -40,6 +40,8 @@
|
|
|
40
40
|
extern "C" {
|
|
41
41
|
#endif /*__cplusplus*/
|
|
42
42
|
|
|
43
|
+
#include <stdio.h>
|
|
44
|
+
|
|
43
45
|
#define VIPS_SPARE (8)
|
|
44
46
|
|
|
45
47
|
/* Private to iofuncs: the minimum number of scanlines we add above and below
|
|
@@ -218,8 +220,6 @@ int vips__view_image(struct _VipsImage *image);
|
|
|
218
220
|
VIPS_API
|
|
219
221
|
int _vips__argument_id;
|
|
220
222
|
|
|
221
|
-
void vips__meta_init(void);
|
|
222
|
-
|
|
223
223
|
// autoptr needs typed functions for autofree ... this needs to be in the
|
|
224
224
|
// public API since downstream projects can use our auto defs
|
|
225
225
|
VIPS_API
|
|
@@ -227,6 +227,54 @@ void VipsArrayDouble_unref(VipsArrayDouble *array);
|
|
|
227
227
|
VIPS_API
|
|
228
228
|
void VipsArrayImage_unref(VipsArrayImage *array);
|
|
229
229
|
|
|
230
|
+
extern gboolean vips__thread_profile;
|
|
231
|
+
|
|
232
|
+
void vips__thread_gate_start(const char *gate_name);
|
|
233
|
+
void vips__thread_gate_stop(const char *gate_name);
|
|
234
|
+
|
|
235
|
+
void vips__thread_malloc_free(gint64 size);
|
|
236
|
+
|
|
237
|
+
FILE *vips__file_open_read(const char *filename,
|
|
238
|
+
const char *fallback_dir, gboolean text_mode);
|
|
239
|
+
FILE *vips__file_open_write(const char *filename,
|
|
240
|
+
gboolean text_mode);
|
|
241
|
+
|
|
242
|
+
/* TODO(kleisauke): VIPS_API is required by vipsedit.
|
|
243
|
+
*/
|
|
244
|
+
VIPS_API
|
|
245
|
+
int vips__write(int fd, const void *buf, size_t count);
|
|
246
|
+
|
|
247
|
+
/* TODO(kleisauke): VIPS_API is required by test_connections.
|
|
248
|
+
*/
|
|
249
|
+
VIPS_API
|
|
250
|
+
int vips__open(const char *filename, int flags, int mode);
|
|
251
|
+
|
|
252
|
+
/* TODO(kleisauke): VIPS_API is required by vipsedit.
|
|
253
|
+
*/
|
|
254
|
+
VIPS_API
|
|
255
|
+
char *vips__file_read(FILE *fp, const char *name, size_t *length_out);
|
|
256
|
+
|
|
257
|
+
/* TODO(kleisauke): VIPS_API is required by the magick module.
|
|
258
|
+
*/
|
|
259
|
+
VIPS_API
|
|
260
|
+
gint64 vips__get_bytes(const char *filename, unsigned char buf[], gint64 len);
|
|
261
|
+
|
|
262
|
+
/* TODO(kleisauke): VIPS_API is required by vipsedit.
|
|
263
|
+
*/
|
|
264
|
+
VIPS_API
|
|
265
|
+
gint64 vips__seek(int fd, gint64 pos, int whence);
|
|
266
|
+
|
|
267
|
+
/* TODO(kleisauke): VIPS_API is required by libvips-cpp and vipsheader.
|
|
268
|
+
*/
|
|
269
|
+
VIPS_API
|
|
270
|
+
void vips__filename_split8(const char *name,
|
|
271
|
+
char *filename, char *option_string);
|
|
272
|
+
|
|
273
|
+
/* TODO(kleisauke): VIPS_API is required by jpegsave_file_fuzzer.
|
|
274
|
+
*/
|
|
275
|
+
VIPS_API
|
|
276
|
+
char *vips__temp_name(const char *format);
|
|
277
|
+
|
|
230
278
|
#ifdef __cplusplus
|
|
231
279
|
}
|
|
232
280
|
#endif /*__cplusplus*/
|
package/include/vips/region.h
CHANGED
|
@@ -90,9 +90,9 @@ typedef enum {
|
|
|
90
90
|
struct _VipsRegion {
|
|
91
91
|
VipsObject parent_object;
|
|
92
92
|
|
|
93
|
-
/*< public >*/
|
|
94
93
|
/* Users may read these two fields.
|
|
95
94
|
*/
|
|
95
|
+
/*< public >*/
|
|
96
96
|
VipsImage *im; /* Link back to parent image */
|
|
97
97
|
VipsRect valid; /* Area of parent we can see */
|
|
98
98
|
|
|
@@ -128,8 +128,6 @@ typedef struct _VipsRegionClass {
|
|
|
128
128
|
|
|
129
129
|
} VipsRegionClass;
|
|
130
130
|
|
|
131
|
-
/* Don't put spaces around void here, it breaks gtk-doc.
|
|
132
|
-
*/
|
|
133
131
|
VIPS_API
|
|
134
132
|
GType vips_region_get_type(void);
|
|
135
133
|
|
package/include/vips/resample.h
CHANGED
package/include/vips/semaphore.h
CHANGED
|
@@ -38,8 +38,6 @@
|
|
|
38
38
|
#define VIPS_SEMAPHORE_H
|
|
39
39
|
|
|
40
40
|
#include <glib.h>
|
|
41
|
-
#include <vips/vips.h>
|
|
42
|
-
#include <vips/thread.h>
|
|
43
41
|
|
|
44
42
|
#ifdef __cplusplus
|
|
45
43
|
extern "C" {
|
|
@@ -48,10 +46,17 @@ extern "C" {
|
|
|
48
46
|
/* Implement our own semaphores.
|
|
49
47
|
*/
|
|
50
48
|
typedef struct {
|
|
49
|
+
/* All fields are private.
|
|
50
|
+
*/
|
|
51
|
+
/*< private >*/
|
|
51
52
|
char *name;
|
|
52
53
|
int v;
|
|
53
54
|
|
|
54
|
-
GMutex
|
|
55
|
+
GMutex mutex;
|
|
56
|
+
|
|
57
|
+
/* FIXME: sizeof(GCond) != sizeof(GCond *)
|
|
58
|
+
* https://gitlab.gnome.org/GNOME/glib/-/issues/1256
|
|
59
|
+
*/
|
|
55
60
|
GCond *cond;
|
|
56
61
|
} VipsSemaphore;
|
|
57
62
|
|
package/include/vips/thread.h
CHANGED
|
@@ -36,25 +36,8 @@
|
|
|
36
36
|
extern "C" {
|
|
37
37
|
#endif /*__cplusplus*/
|
|
38
38
|
|
|
39
|
-
/* We need wrappers over g_mutex_new(), it was replaced by g_mutex_init() in
|
|
40
|
-
* glib 2.32+
|
|
41
|
-
*/
|
|
42
|
-
VIPS_API
|
|
43
|
-
GMutex *vips_g_mutex_new(void);
|
|
44
|
-
VIPS_API
|
|
45
|
-
void vips_g_mutex_free(GMutex *);
|
|
46
|
-
|
|
47
|
-
/* Same for GCond.
|
|
48
|
-
*/
|
|
49
39
|
VIPS_API
|
|
50
|
-
|
|
51
|
-
VIPS_API
|
|
52
|
-
void vips_g_cond_free(GCond *);
|
|
53
|
-
|
|
54
|
-
/* ... and for GThread.
|
|
55
|
-
*/
|
|
56
|
-
VIPS_API
|
|
57
|
-
GThread *vips_g_thread_new(const char *, GThreadFunc, gpointer);
|
|
40
|
+
GThread *vips_g_thread_new(const char *domain, GThreadFunc func, gpointer data);
|
|
58
41
|
|
|
59
42
|
VIPS_API
|
|
60
43
|
gboolean vips_thread_isvips(void);
|
|
@@ -62,12 +45,6 @@ gboolean vips_thread_isvips(void);
|
|
|
62
45
|
VIPS_API
|
|
63
46
|
int vips_thread_execute(const char *domain, GFunc func, gpointer data);
|
|
64
47
|
|
|
65
|
-
typedef struct _VipsThreadset VipsThreadset;
|
|
66
|
-
VipsThreadset *vips_threadset_new(int max_threads);
|
|
67
|
-
int vips_threadset_run(VipsThreadset *set,
|
|
68
|
-
const char *domain, GFunc func, gpointer data);
|
|
69
|
-
void vips_threadset_free(VipsThreadset *set);
|
|
70
|
-
|
|
71
48
|
#ifdef __cplusplus
|
|
72
49
|
}
|
|
73
50
|
#endif /*__cplusplus*/
|
|
@@ -51,10 +51,6 @@
|
|
|
51
51
|
extern "C" {
|
|
52
52
|
#endif /*__cplusplus*/
|
|
53
53
|
|
|
54
|
-
/* Per-thread state. Allocate functions can use these members to
|
|
55
|
-
* communicate with work functions.
|
|
56
|
-
*/
|
|
57
|
-
|
|
58
54
|
#define VIPS_TYPE_THREAD_STATE (vips_thread_state_get_type())
|
|
59
55
|
#define VIPS_THREAD_STATE(obj) \
|
|
60
56
|
(G_TYPE_CHECK_INSTANCE_CAST((obj), \
|
|
@@ -112,8 +108,6 @@ typedef struct _VipsThreadStateClass {
|
|
|
112
108
|
VIPS_API
|
|
113
109
|
void *vips_thread_state_set(VipsObject *object, void *a, void *b);
|
|
114
110
|
|
|
115
|
-
/* Don't put spaces around void here, it breaks gtk-doc.
|
|
116
|
-
*/
|
|
117
111
|
VIPS_API
|
|
118
112
|
GType vips_thread_state_get_type(void);
|
|
119
113
|
|
package/include/vips/type.h
CHANGED
|
@@ -38,6 +38,8 @@
|
|
|
38
38
|
extern "C" {
|
|
39
39
|
#endif /*__cplusplus*/
|
|
40
40
|
|
|
41
|
+
#ifndef __GI_SCANNER__
|
|
42
|
+
|
|
41
43
|
/* A very simple boxed type for testing. Just holds an int.
|
|
42
44
|
*/
|
|
43
45
|
typedef struct _VipsThing {
|
|
@@ -47,7 +49,7 @@ typedef struct _VipsThing {
|
|
|
47
49
|
/**
|
|
48
50
|
* VIPS_TYPE_THING:
|
|
49
51
|
*
|
|
50
|
-
* The
|
|
52
|
+
* The [alias@GObject.Type] for a #VipsThing.
|
|
51
53
|
*/
|
|
52
54
|
#define VIPS_TYPE_THING (vips_thing_get_type())
|
|
53
55
|
VIPS_API
|
|
@@ -55,6 +57,8 @@ GType vips_thing_get_type(void);
|
|
|
55
57
|
VIPS_API
|
|
56
58
|
VipsThing *vips_thing_new(int i);
|
|
57
59
|
|
|
60
|
+
#endif /* !__GI_SCANNER__ */
|
|
61
|
+
|
|
58
62
|
/* A ref-counted area of memory. Can hold arrays of things as well.
|
|
59
63
|
*/
|
|
60
64
|
typedef struct _VipsArea {
|
|
@@ -74,7 +78,7 @@ typedef struct _VipsArea {
|
|
|
74
78
|
* structure, so a simple GMutex is OK.
|
|
75
79
|
*/
|
|
76
80
|
int count;
|
|
77
|
-
GMutex
|
|
81
|
+
GMutex lock;
|
|
78
82
|
|
|
79
83
|
/* Things like ICC profiles need their own free functions.
|
|
80
84
|
*
|
|
@@ -131,7 +135,7 @@ void *vips_area_get_data(VipsArea *area,
|
|
|
131
135
|
/**
|
|
132
136
|
* VIPS_TYPE_AREA:
|
|
133
137
|
*
|
|
134
|
-
* The
|
|
138
|
+
* The [alias@GObject.Type] for a [struct@Area].
|
|
135
139
|
*/
|
|
136
140
|
#define VIPS_TYPE_AREA (vips_area_get_type())
|
|
137
141
|
#define VIPS_AREA(X) ((VipsArea *) (X))
|
|
@@ -141,7 +145,7 @@ GType vips_area_get_type(void);
|
|
|
141
145
|
/**
|
|
142
146
|
* VIPS_TYPE_SAVE_STRING:
|
|
143
147
|
*
|
|
144
|
-
* The
|
|
148
|
+
* The [alias@GObject.Type] for a [struct@SaveString].
|
|
145
149
|
*/
|
|
146
150
|
#define VIPS_TYPE_SAVE_STRING (vips_save_string_get_type())
|
|
147
151
|
VIPS_API
|
|
@@ -154,7 +158,7 @@ typedef struct _VipsSaveString {
|
|
|
154
158
|
/**
|
|
155
159
|
* VIPS_TYPE_REF_STRING:
|
|
156
160
|
*
|
|
157
|
-
* The
|
|
161
|
+
* The [alias@GObject.Type] for a [struct@RefString].
|
|
158
162
|
*/
|
|
159
163
|
#define VIPS_TYPE_REF_STRING (vips_ref_string_get_type())
|
|
160
164
|
|
|
@@ -172,7 +176,7 @@ GType vips_ref_string_get_type(void);
|
|
|
172
176
|
/**
|
|
173
177
|
* VIPS_TYPE_BLOB:
|
|
174
178
|
*
|
|
175
|
-
* The
|
|
179
|
+
* The [alias@GObject.Type] for a [struct@Blob].
|
|
176
180
|
*/
|
|
177
181
|
#define VIPS_TYPE_BLOB (vips_blob_get_type())
|
|
178
182
|
|
|
@@ -196,7 +200,7 @@ GType vips_blob_get_type(void);
|
|
|
196
200
|
/**
|
|
197
201
|
* VIPS_TYPE_ARRAY_DOUBLE:
|
|
198
202
|
*
|
|
199
|
-
* The
|
|
203
|
+
* The [alias@GObject.Type] for a [struct@ArrayDouble].
|
|
200
204
|
*/
|
|
201
205
|
#define VIPS_TYPE_ARRAY_DOUBLE (vips_array_double_get_type())
|
|
202
206
|
|
|
@@ -216,7 +220,7 @@ GType vips_array_double_get_type(void);
|
|
|
216
220
|
/**
|
|
217
221
|
* VIPS_TYPE_ARRAY_INT:
|
|
218
222
|
*
|
|
219
|
-
* The
|
|
223
|
+
* The [alias@GObject.Type] for a [struct@ArrayInt].
|
|
220
224
|
*/
|
|
221
225
|
#define VIPS_TYPE_ARRAY_INT (vips_array_int_get_type())
|
|
222
226
|
|
|
@@ -236,7 +240,7 @@ GType vips_array_int_get_type(void);
|
|
|
236
240
|
/**
|
|
237
241
|
* VIPS_TYPE_ARRAY_IMAGE:
|
|
238
242
|
*
|
|
239
|
-
* The
|
|
243
|
+
* The [alias@GObject.Type] for a [struct@ArrayImage].
|
|
240
244
|
*/
|
|
241
245
|
#define VIPS_TYPE_ARRAY_IMAGE (vips_array_image_get_type())
|
|
242
246
|
|
package/include/vips/util.h
CHANGED
|
@@ -39,7 +39,6 @@
|
|
|
39
39
|
extern "C" {
|
|
40
40
|
#endif /*__cplusplus*/
|
|
41
41
|
|
|
42
|
-
#include <stdio.h>
|
|
43
42
|
#include <math.h>
|
|
44
43
|
|
|
45
44
|
/* Some platforms don't have M_PI :-(
|
|
@@ -54,38 +53,25 @@ extern "C" {
|
|
|
54
53
|
#define VIPS_MAX(A, B) ((A) > (B) ? (A) : (B))
|
|
55
54
|
#define VIPS_MIN(A, B) ((A) < (B) ? (A) : (B))
|
|
56
55
|
|
|
56
|
+
#define VIPS_FMAX(A, B) fmax((A), (B)) VIPS_DEPRECATED_MACRO_FOR(fmax)
|
|
57
|
+
#define VIPS_FMIN(A, B) fmin((A), (B)) VIPS_DEPRECATED_MACRO_FOR(fmin)
|
|
58
|
+
|
|
57
59
|
#define VIPS_CLIP(A, V, B) VIPS_MAX((A), VIPS_MIN((B), (V)))
|
|
58
|
-
#define VIPS_FCLIP(A, V, B)
|
|
60
|
+
#define VIPS_FCLIP(A, V, B) fmax((A), fmin((B), (V)))
|
|
59
61
|
|
|
60
62
|
#define VIPS_NUMBER(R) ((int) (sizeof(R) / sizeof(R[0])))
|
|
61
63
|
|
|
62
|
-
#define VIPS_ABS(
|
|
64
|
+
#define VIPS_ABS(V) (((V) >= 0) ? (V) : -(V))
|
|
65
|
+
#define VIPS_FABS(V) fabs((V)) VIPS_DEPRECATED_MACRO_FOR(fabs)
|
|
63
66
|
|
|
64
67
|
// is something (eg. a pointer) N aligned
|
|
65
68
|
#define VIPS_ALIGNED(P, N) ((((guint64) (P)) & ((N) - 1)) == 0)
|
|
66
69
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
#
|
|
71
|
-
#define
|
|
72
|
-
#define VIPS_FLOOR(V) __builtin_floor(V)
|
|
73
|
-
#define VIPS_CEIL(V) __builtin_ceil(V)
|
|
74
|
-
#define VIPS_RINT(V) __builtin_rint(V)
|
|
75
|
-
#define VIPS_ROUND(V) __builtin_round(V)
|
|
76
|
-
#define VIPS_FABS(V) __builtin_fabs(V)
|
|
77
|
-
#define VIPS_FMAX(A, B) __builtin_fmax(A, B)
|
|
78
|
-
#define VIPS_FMIN(A, B) __builtin_fmin(A, B)
|
|
79
|
-
#else
|
|
80
|
-
#define VIPS_ISNAN(V) isnan(V)
|
|
81
|
-
#define VIPS_FLOOR(V) floor(V)
|
|
82
|
-
#define VIPS_CEIL(V) ceil(V)
|
|
83
|
-
#define VIPS_RINT(V) rint(V)
|
|
84
|
-
#define VIPS_ROUND(V) round(V)
|
|
85
|
-
#define VIPS_FABS(V) VIPS_ABS(V)
|
|
86
|
-
#define VIPS_FMAX(A, B) VIPS_MAX(A, B)
|
|
87
|
-
#define VIPS_FMIN(A, B) VIPS_MIN(A, B)
|
|
88
|
-
#endif
|
|
70
|
+
#define VIPS_ISNAN(V) isnan(V) VIPS_DEPRECATED_MACRO_FOR(isnan)
|
|
71
|
+
#define VIPS_FLOOR(V) floor(V) VIPS_DEPRECATED_MACRO_FOR(floor)
|
|
72
|
+
#define VIPS_CEIL(V) ceil(V) VIPS_DEPRECATED_MACRO_FOR(ceil)
|
|
73
|
+
#define VIPS_RINT(V) rint(V) VIPS_DEPRECATED_MACRO_FOR(rint)
|
|
74
|
+
#define VIPS_ROUND(V) round(V) VIPS_DEPRECATED_MACRO_FOR(round)
|
|
89
75
|
|
|
90
76
|
/* Testing status before the function call saves a lot of time.
|
|
91
77
|
*/
|
|
@@ -97,7 +83,7 @@ extern "C" {
|
|
|
97
83
|
} \
|
|
98
84
|
G_STMT_END
|
|
99
85
|
|
|
100
|
-
/*
|
|
86
|
+
/* rint() does "bankers rounding", it rounds to the nearest even integer.
|
|
101
87
|
* For things like image geometry, we want strict nearest int.
|
|
102
88
|
*
|
|
103
89
|
* If you know it's unsigned, _UINT is a little faster.
|
|
@@ -298,47 +284,7 @@ int vips_filename_suffix_match(const char *path, const char *suffixes[]);
|
|
|
298
284
|
|
|
299
285
|
VIPS_API
|
|
300
286
|
gint64 vips_file_length(int fd);
|
|
301
|
-
/* TODO(kleisauke): VIPS_API is required by vipsedit.
|
|
302
|
-
*/
|
|
303
|
-
VIPS_API
|
|
304
|
-
int vips__write(int fd, const void *buf, size_t count);
|
|
305
|
-
|
|
306
|
-
/* TODO(kleisauke): VIPS_API is required by test_connections.
|
|
307
|
-
*/
|
|
308
|
-
VIPS_API
|
|
309
|
-
int vips__open(const char *filename, int flags, int mode);
|
|
310
|
-
int vips__open_read(const char *filename);
|
|
311
|
-
FILE *vips__fopen(const char *filename, const char *mode);
|
|
312
|
-
|
|
313
|
-
FILE *vips__file_open_read(const char *filename,
|
|
314
|
-
const char *fallback_dir, gboolean text_mode);
|
|
315
|
-
FILE *vips__file_open_write(const char *filename,
|
|
316
|
-
gboolean text_mode);
|
|
317
|
-
/* TODO(kleisauke): VIPS_API is required by vipsedit.
|
|
318
|
-
*/
|
|
319
|
-
VIPS_API
|
|
320
|
-
char *vips__file_read(FILE *fp, const char *name, size_t *length_out);
|
|
321
|
-
char *vips__file_read_name(const char *name, const char *fallback_dir,
|
|
322
|
-
size_t *length_out);
|
|
323
|
-
int vips__file_write(void *data, size_t size, size_t nmemb, FILE *stream);
|
|
324
|
-
/* TODO(kleisauke): VIPS_API is required by the magick module.
|
|
325
|
-
*/
|
|
326
|
-
VIPS_API
|
|
327
|
-
gint64 vips__get_bytes(const char *filename, unsigned char buf[], gint64 len);
|
|
328
|
-
int vips__fgetc(FILE *fp);
|
|
329
|
-
|
|
330
|
-
GValue *vips__gvalue_ref_string_new(const char *text);
|
|
331
|
-
void vips__gslist_gvalue_free(GSList *list);
|
|
332
|
-
GSList *vips__gslist_gvalue_copy(const GSList *list);
|
|
333
|
-
GSList *vips__gslist_gvalue_merge(GSList *a, const GSList *b);
|
|
334
|
-
char *vips__gslist_gvalue_get(const GSList *list);
|
|
335
287
|
|
|
336
|
-
gint64 vips__seek_no_error(int fd, gint64 pos, int whence);
|
|
337
|
-
/* TODO(kleisauke): VIPS_API is required by vipsedit.
|
|
338
|
-
*/
|
|
339
|
-
VIPS_API
|
|
340
|
-
gint64 vips__seek(int fd, gint64 pos, int whence);
|
|
341
|
-
int vips__ftruncate(int fd, gint64 pos);
|
|
342
288
|
VIPS_API
|
|
343
289
|
int vips_existsf(const char *name, ...)
|
|
344
290
|
G_GNUC_PRINTF(1, 2);
|
|
@@ -355,7 +301,7 @@ VIPS_API
|
|
|
355
301
|
int vips_rename(const char *old_name, const char *new_name);
|
|
356
302
|
|
|
357
303
|
/**
|
|
358
|
-
* VipsToken:
|
|
304
|
+
* VipsToken: (skip)
|
|
359
305
|
* @VIPS_TOKEN_LEFT: left bracket
|
|
360
306
|
* @VIPS_TOKEN_RIGHT: right bracket
|
|
361
307
|
* @VIPS_TOKEN_STRING: string constant
|
|
@@ -369,7 +315,6 @@ int vips_rename(const char *old_name, const char *new_name);
|
|
|
369
315
|
*
|
|
370
316
|
* Strings may be in double quotes, and may contain escaped quote characters,
|
|
371
317
|
* for example string, "string" and "str\"ing".
|
|
372
|
-
*
|
|
373
318
|
*/
|
|
374
319
|
typedef enum {
|
|
375
320
|
VIPS_TOKEN_LEFT = 1,
|
|
@@ -379,49 +324,23 @@ typedef enum {
|
|
|
379
324
|
VIPS_TOKEN_COMMA
|
|
380
325
|
} VipsToken;
|
|
381
326
|
|
|
327
|
+
#ifndef __GI_SCANNER__
|
|
328
|
+
|
|
382
329
|
// we expose this one in the API for testing
|
|
383
330
|
VIPS_API
|
|
384
331
|
const char *vips__token_get(const char *buffer,
|
|
385
332
|
VipsToken *token, char *string, int size);
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
const char *vips__token_need(const char *buffer, VipsToken need_token,
|
|
389
|
-
char *string, int size);
|
|
390
|
-
const char *vips__token_segment(const char *p, VipsToken *token,
|
|
391
|
-
char *string, int size);
|
|
392
|
-
const char *vips__token_segment_need(const char *p, VipsToken need_token,
|
|
393
|
-
char *string, int size);
|
|
394
|
-
const char *vips__find_rightmost_brackets(const char *p);
|
|
395
|
-
/* TODO(kleisauke): VIPS_API is required by libvips-cpp and vipsheader.
|
|
396
|
-
*/
|
|
397
|
-
VIPS_API
|
|
398
|
-
void vips__filename_split8(const char *name,
|
|
399
|
-
char *filename, char *option_string);
|
|
333
|
+
|
|
334
|
+
#endif /* !__GI_SCANNER__ */
|
|
400
335
|
|
|
401
336
|
VIPS_API
|
|
402
337
|
int vips_ispoweroftwo(int p);
|
|
403
338
|
VIPS_API
|
|
404
339
|
int vips_amiMSBfirst(void);
|
|
405
340
|
|
|
406
|
-
/* TODO(kleisauke): VIPS_API is required by jpegsave_file_fuzzer.
|
|
407
|
-
*/
|
|
408
|
-
VIPS_API
|
|
409
|
-
char *vips__temp_name(const char *format);
|
|
410
|
-
|
|
411
|
-
void vips__change_suffix(const char *name, char *out, int mx,
|
|
412
|
-
const char *new_suff, const char **olds, int nolds);
|
|
413
|
-
|
|
414
341
|
VIPS_API
|
|
415
342
|
char *vips_realpath(const char *path);
|
|
416
343
|
|
|
417
|
-
guint32 vips__random(guint32 seed);
|
|
418
|
-
guint32 vips__random_add(guint32 seed, int value);
|
|
419
|
-
|
|
420
|
-
const char *vips__icc_dir(void);
|
|
421
|
-
const char *vips__windows_prefix(void);
|
|
422
|
-
|
|
423
|
-
char *vips__get_iso8601(void);
|
|
424
|
-
|
|
425
344
|
VIPS_API
|
|
426
345
|
int vips_strtod(const char *str, double *out);
|
|
427
346
|
|
package/include/vips/vector.h
CHANGED
package/include/vips/version.h
CHANGED
|
@@ -4,19 +4,19 @@
|
|
|
4
4
|
#ifndef VIPS_VERSION_H
|
|
5
5
|
#define VIPS_VERSION_H
|
|
6
6
|
|
|
7
|
-
#define VIPS_VERSION "8.
|
|
8
|
-
#define VIPS_VERSION_STRING "8.
|
|
7
|
+
#define VIPS_VERSION "8.17.0"
|
|
8
|
+
#define VIPS_VERSION_STRING "8.17.0"
|
|
9
9
|
#define VIPS_MAJOR_VERSION (8)
|
|
10
|
-
#define VIPS_MINOR_VERSION (
|
|
11
|
-
#define VIPS_MICRO_VERSION (
|
|
10
|
+
#define VIPS_MINOR_VERSION (17)
|
|
11
|
+
#define VIPS_MICRO_VERSION (0)
|
|
12
12
|
|
|
13
13
|
/* The ABI version, as used for library versioning.
|
|
14
14
|
*/
|
|
15
|
-
#define VIPS_LIBRARY_CURRENT (
|
|
16
|
-
#define VIPS_LIBRARY_REVISION (
|
|
17
|
-
#define VIPS_LIBRARY_AGE (
|
|
15
|
+
#define VIPS_LIBRARY_CURRENT (61)
|
|
16
|
+
#define VIPS_LIBRARY_REVISION (0)
|
|
17
|
+
#define VIPS_LIBRARY_AGE (19)
|
|
18
18
|
|
|
19
|
-
#define VIPS_CONFIG "enable debug: false\nenable deprecated: false\nenable modules: false\nenable
|
|
19
|
+
#define VIPS_CONFIG "enable debug: false\nenable deprecated: false\nenable modules: false\nenable C++ binding: true\nenable RAD load/save: false\nenable Analyze7 load: false\nenable PPM load/save: false\nenable GIF load: true\nFFTs with fftw: false\nSIMD support with libhwy: true\nICC profile support with lcms2: true\ndeflate compression with zlib: true\ntext rendering with pangocairo: true\nfont file support with fontconfig: true\nEXIF metadata support with libexif: true\nJPEG load/save with libjpeg: true\nJXL load/save with libjxl: false (dynamic module: false)\nJPEG2000 load/save with OpenJPEG: false\nPNG load/save with spng: true\nimage quantisation with imagequant: true\nTIFF load/save with libtiff-4: true\nimage pyramid save with libarchive: true\nHEIC/AVIF load/save with libheif: true (dynamic module: false)\nWebP load/save with libwebp: true\nPDF load with PDFium or Poppler: false (dynamic module: false)\nSVG load with librsvg-2.0: true\nEXR load with OpenEXR: false\nWSI load with OpenSlide: false (dynamic module: false)\nMatlab load with Matio: false\nNIfTI load/save with libnifti: false\nFITS load/save with cfitsio: false\nGIF save with cgif: true\nMagick load/save with MagickCore: false (dynamic module: false)"
|
|
20
20
|
|
|
21
21
|
/* Not really anything to do with versions, but this is a handy place to put
|
|
22
22
|
* it.
|
package/include/vips/vips.h
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@img/sharp-libvips-dev",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0-rc.1",
|
|
4
4
|
"description": "Header files and C++ sources for libvips and dependencies required when compiling sharp from source",
|
|
5
5
|
"author": "Lovell Fuller <npm@lovell.info>",
|
|
6
6
|
"homepage": "https://sharp.pixelplumbing.com",
|
package/versions.json
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
{
|
|
2
|
-
"aom": "3.12.
|
|
3
|
-
"archive": "3.
|
|
2
|
+
"aom": "3.12.1",
|
|
3
|
+
"archive": "3.8.1",
|
|
4
4
|
"cairo": "1.18.4",
|
|
5
5
|
"cgif": "0.5.0",
|
|
6
6
|
"exif": "0.6.25",
|
|
7
7
|
"expat": "2.7.1",
|
|
8
|
-
"ffi": "3.
|
|
9
|
-
"fontconfig": "2.16.
|
|
8
|
+
"ffi": "3.5.1",
|
|
9
|
+
"fontconfig": "2.16.2",
|
|
10
10
|
"freetype": "2.13.3",
|
|
11
11
|
"fribidi": "1.0.16",
|
|
12
|
-
"glib": "2.
|
|
13
|
-
"harfbuzz": "11.
|
|
14
|
-
"heif": "1.19.
|
|
12
|
+
"glib": "2.85.0",
|
|
13
|
+
"harfbuzz": "11.2.1",
|
|
14
|
+
"heif": "1.19.8",
|
|
15
15
|
"highway": "1.2.0",
|
|
16
16
|
"imagequant": "2.4.1",
|
|
17
17
|
"lcms": "2.17",
|
|
18
18
|
"mozjpeg": "4.1.5",
|
|
19
19
|
"pango": "1.56.3",
|
|
20
|
-
"pixman": "0.
|
|
21
|
-
"png": "1.6.
|
|
20
|
+
"pixman": "0.46.2",
|
|
21
|
+
"png": "1.6.48",
|
|
22
22
|
"proxy-libintl": "0.4",
|
|
23
23
|
"rsvg": "2.60.0",
|
|
24
24
|
"spng": "0.7.4",
|
|
25
25
|
"tiff": "4.7.0",
|
|
26
|
-
"vips": "8.
|
|
26
|
+
"vips": "8.17.0",
|
|
27
27
|
"webp": "1.5.0",
|
|
28
|
-
"
|
|
28
|
+
"xml2": "2.14.3",
|
|
29
29
|
"zlib-ng": "2.2.4"
|
|
30
30
|
}
|