@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.
Files changed (151) hide show
  1. package/cplusplus/vips-operators.cpp +39 -0
  2. package/include/archive.h +53 -2
  3. package/include/archive_entry.h +56 -25
  4. package/include/ffi.h +20 -2
  5. package/include/fontconfig/fontconfig.h +1 -1
  6. package/include/glib-2.0/gio/gdbusnameowning.h +12 -10
  7. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  8. package/include/glib-2.0/gio/gsettings.h +35 -31
  9. package/include/glib-2.0/gio/gzlibcompressor.h +6 -0
  10. package/include/glib-2.0/girepository/gi-visibility.h +34 -0
  11. package/include/glib-2.0/girepository/gitypes.h +6 -0
  12. package/include/glib-2.0/glib/gbitlock.h +11 -0
  13. package/include/glib-2.0/glib/gdate.h +6 -0
  14. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  15. package/include/glib-2.0/glib/gmain.h +13 -10
  16. package/include/glib-2.0/glib/gmessages.h +4 -1
  17. package/include/glib-2.0/glib/gstring.h +2 -0
  18. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  19. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  20. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  21. package/include/glib-2.0/gobject/gsignal.h +33 -8
  22. package/include/harfbuzz/hb-common.h +1 -431
  23. package/include/harfbuzz/hb-deprecated.h +80 -2
  24. package/include/harfbuzz/hb-draw.h +2 -10
  25. package/include/harfbuzz/hb-face.h +1 -1
  26. package/include/harfbuzz/hb-font.h +55 -36
  27. package/include/harfbuzz/hb-paint.h +5 -3
  28. package/include/harfbuzz/hb-script-list.h +484 -0
  29. package/include/harfbuzz/hb-subset.h +22 -2
  30. package/include/harfbuzz/hb-version.h +3 -3
  31. package/include/libheif/heif.h +2 -0
  32. package/include/libheif/heif_version.h +2 -2
  33. package/include/libpng16/png.h +10 -10
  34. package/include/libpng16/pngconf.h +20 -27
  35. package/include/libpng16/pnglibconf.h +1 -1
  36. package/include/libxml2/libxml/HTMLparser.h +33 -30
  37. package/include/libxml2/libxml/HTMLtree.h +1 -0
  38. package/include/libxml2/libxml/SAX.h +2 -186
  39. package/include/libxml2/libxml/SAX2.h +2 -3
  40. package/include/libxml2/libxml/catalog.h +1 -0
  41. package/include/libxml2/libxml/debugXML.h +0 -138
  42. package/include/libxml2/libxml/encoding.h +124 -61
  43. package/include/libxml2/libxml/entities.h +0 -19
  44. package/include/libxml2/libxml/globals.h +0 -16
  45. package/include/libxml2/libxml/nanoftp.h +3 -173
  46. package/include/libxml2/libxml/parser.h +474 -231
  47. package/include/libxml2/libxml/parserInternals.h +21 -101
  48. package/include/libxml2/libxml/relaxng.h +7 -2
  49. package/include/libxml2/libxml/threads.h +0 -6
  50. package/include/libxml2/libxml/tree.h +29 -85
  51. package/include/libxml2/libxml/valid.h +20 -12
  52. package/include/libxml2/libxml/xinclude.h +5 -0
  53. package/include/libxml2/libxml/xlink.h +4 -0
  54. package/include/libxml2/libxml/xmlIO.h +15 -34
  55. package/include/libxml2/libxml/xmlautomata.h +19 -2
  56. package/include/libxml2/libxml/xmlerror.h +17 -18
  57. package/include/libxml2/libxml/xmlexports.h +6 -56
  58. package/include/libxml2/libxml/xmlmemory.h +19 -19
  59. package/include/libxml2/libxml/xmlmodule.h +4 -0
  60. package/include/libxml2/libxml/xmlreader.h +11 -3
  61. package/include/libxml2/libxml/xmlregexp.h +7 -106
  62. package/include/libxml2/libxml/xmlsave.h +11 -2
  63. package/include/libxml2/libxml/xmlschemas.h +10 -5
  64. package/include/libxml2/libxml/xmlunicode.h +3 -354
  65. package/include/libxml2/libxml/xmlversion.h +18 -33
  66. package/include/libxml2/libxml/xpath.h +5 -15
  67. package/include/libxml2/libxml/xpathInternals.h +9 -3
  68. package/include/libxml2/libxml/xpointer.h +1 -91
  69. package/include/pixman-1/pixman-version.h +2 -2
  70. package/include/pixman-1/pixman.h +200 -0
  71. package/include/png.h +10 -10
  72. package/include/pngconf.h +20 -27
  73. package/include/pnglibconf.h +1 -1
  74. package/include/vips/VImage8.h +62 -14
  75. package/include/vips/arithmetic.h +34 -34
  76. package/include/vips/basic.h +16 -0
  77. package/include/vips/buf.h +0 -5
  78. package/include/vips/colour.h +6 -7
  79. package/include/vips/connection.h +25 -37
  80. package/include/vips/enumtypes.h +11 -2
  81. package/include/vips/foreign.h +73 -43
  82. package/include/vips/format.h +7 -5
  83. package/include/vips/gate.h +0 -11
  84. package/include/vips/header.h +11 -11
  85. package/include/vips/image.h +8 -3
  86. package/include/vips/interpolate.h +0 -2
  87. package/include/vips/memory.h +4 -0
  88. package/include/vips/mosaicing.h +4 -0
  89. package/include/vips/object.h +14 -18
  90. package/include/vips/operation.h +0 -2
  91. package/include/vips/private.h +50 -2
  92. package/include/vips/region.h +1 -3
  93. package/include/vips/resample.h +2 -0
  94. package/include/vips/semaphore.h +8 -3
  95. package/include/vips/thread.h +1 -24
  96. package/include/vips/threadpool.h +0 -6
  97. package/include/vips/type.h +13 -9
  98. package/include/vips/util.h +17 -98
  99. package/include/vips/vector.h +0 -4
  100. package/include/vips/version.h +8 -8
  101. package/include/vips/vips.h +1 -0
  102. package/package.json +1 -1
  103. package/versions.json +11 -11
  104. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h +0 -221
  105. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h +0 -37
  106. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h +0 -525
  107. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h +0 -40
  108. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h +0 -115
  109. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h +0 -481
  110. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h +0 -113
  111. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-macros.h +0 -718
  112. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-marshal.h +0 -33
  113. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h +0 -70
  114. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h +0 -168
  115. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h +0 -46
  116. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixdata.h +0 -165
  117. package/include/glib-2.0/glib/gwin32.h +0 -142
  118. package/include/harfbuzz/hb-subset-repacker.h +0 -81
  119. package/include/hwy/ops/tuple-inl.h +0 -125
  120. package/include/orc-0.4/orc/orc-stdint.h +0 -1
  121. package/include/orc-0.4/orc/orc.h +0 -16
  122. package/include/orc-0.4/orc/orcarm.h +0 -879
  123. package/include/orc-0.4/orc/orcbytecode.h +0 -35
  124. package/include/orc-0.4/orc/orcbytecodes.h +0 -255
  125. package/include/orc-0.4/orc/orccode.h +0 -53
  126. package/include/orc-0.4/orc/orccompiler.h +0 -176
  127. package/include/orc-0.4/orc/orcconstant.h +0 -39
  128. package/include/orc-0.4/orc/orccpu.h +0 -21
  129. package/include/orc-0.4/orc/orccpuinsn.h +0 -40
  130. package/include/orc-0.4/orc/orcdebug.h +0 -158
  131. package/include/orc-0.4/orc/orcemulateopcodes.h +0 -203
  132. package/include/orc-0.4/orc/orcexecutor.h +0 -135
  133. package/include/orc-0.4/orc/orcfunctions.h +0 -93
  134. package/include/orc-0.4/orc/orcinstruction.h +0 -39
  135. package/include/orc-0.4/orc/orcinternal.h +0 -46
  136. package/include/orc-0.4/orc/orclimits.h +0 -94
  137. package/include/orc-0.4/orc/orcmips.h +0 -229
  138. package/include/orc-0.4/orc/orcmmx.h +0 -79
  139. package/include/orc-0.4/orc/orcneon.h +0 -43
  140. package/include/orc-0.4/orc/orconce.h +0 -166
  141. package/include/orc-0.4/orc/orcopcode.h +0 -63
  142. package/include/orc-0.4/orc/orcparse.h +0 -27
  143. package/include/orc-0.4/orc/orcpowerpc.h +0 -209
  144. package/include/orc-0.4/orc/orcprogram.h +0 -192
  145. package/include/orc-0.4/orc/orcrule.h +0 -52
  146. package/include/orc-0.4/orc/orcsse.h +0 -55
  147. package/include/orc-0.4/orc/orctarget.h +0 -115
  148. package/include/orc-0.4/orc/orcutils.h +0 -238
  149. package/include/orc-0.4/orc/orcvariable.h +0 -81
  150. package/include/orc-0.4/orc/orcx86.h +0 -199
  151. package/include/orc-0.4/orc/orcx86insn.h +0 -672
@@ -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
 
@@ -100,8 +100,6 @@ typedef struct _VipsOperationClass {
100
100
  void (*invalidate)(VipsOperation *operation);
101
101
  } VipsOperationClass;
102
102
 
103
- /* Don't put spaces around void here, it breaks gtk-doc.
104
- */
105
103
  VIPS_API
106
104
  GType vips_operation_get_type(void);
107
105
 
@@ -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*/
@@ -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
 
@@ -45,6 +45,8 @@ typedef enum {
45
45
  VIPS_KERNEL_MITCHELL,
46
46
  VIPS_KERNEL_LANCZOS2,
47
47
  VIPS_KERNEL_LANCZOS3,
48
+ VIPS_KERNEL_MKS2013,
49
+ VIPS_KERNEL_MKS2021,
48
50
  VIPS_KERNEL_LAST
49
51
  } VipsKernel;
50
52
 
@@ -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 *mutex;
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
 
@@ -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
- GCond *vips_g_cond_new(void);
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
 
@@ -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 #GType for a #VipsThing.
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 *lock;
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 #GType for a #VipsArea.
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 #GType for a #VipsSaveString.
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 #GType for a #VipsRefString.
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 %GType for a #VipsBlob.
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 #GType for a #VipsArrayDouble.
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 #GType for a #VipsArrayInt.
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 #GType for a #VipsArrayImage.
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
 
@@ -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) VIPS_FMAX((A), VIPS_FMIN((B), (V)))
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(X) (((X) >= 0) ? (X) : -(X))
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
- /* The built-in isnan and isinf functions provided by gcc 4+ and clang are
68
- * up to 7x faster than their libc equivalent included from <math.h>.
69
- */
70
- #if defined(__clang__) || (__GNUC__ >= 4)
71
- #define VIPS_ISNAN(V) __builtin_isnan(V)
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
- /* VIPS_RINT() does "bankers rounding", it rounds to the nearest even integer.
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
- const char *vips__token_must(const char *buffer, VipsToken *token,
387
- char *string, int size);
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
 
@@ -38,10 +38,6 @@
38
38
  extern "C" {
39
39
  #endif /*__cplusplus*/
40
40
 
41
- /* Set from the command-line.
42
- */
43
- extern gboolean vips__vector_enabled;
44
-
45
41
  VIPS_API
46
42
  gboolean vips_vector_isenabled(void);
47
43
  VIPS_API
@@ -4,19 +4,19 @@
4
4
  #ifndef VIPS_VERSION_H
5
5
  #define VIPS_VERSION_H
6
6
 
7
- #define VIPS_VERSION "8.16.1"
8
- #define VIPS_VERSION_STRING "8.16.1"
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 (16)
11
- #define VIPS_MICRO_VERSION (1)
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 (60)
16
- #define VIPS_LIBRARY_REVISION (1)
17
- #define VIPS_LIBRARY_AGE (18)
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 cplusplus: 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)"
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.
@@ -117,6 +117,7 @@ extern "C" {
117
117
  #include <vips/generate.h>
118
118
  #include <vips/interpolate.h>
119
119
  #include <vips/semaphore.h>
120
+ #include <vips/thread.h>
120
121
  #include <vips/threadpool.h>
121
122
  #include <vips/header.h>
122
123
  #include <vips/operation.h>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@img/sharp-libvips-dev",
3
- "version": "1.1.0-rc5",
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.0",
3
- "archive": "3.7.9",
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.4.7",
9
- "fontconfig": "2.16.1",
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.84.0",
13
- "harfbuzz": "11.0.0",
14
- "heif": "1.19.7",
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.44.2",
21
- "png": "1.6.47",
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.16.1",
26
+ "vips": "8.17.0",
27
27
  "webp": "1.5.0",
28
- "xml": "2.13.7",
28
+ "xml2": "2.14.3",
29
29
  "zlib-ng": "2.2.4"
30
30
  }