@img/sharp-libvips-dev-wasm32 1.0.4 → 1.0.5

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 (119) hide show
  1. package/include/aom/aom_decoder.h +1 -1
  2. package/include/aom/aom_encoder.h +7 -1
  3. package/include/aom/aom_image.h +24 -12
  4. package/include/aom/aom_integer.h +3 -3
  5. package/include/aom/aomcx.h +15 -0
  6. package/include/aom/aomdx.h +5 -2
  7. package/include/cgif.h +3 -0
  8. package/include/glib-2.0/gio/gappinfo.h +40 -25
  9. package/include/glib-2.0/gio/gasyncresult.h +1 -1
  10. package/include/glib-2.0/gio/gconverter.h +5 -0
  11. package/include/glib-2.0/gio/gdbusintrospection.h +1 -1
  12. package/include/glib-2.0/gio/gfile.h +16 -0
  13. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  14. package/include/glib-2.0/gio/gsettings.h +8 -0
  15. package/include/glib-2.0/gio/gvfs.h +2 -2
  16. package/include/glib-2.0/glib/gbookmarkfile.h +1 -1
  17. package/include/glib-2.0/glib/giochannel.h +2 -2
  18. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  19. package/include/glib-2.0/glib/gmacros.h +12 -5
  20. package/include/glib-2.0/glib/gmain.h +93 -7
  21. package/include/glib-2.0/glib/gqsort.h +8 -1
  22. package/include/glib-2.0/glib/gstrfuncs.h +0 -12
  23. package/include/glib-2.0/glib/gstrvbuilder.h +3 -0
  24. package/include/glib-2.0/glib/gunicode.h +1 -1
  25. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  26. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  27. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  28. package/include/glib-2.0/gobject/gtype.h +6 -6
  29. package/include/hwy/abort.h +28 -0
  30. package/include/hwy/aligned_allocator.h +48 -1
  31. package/include/hwy/base.h +235 -34
  32. package/include/hwy/detect_compiler_arch.h +84 -10
  33. package/include/hwy/detect_targets.h +95 -29
  34. package/include/hwy/foreach_target.h +12 -1
  35. package/include/hwy/highway.h +205 -50
  36. package/include/hwy/ops/arm_neon-inl.h +841 -99
  37. package/include/hwy/ops/arm_sve-inl.h +413 -141
  38. package/include/hwy/ops/emu128-inl.h +373 -360
  39. package/include/hwy/ops/generic_ops-inl.h +804 -401
  40. package/include/hwy/ops/inside-inl.h +691 -0
  41. package/include/hwy/ops/ppc_vsx-inl.h +456 -166
  42. package/include/hwy/ops/rvv-inl.h +537 -249
  43. package/include/hwy/ops/scalar-inl.h +169 -79
  44. package/include/hwy/ops/set_macros-inl.h +106 -18
  45. package/include/hwy/ops/shared-inl.h +23 -0
  46. package/include/hwy/ops/wasm_128-inl.h +130 -108
  47. package/include/hwy/ops/x86_128-inl.h +1892 -577
  48. package/include/hwy/ops/x86_256-inl.h +625 -184
  49. package/include/hwy/ops/x86_512-inl.h +733 -131
  50. package/include/hwy/targets.h +22 -21
  51. package/include/hwy/timer-inl.h +3 -3
  52. package/include/hwy/timer.h +5 -1
  53. package/include/libheif/heif.h +170 -15
  54. package/include/libheif/heif_items.h +237 -0
  55. package/include/libheif/heif_properties.h +38 -2
  56. package/include/libheif/heif_regions.h +1 -1
  57. package/include/libheif/heif_version.h +2 -2
  58. package/include/resvg.h +2 -12
  59. package/include/vips/util.h +1 -2
  60. package/include/vips/version.h +4 -4
  61. package/include/webp/decode.h +58 -56
  62. package/include/webp/demux.h +25 -21
  63. package/include/webp/encode.h +44 -39
  64. package/include/webp/mux.h +76 -15
  65. package/include/webp/mux_types.h +2 -1
  66. package/include/webp/sharpyuv/sharpyuv.h +77 -8
  67. package/include/webp/types.h +29 -8
  68. package/include/zconf.h +1 -1
  69. package/include/zlib.h +12 -12
  70. package/lib/glib-2.0/include/glibconfig.h +2 -2
  71. package/lib/libaom.a +0 -0
  72. package/lib/libcgif.a +0 -0
  73. package/lib/libexif.a +0 -0
  74. package/lib/libexpat.a +0 -0
  75. package/lib/libffi.a +0 -0
  76. package/lib/libgio-2.0.a +0 -0
  77. package/lib/libglib-2.0.a +0 -0
  78. package/lib/libgmodule-2.0.a +0 -0
  79. package/lib/libgobject-2.0.a +0 -0
  80. package/lib/libgthread-2.0.a +0 -0
  81. package/lib/libheif.a +0 -0
  82. package/lib/libhwy.a +0 -0
  83. package/lib/libimagequant.a +0 -0
  84. package/lib/libjpeg.a +0 -0
  85. package/lib/liblcms2.a +0 -0
  86. package/lib/libresvg.a +0 -0
  87. package/lib/libsharpyuv.a +0 -0
  88. package/lib/libsharpyuv.la +4 -4
  89. package/lib/libspng.a +0 -0
  90. package/lib/libtiff.a +0 -0
  91. package/lib/libvips-cpp.a +0 -0
  92. package/lib/libvips.a +0 -0
  93. package/lib/libwebp.a +0 -0
  94. package/lib/libwebp.la +2 -2
  95. package/lib/libwebpdemux.a +0 -0
  96. package/lib/libwebpdemux.la +2 -2
  97. package/lib/libwebpmux.a +0 -0
  98. package/lib/libwebpmux.la +4 -4
  99. package/lib/libz.a +0 -0
  100. package/lib/pkgconfig/aom.pc +2 -2
  101. package/lib/pkgconfig/cgif.pc +1 -1
  102. package/lib/pkgconfig/gio-2.0.pc +1 -1
  103. package/lib/pkgconfig/glib-2.0.pc +1 -1
  104. package/lib/pkgconfig/gmodule-2.0.pc +1 -1
  105. package/lib/pkgconfig/gmodule-export-2.0.pc +1 -1
  106. package/lib/pkgconfig/gmodule-no-export-2.0.pc +1 -1
  107. package/lib/pkgconfig/gobject-2.0.pc +1 -1
  108. package/lib/pkgconfig/gthread-2.0.pc +1 -1
  109. package/lib/pkgconfig/libheif.pc +1 -10
  110. package/lib/pkgconfig/libhwy.pc +1 -1
  111. package/lib/pkgconfig/libsharpyuv.pc +1 -1
  112. package/lib/pkgconfig/libwebp.pc +1 -1
  113. package/lib/pkgconfig/libwebpdemux.pc +1 -1
  114. package/lib/pkgconfig/libwebpmux.pc +1 -1
  115. package/lib/pkgconfig/vips-cpp.pc +1 -1
  116. package/lib/pkgconfig/vips.pc +1 -1
  117. package/lib/pkgconfig/zlib.pc +1 -1
  118. package/package.json +1 -1
  119. package/versions.json +10 -10
@@ -30,7 +30,7 @@
30
30
  extern "C" {
31
31
  #endif
32
32
 
33
- #include "aom/aom_codec.h"
33
+ #include "aom/aom_codec.h" // IWYU pragma: export
34
34
  #include "aom/aom_frame_buffer.h"
35
35
 
36
36
  /*!\brief Current ABI version number
@@ -30,7 +30,7 @@
30
30
  extern "C" {
31
31
  #endif
32
32
 
33
- #include "aom/aom_codec.h"
33
+ #include "aom/aom_codec.h" // IWYU pragma: export
34
34
  #include "aom/aom_external_partition.h"
35
35
 
36
36
  /*!\brief Current ABI version number
@@ -637,6 +637,7 @@ typedef struct aom_codec_enc_cfg {
637
637
  /*!\brief Target data rate
638
638
  *
639
639
  * Target bitrate to use for this stream, in kilobits per second.
640
+ * Max allowed value is 2000000
640
641
  */
641
642
  unsigned int rc_target_bitrate;
642
643
 
@@ -1044,6 +1045,11 @@ aom_fixed_buf_t *aom_codec_get_global_headers(aom_codec_ctx_t *ctx);
1044
1045
  * Interface is not an encoder interface.
1045
1046
  * \retval #AOM_CODEC_INVALID_PARAM
1046
1047
  * A parameter was NULL, the image format is unsupported, etc.
1048
+ *
1049
+ * \note
1050
+ * `duration` is of the unsigned long type, which can be 32 or 64 bits.
1051
+ * `duration` must be less than or equal to UINT32_MAX so that its range is
1052
+ * independent of the size of unsigned long.
1047
1053
  */
1048
1054
  aom_codec_err_t aom_codec_encode(aom_codec_ctx_t *ctx, const aom_image_t *img,
1049
1055
  aom_codec_pts_t pts, unsigned long duration,
@@ -103,7 +103,8 @@ typedef enum aom_transfer_characteristics {
103
103
  AOM_CICP_TC_SMPTE_428 = 17, /**< SMPTE ST 428 */
104
104
  AOM_CICP_TC_HLG = 18, /**< BT.2100 HLG, ARIB STD-B67 */
105
105
  AOM_CICP_TC_RESERVED_19 = 19 /**< For future use (values 19-255) */
106
- } aom_transfer_characteristics_t; /**< alias for enum aom_transfer_function */
106
+ } aom_transfer_characteristics_t; /**< alias for enum
107
+ aom_transfer_characteristics */
107
108
 
108
109
  /*!\brief List of supported matrix coefficients */
109
110
  typedef enum aom_matrix_coefficients {
@@ -125,7 +126,7 @@ typedef enum aom_matrix_coefficients {
125
126
  AOM_CICP_MC_CHROMAT_CL = 13, /**< Chromaticity-derived constant luminance */
126
127
  AOM_CICP_MC_ICTCP = 14, /**< BT.2100 ICtCp */
127
128
  AOM_CICP_MC_RESERVED_15 = 15 /**< For future use (values 15-255) */
128
- } aom_matrix_coefficients_t;
129
+ } aom_matrix_coefficients_t; /**< alias for enum aom_matrix_coefficients */
129
130
 
130
131
  /*!\brief List of supported color range */
131
132
  typedef enum aom_color_range {
@@ -144,7 +145,8 @@ typedef enum aom_chroma_sample_position {
144
145
  /**< sample, between two vertical samples */
145
146
  AOM_CSP_COLOCATED = 2, /**< Co-located with luma(0, 0) sample */
146
147
  AOM_CSP_RESERVED = 3 /**< Reserved value */
147
- } aom_chroma_sample_position_t; /**< alias for enum aom_transfer_function */
148
+ } aom_chroma_sample_position_t; /**< alias for enum aom_chroma_sample_position
149
+ */
148
150
 
149
151
  /*!\brief List of insert flags for Metadata
150
152
  *
@@ -244,10 +246,13 @@ typedef struct aom_image {
244
246
  * is NULL, the storage for the descriptor will be
245
247
  * allocated on the heap.
246
248
  * \param[in] fmt Format for the image
247
- * \param[in] d_w Width of the image
248
- * \param[in] d_h Height of the image
249
+ * \param[in] d_w Width of the image. Must not exceed 0x08000000
250
+ * (2^27).
251
+ * \param[in] d_h Height of the image. Must not exceed 0x08000000
252
+ * (2^27).
249
253
  * \param[in] align Alignment, in bytes, of the image buffer and
250
- * each row in the image (stride).
254
+ * each row in the image (stride). Must not exceed
255
+ * 65536.
251
256
  *
252
257
  * \return Returns a pointer to the initialized image descriptor. If the img
253
258
  * parameter is non-null, the value of the img parameter will be
@@ -267,10 +272,12 @@ aom_image_t *aom_img_alloc(aom_image_t *img, aom_img_fmt_t fmt,
267
272
  * is NULL, the storage for the descriptor will be
268
273
  * allocated on the heap.
269
274
  * \param[in] fmt Format for the image
270
- * \param[in] d_w Width of the image
271
- * \param[in] d_h Height of the image
275
+ * \param[in] d_w Width of the image. Must not exceed 0x08000000
276
+ * (2^27).
277
+ * \param[in] d_h Height of the image. Must not exceed 0x08000000
278
+ * (2^27).
272
279
  * \param[in] align Alignment, in bytes, of each row in the image
273
- * (stride).
280
+ * (stride). Must not exceed 65536.
274
281
  * \param[in] img_data Storage to use for the image
275
282
  *
276
283
  * \return Returns a pointer to the initialized image descriptor. If the img
@@ -291,12 +298,17 @@ aom_image_t *aom_img_wrap(aom_image_t *img, aom_img_fmt_t fmt, unsigned int d_w,
291
298
  * is NULL, the storage for the descriptor will be
292
299
  * allocated on the heap.
293
300
  * \param[in] fmt Format for the image
294
- * \param[in] d_w Width of the image
295
- * \param[in] d_h Height of the image
301
+ * \param[in] d_w Width of the image. Must not exceed 0x08000000
302
+ * (2^27).
303
+ * \param[in] d_h Height of the image. Must not exceed 0x08000000
304
+ * (2^27).
296
305
  * \param[in] align Alignment, in bytes, of the image buffer and
297
- * each row in the image (stride).
306
+ * each row in the image (stride). Must not exceed
307
+ * 65536.
298
308
  * \param[in] size_align Alignment, in pixels, of the image width and height.
309
+ * Must not exceed 65536.
299
310
  * \param[in] border A border that is padded on four sides of the image.
311
+ * Must not exceed 65536.
300
312
  *
301
313
  * \return Returns a pointer to the initialized image descriptor. If the img
302
314
  * parameter is non-null, the value of the img parameter will be
@@ -12,7 +12,7 @@
12
12
  #define AOM_AOM_AOM_INTEGER_H_
13
13
 
14
14
  /* get ptrdiff_t, size_t, wchar_t, NULL */
15
- #include <stddef.h>
15
+ #include <stddef.h> // IWYU pragma: export
16
16
 
17
17
  #if defined(_MSC_VER)
18
18
  #define AOM_FORCE_INLINE __forceinline
@@ -33,8 +33,8 @@
33
33
  #endif
34
34
  #endif // __cplusplus
35
35
 
36
- #include <stdint.h>
37
- #include <inttypes.h>
36
+ #include <stdint.h> // IWYU pragma: export
37
+ #include <inttypes.h> // IWYU pragma: export
38
38
 
39
39
  #if defined(__cplusplus)
40
40
  extern "C" {
@@ -1533,6 +1533,12 @@ enum aome_enc_control_id {
1533
1533
  */
1534
1534
  AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR = 164,
1535
1535
 
1536
+ /*!\brief Codec control to set the frame drop mode for SVC,
1537
+ * unsigned int parameter. The valid values are constants of the
1538
+ * AOM_SVC_FRAME_DROP_MODE enum: AOM_LAYER_DROP or AOM_FULL_SUPERFRAME_DROP.
1539
+ */
1540
+ AV1E_SET_SVC_FRAME_DROP_MODE = 165,
1541
+
1536
1542
  // Any new encoder control IDs should be added above.
1537
1543
  // Maximum allowed encoder control ID is 229.
1538
1544
  // No encoder control ID should be added below.
@@ -1699,6 +1705,12 @@ typedef struct aom_svc_ref_frame_comp_pred {
1699
1705
  int use_comp_pred[3]; /**<Compound reference flag. */
1700
1706
  } aom_svc_ref_frame_comp_pred_t;
1701
1707
 
1708
+ /*!brief Frame drop modes for spatial/quality layer SVC */
1709
+ typedef enum {
1710
+ AOM_LAYER_DROP, /**< Any spatial layer can drop. */
1711
+ AOM_FULL_SUPERFRAME_DROP, /**< Only full superframe can drop. */
1712
+ } AOM_SVC_FRAME_DROP_MODE;
1713
+
1702
1714
  /*!\cond */
1703
1715
  /*!\brief Encoder control function parameter type
1704
1716
  *
@@ -2178,6 +2190,9 @@ AOM_CTRL_USE_TYPE(AV1E_GET_LUMA_CDEF_STRENGTH, int *)
2178
2190
  AOM_CTRL_USE_TYPE(AV1E_SET_BITRATE_ONE_PASS_CBR, unsigned int)
2179
2191
  #define AOM_CTRL_AV1E_SET_BITRATE_ONE_PASS_CBR
2180
2192
 
2193
+ AOM_CTRL_USE_TYPE(AV1E_SET_SVC_FRAME_DROP_MODE, unsigned int)
2194
+ #define AOM_CTRL_AV1E_SET_SVC_FRAME_DROP_MODE
2195
+
2181
2196
  AOM_CTRL_USE_TYPE(AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR, int)
2182
2197
  #define AOM_CTRL_AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR
2183
2198
 
@@ -234,8 +234,11 @@ enum aom_dec_control_id {
234
234
  */
235
235
  AV1D_GET_IMG_FORMAT,
236
236
 
237
- /*!\brief Codec control function to get the size of the tile, unsigned int*
238
- * parameter
237
+ /*!\brief Codec control function to get the width and height (in pixels) of
238
+ * the tiles in a tile list, unsigned int* parameter
239
+ *
240
+ * Tile width is in the high 16 bits of the output value, and tile height is
241
+ * in the low 16 bits of the output value.
239
242
  */
240
243
  AV1D_GET_TILE_SIZE,
241
244
 
package/include/cgif.h CHANGED
@@ -13,6 +13,9 @@ extern "C" {
13
13
  #define CGIF_ATTR_NO_GLOBAL_TABLE (1uL << 2) // disable global color table (global color table is default)
14
14
  #define CGIF_ATTR_HAS_TRANSPARENCY (1uL << 3) // first entry in color table contains transparency (alpha channel)
15
15
  #define CGIF_ATTR_NO_LOOP (1uL << 4) // don't loop a GIF animation: only play it one time.
16
+
17
+ #define CGIF_GEN_KEEP_IDENT_FRAMES (1uL << 0) // keep frames that are identical to previous frame (default is to drop them)
18
+
16
19
  #define CGIF_FRAME_ATTR_USE_LOCAL_TABLE (1uL << 0) // use a local color table for a frame (local color table is not used by default)
17
20
  #define CGIF_FRAME_ATTR_HAS_ALPHA (1uL << 1) // alpha channel index provided by user (transIndex field)
18
21
  #define CGIF_FRAME_ATTR_HAS_SET_TRANS (1uL << 2) // transparency setting provided by user (transIndex field)
@@ -49,32 +49,47 @@ typedef struct _GAppLaunchContextPrivate GAppLaunchContextPrivate;
49
49
  /**
50
50
  * GAppInfoIface:
51
51
  * @g_iface: The parent interface.
52
- * @dup: Copies a #GAppInfo.
53
- * @equal: Checks two #GAppInfos for equality.
54
- * @get_id: Gets a string identifier for a #GAppInfo.
55
- * @get_name: Gets the name of the application for a #GAppInfo.
56
- * @get_description: Gets a short description for the application described by the #GAppInfo.
57
- * @get_executable: Gets the executable name for the #GAppInfo.
58
- * @get_icon: Gets the #GIcon for the #GAppInfo.
59
- * @launch: Launches an application specified by the #GAppInfo.
60
- * @supports_uris: Indicates whether the application specified supports launching URIs.
61
- * @supports_files: Indicates whether the application specified accepts filename arguments.
52
+ * @dup: Copies a [iface@Gio.AppInfo].
53
+ * @equal: Checks two [iface@Gio.AppInfo]s for equality.
54
+ * @get_id: Gets a string identifier for a [iface@Gio.AppInfo].
55
+ * @get_name: Gets the name of the application for a [iface@Gio.AppInfo].
56
+ * @get_description: Gets a short description for the application described by
57
+ * the [iface@Gio.AppInfo].
58
+ * @get_executable: Gets the executable name for the [iface@Gio.AppInfo].
59
+ * @get_icon: Gets the [iface@Gio.Icon] for the [iface@Gio.AppInfo].
60
+ * @launch: Launches an application specified by the [iface@Gio.AppInfo].
61
+ * @supports_uris: Indicates whether the application specified supports
62
+ * launching URIs.
63
+ * @supports_files: Indicates whether the application specified accepts
64
+ * filename arguments.
62
65
  * @launch_uris: Launches an application with a list of URIs.
63
- * @should_show: Returns whether an application should be shown (e.g. when getting a list of installed applications).
64
- * [FreeDesktop.Org Startup Notification Specification](http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt).
65
- * @set_as_default_for_type: Sets an application as default for a given content type.
66
- * @set_as_default_for_extension: Sets an application as default for a given file extension.
67
- * @add_supports_type: Adds to the #GAppInfo information about supported file types.
68
- * @can_remove_supports_type: Checks for support for removing supported file types from a #GAppInfo.
69
- * @remove_supports_type: Removes a supported application type from a #GAppInfo.
70
- * @can_delete: Checks if a #GAppInfo can be deleted. Since 2.20
71
- * @do_delete: Deletes a #GAppInfo. Since 2.20
72
- * @get_commandline: Gets the commandline for the #GAppInfo. Since 2.20
73
- * @get_display_name: Gets the display name for the #GAppInfo. Since 2.24
74
- * @set_as_last_used_for_type: Sets the application as the last used. See g_app_info_set_as_last_used_for_type().
75
- * @get_supported_types: Retrieves the list of content types that @app_info claims to support.
76
- * @launch_uris_async: Asynchronously launches an application with a list of URIs. (Since: 2.60)
77
- * @launch_uris_finish: Finishes an operation started with @launch_uris_async. (Since: 2.60)
66
+ * @should_show: Returns whether an application should be shown (e.g. when
67
+ * getting a list of installed applications).
68
+ * [FreeDesktop.Org Startup Notification Specification](http://standards.freedesktop.org/startup-notification-spec/startup-notification-latest.txt).
69
+ * @set_as_default_for_type: Sets an application as default for a given content
70
+ * type.
71
+ * @set_as_default_for_extension: Sets an application as default for a given
72
+ * file extension.
73
+ * @add_supports_type: Adds to the [iface@Gio.AppInfo] information about
74
+ * supported file types.
75
+ * @can_remove_supports_type: Checks for support for removing supported file
76
+ * types from a [iface@Gio.AppInfo].
77
+ * @remove_supports_type: Removes a supported application type from a
78
+ * [iface@Gio.AppInfo].
79
+ * @can_delete: Checks if a [iface@Gio.AppInfo] can be deleted. (Since 2.20)
80
+ * @do_delete: Deletes a [iface@Gio.AppInfo]. (Since 2.20)
81
+ * @get_commandline: Gets the commandline for the [iface@Gio.AppInfo].
82
+ * (Since 2.20)
83
+ * @get_display_name: Gets the display name for the [iface@Gio.AppInfo].
84
+ * (Since 2.24)
85
+ * @set_as_last_used_for_type: Sets the application as the last used. See
86
+ * [method@Gio.AppInfo.set_as_last_used_for_type].
87
+ * @get_supported_types: Retrieves the list of content types that @app_info
88
+ * claims to support.
89
+ * @launch_uris_async: Asynchronously launches an application with a list of
90
+ * URIs. (Since: 2.60)
91
+ * @launch_uris_finish: Finishes an operation started with @launch_uris_async.
92
+ * (Since: 2.60)
78
93
 
79
94
  * Application Information interface, for operating system portability.
80
95
  */
@@ -46,7 +46,7 @@ typedef struct _GAsyncResultIface GAsyncResultIface;
46
46
  * @get_source_object: Gets the source object that issued the asynchronous operation.
47
47
  * @is_tagged: Checks if a result is tagged with a particular source.
48
48
  *
49
- * Interface definition for #GAsyncResult.
49
+ * Interface definition for [iface@Gio.AsyncResult].
50
50
  **/
51
51
  struct _GAsyncResultIface
52
52
  {
@@ -84,6 +84,11 @@ GConverterResult g_converter_convert (GConverter *converter,
84
84
  GIO_AVAILABLE_IN_ALL
85
85
  void g_converter_reset (GConverter *converter);
86
86
 
87
+ GIO_AVAILABLE_IN_2_82
88
+ GBytes * g_converter_convert_bytes (GConverter *converter,
89
+ GBytes *bytes,
90
+ GError **error);
91
+
87
92
 
88
93
  G_END_DECLS
89
94
 
@@ -79,7 +79,7 @@ struct _GDBusArgInfo
79
79
  * @out_args: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusArgInfo structures or %NULL if there are no out arguments.
80
80
  * @annotations: (array zero-terminated=1): A pointer to a %NULL-terminated array of pointers to #GDBusAnnotationInfo structures or %NULL if there are no annotations.
81
81
  *
82
- * Information about a method on an D-Bus interface.
82
+ * Information about a method on a D-Bus interface.
83
83
  *
84
84
  * Since: 2.26
85
85
  */
@@ -944,6 +944,14 @@ void g_file_copy_async (GFile
944
944
  gpointer progress_callback_data,
945
945
  GAsyncReadyCallback callback,
946
946
  gpointer user_data);
947
+ GIO_AVAILABLE_IN_2_82
948
+ void g_file_copy_async_with_closures (GFile *source,
949
+ GFile *destination,
950
+ GFileCopyFlags flags,
951
+ int io_priority,
952
+ GCancellable *cancellable,
953
+ GClosure *progress_callback_closure,
954
+ GClosure *ready_callback_closure);
947
955
  GIO_AVAILABLE_IN_ALL
948
956
  gboolean g_file_copy_finish (GFile *file,
949
957
  GAsyncResult *res,
@@ -966,6 +974,14 @@ void g_file_move_async (GFile
966
974
  gpointer progress_callback_data,
967
975
  GAsyncReadyCallback callback,
968
976
  gpointer user_data);
977
+ GIO_AVAILABLE_IN_2_82
978
+ void g_file_move_async_with_closures (GFile *source,
979
+ GFile *destination,
980
+ GFileCopyFlags flags,
981
+ int io_priority,
982
+ GCancellable *cancellable,
983
+ GClosure *progress_callback_closure,
984
+ GClosure *ready_callback_closure);
969
985
  GIO_AVAILABLE_IN_2_72
970
986
  gboolean g_file_move_finish (GFile *file,
971
987
  GAsyncResult *result,
@@ -984,3 +984,37 @@
984
984
  #define GIO_AVAILABLE_ENUMERATOR_IN_2_80
985
985
  #define GIO_AVAILABLE_TYPE_IN_2_80
986
986
  #endif
987
+
988
+ #if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_82
989
+ #define GIO_DEPRECATED_IN_2_82 GIO_DEPRECATED
990
+ #define GIO_DEPRECATED_IN_2_82_FOR(f) GIO_DEPRECATED_FOR (f)
991
+ #define GIO_DEPRECATED_MACRO_IN_2_82 GLIB_DEPRECATED_MACRO
992
+ #define GIO_DEPRECATED_MACRO_IN_2_82_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
993
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_82 GLIB_DEPRECATED_ENUMERATOR
994
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_82_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
995
+ #define GIO_DEPRECATED_TYPE_IN_2_82 GLIB_DEPRECATED_TYPE
996
+ #define GIO_DEPRECATED_TYPE_IN_2_82_FOR(f) GLIB_DEPRECATED_TYPE_FOR (f)
997
+ #else
998
+ #define GIO_DEPRECATED_IN_2_82 _GIO_EXTERN
999
+ #define GIO_DEPRECATED_IN_2_82_FOR(f) _GIO_EXTERN
1000
+ #define GIO_DEPRECATED_MACRO_IN_2_82
1001
+ #define GIO_DEPRECATED_MACRO_IN_2_82_FOR(f)
1002
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_82
1003
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_82_FOR(f)
1004
+ #define GIO_DEPRECATED_TYPE_IN_2_82
1005
+ #define GIO_DEPRECATED_TYPE_IN_2_82_FOR(f)
1006
+ #endif
1007
+
1008
+ #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_82
1009
+ #define GIO_AVAILABLE_IN_2_82 GIO_UNAVAILABLE (2, 82)
1010
+ #define GIO_AVAILABLE_STATIC_INLINE_IN_2_82 GLIB_UNAVAILABLE_STATIC_INLINE (2, 82)
1011
+ #define GIO_AVAILABLE_MACRO_IN_2_82 GLIB_UNAVAILABLE_MACRO (2, 82)
1012
+ #define GIO_AVAILABLE_ENUMERATOR_IN_2_82 GLIB_UNAVAILABLE_ENUMERATOR (2, 82)
1013
+ #define GIO_AVAILABLE_TYPE_IN_2_82 GLIB_UNAVAILABLE_TYPE (2, 82)
1014
+ #else
1015
+ #define GIO_AVAILABLE_IN_2_82 _GIO_EXTERN
1016
+ #define GIO_AVAILABLE_STATIC_INLINE_IN_2_82
1017
+ #define GIO_AVAILABLE_MACRO_IN_2_82
1018
+ #define GIO_AVAILABLE_ENUMERATOR_IN_2_82
1019
+ #define GIO_AVAILABLE_TYPE_IN_2_82
1020
+ #endif
@@ -322,6 +322,14 @@ void g_settings_bind_with_mapping (GSettin
322
322
  GSettingsBindSetMapping set_mapping,
323
323
  gpointer user_data,
324
324
  GDestroyNotify destroy);
325
+ GIO_AVAILABLE_IN_2_82
326
+ void g_settings_bind_with_mapping_closures (GSettings *settings,
327
+ const char *key,
328
+ GObject *object,
329
+ const char *property,
330
+ GSettingsBindFlags flags,
331
+ GClosure *get_mapping,
332
+ GClosure *set_mapping);
325
333
  GIO_AVAILABLE_IN_ALL
326
334
  void g_settings_bind_writable (GSettings *settings,
327
335
  const gchar *key,
@@ -42,11 +42,11 @@ G_BEGIN_DECLS
42
42
  * GVfsFileLookupFunc:
43
43
  * @vfs: a #GVfs
44
44
  * @identifier: the identifier to look up a #GFile for. This can either
45
- * be an URI or a parse name as returned by g_file_get_parse_name()
45
+ * be a URI or a parse name as returned by g_file_get_parse_name()
46
46
  * @user_data: user data passed to the function
47
47
  *
48
48
  * This function type is used by g_vfs_register_uri_scheme() to make it
49
- * possible for a client to associate an URI scheme to a different #GFile
49
+ * possible for a client to associate a URI scheme to a different #GFile
50
50
  * implementation.
51
51
  *
52
52
  * The client should return a reference to the new file that has been
@@ -81,7 +81,7 @@ GQuark g_bookmark_file_error_quark (void);
81
81
  * pointed by the URI like its MIME type, the application that is registering
82
82
  * the bookmark and the icon that should be used to represent the bookmark.
83
83
  * The data is stored using the
84
- * [Desktop Bookmark Specification](http://www.gnome.org/~ebassi/bookmark-spec).
84
+ * [Desktop Bookmark Specification](https://www.freedesktop.org/wiki/Specifications/desktop-bookmark-spec/).
85
85
  *
86
86
  * The syntax of the bookmark files is described in detail inside the
87
87
  * Desktop Bookmark Specification, here is a quick summary: bookmark
@@ -118,7 +118,7 @@ struct _GIOChannel
118
118
  /* Group the flags together, immediately after partial_write_buf, to save memory */
119
119
 
120
120
  guint use_buffer : 1; /* The encoding uses the buffers */
121
- guint do_encode : 1; /* The encoding uses the GIConv coverters */
121
+ guint do_encode : 1; /* The encoding uses the GIConv converters */
122
122
  guint close_on_unref : 1; /* Close the channel on final unref */
123
123
  guint is_readable : 1; /* Cached GIOFlag */
124
124
  guint is_writeable : 1; /* ditto */
@@ -370,7 +370,7 @@ GIOChannel *g_io_channel_win32_new_messages (guint hwnd);
370
370
  #endif
371
371
 
372
372
  /* Create an IO channel for C runtime (emulated Unix-like) file
373
- * descriptors. After calling g_io_add_watch() on a IO channel
373
+ * descriptors. After calling g_io_add_watch() on an IO channel
374
374
  * returned by this function, you shouldn't call read() on the file
375
375
  * descriptor. This is because adding polling for a file descriptor is
376
376
  * implemented on Win32 by starting a thread that sits blocked in a
@@ -984,3 +984,37 @@
984
984
  #define GLIB_AVAILABLE_ENUMERATOR_IN_2_80
985
985
  #define GLIB_AVAILABLE_TYPE_IN_2_80
986
986
  #endif
987
+
988
+ #if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_82
989
+ #define GLIB_DEPRECATED_IN_2_82 GLIB_DEPRECATED
990
+ #define GLIB_DEPRECATED_IN_2_82_FOR(f) GLIB_DEPRECATED_FOR (f)
991
+ #define GLIB_DEPRECATED_MACRO_IN_2_82 GLIB_DEPRECATED_MACRO
992
+ #define GLIB_DEPRECATED_MACRO_IN_2_82_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
993
+ #define GLIB_DEPRECATED_ENUMERATOR_IN_2_82 GLIB_DEPRECATED_ENUMERATOR
994
+ #define GLIB_DEPRECATED_ENUMERATOR_IN_2_82_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
995
+ #define GLIB_DEPRECATED_TYPE_IN_2_82 GLIB_DEPRECATED_TYPE
996
+ #define GLIB_DEPRECATED_TYPE_IN_2_82_FOR(f) GLIB_DEPRECATED_TYPE_FOR (f)
997
+ #else
998
+ #define GLIB_DEPRECATED_IN_2_82 _GLIB_EXTERN
999
+ #define GLIB_DEPRECATED_IN_2_82_FOR(f) _GLIB_EXTERN
1000
+ #define GLIB_DEPRECATED_MACRO_IN_2_82
1001
+ #define GLIB_DEPRECATED_MACRO_IN_2_82_FOR(f)
1002
+ #define GLIB_DEPRECATED_ENUMERATOR_IN_2_82
1003
+ #define GLIB_DEPRECATED_ENUMERATOR_IN_2_82_FOR(f)
1004
+ #define GLIB_DEPRECATED_TYPE_IN_2_82
1005
+ #define GLIB_DEPRECATED_TYPE_IN_2_82_FOR(f)
1006
+ #endif
1007
+
1008
+ #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_82
1009
+ #define GLIB_AVAILABLE_IN_2_82 GLIB_UNAVAILABLE (2, 82)
1010
+ #define GLIB_AVAILABLE_STATIC_INLINE_IN_2_82 GLIB_UNAVAILABLE_STATIC_INLINE (2, 82)
1011
+ #define GLIB_AVAILABLE_MACRO_IN_2_82 GLIB_UNAVAILABLE_MACRO (2, 82)
1012
+ #define GLIB_AVAILABLE_ENUMERATOR_IN_2_82 GLIB_UNAVAILABLE_ENUMERATOR (2, 82)
1013
+ #define GLIB_AVAILABLE_TYPE_IN_2_82 GLIB_UNAVAILABLE_TYPE (2, 82)
1014
+ #else
1015
+ #define GLIB_AVAILABLE_IN_2_82 _GLIB_EXTERN
1016
+ #define GLIB_AVAILABLE_STATIC_INLINE_IN_2_82
1017
+ #define GLIB_AVAILABLE_MACRO_IN_2_82
1018
+ #define GLIB_AVAILABLE_ENUMERATOR_IN_2_82
1019
+ #define GLIB_AVAILABLE_TYPE_IN_2_82
1020
+ #endif
@@ -861,9 +861,10 @@
861
861
  #define G_STRINGIFY(macro_or_string) G_STRINGIFY_ARG (macro_or_string)
862
862
  #define G_STRINGIFY_ARG(contents) #contents
863
863
 
864
- #ifndef __GI_SCANNER__ /* The static assert macro really confuses the introspection parser */
865
864
  #define G_PASTE_ARGS(identifier1,identifier2) identifier1 ## identifier2
866
865
  #define G_PASTE(identifier1,identifier2) G_PASTE_ARGS (identifier1, identifier2)
866
+
867
+ #ifndef __GI_SCANNER__ /* The static assert macro really confuses the introspection parser */
867
868
  #if G_CXX_STD_CHECK_VERSION (11)
868
869
  #define G_STATIC_ASSERT(expr) static_assert (expr, "Expression evaluates to false")
869
870
  #elif (G_C_STD_CHECK_VERSION (11) || \
@@ -877,7 +878,10 @@
877
878
  #endif
878
879
  #endif /* G_CXX_STD_CHECK_VERSION (11) */
879
880
  #define G_STATIC_ASSERT_EXPR(expr) ((void) sizeof (char[(expr) ? 1 : -1]))
880
- #endif /* !__GI_SCANNER__ */
881
+ #else /* __GI_SCANNER__ */
882
+ #define G_STATIC_ASSERT(expr) static int G_PASTE (_GStaticAssertGiScannerNoop, __LINE__) G_GNUC_UNUSED
883
+ #define G_STATIC_ASSERT_EXPR(expr) static int G_PASTE (_GStaticAssertGiScannerNoop, __LINE__) G_GNUC_UNUSED
884
+ #endif /* __GI_SCANNER__ */
881
885
 
882
886
  /* Provide a string identifying the current code position */
883
887
  #if defined (__GNUC__) && (__GNUC__ < 3) && !defined (G_CXX_STD_VERSION)
@@ -1337,6 +1341,7 @@
1337
1341
  /* these macros are private; note that gstdio.h also uses _GLIB_CLEANUP */
1338
1342
  #define _GLIB_AUTOPTR_FUNC_NAME(TypeName) glib_autoptr_cleanup_##TypeName
1339
1343
  #define _GLIB_AUTOPTR_CLEAR_FUNC_NAME(TypeName) glib_autoptr_clear_##TypeName
1344
+ #define _GLIB_AUTOPTR_DESTROY_FUNC_NAME(TypeName) glib_autoptr_destroy_##TypeName
1340
1345
  #define _GLIB_AUTOPTR_TYPENAME(TypeName) TypeName##_autoptr
1341
1346
  #define _GLIB_AUTOPTR_LIST_FUNC_NAME(TypeName) glib_listautoptr_cleanup_##TypeName
1342
1347
  #define _GLIB_AUTOPTR_LIST_TYPENAME(TypeName) TypeName##_listautoptr
@@ -1356,12 +1361,14 @@
1356
1361
  { if (_ptr) (cleanup) ((ParentName *) _ptr); } \
1357
1362
  static G_GNUC_UNUSED inline void _GLIB_AUTOPTR_FUNC_NAME(TypeName) (TypeName **_ptr) \
1358
1363
  { _GLIB_AUTOPTR_CLEAR_FUNC_NAME(TypeName) (*_ptr); } \
1364
+ static G_GNUC_UNUSED inline void _GLIB_AUTOPTR_DESTROY_FUNC_NAME(TypeName) (void *_ptr) \
1365
+ { (cleanup) ((ParentName *) _ptr); } \
1359
1366
  static G_GNUC_UNUSED inline void _GLIB_AUTOPTR_LIST_FUNC_NAME(TypeName) (GList **_l) \
1360
- { g_list_free_full (*_l, (GDestroyNotify) (void(*)(void)) cleanup); } \
1367
+ { g_list_free_full (*_l, _GLIB_AUTOPTR_DESTROY_FUNC_NAME(TypeName)); } \
1361
1368
  static G_GNUC_UNUSED inline void _GLIB_AUTOPTR_SLIST_FUNC_NAME(TypeName) (GSList **_l) \
1362
- { g_slist_free_full (*_l, (GDestroyNotify) (void(*)(void)) cleanup); } \
1369
+ { g_slist_free_full (*_l, _GLIB_AUTOPTR_DESTROY_FUNC_NAME(TypeName)); } \
1363
1370
  static G_GNUC_UNUSED inline void _GLIB_AUTOPTR_QUEUE_FUNC_NAME(TypeName) (GQueue **_q) \
1364
- { if (*_q) g_queue_free_full (*_q, (GDestroyNotify) (void(*)(void)) cleanup); } \
1371
+ { if (*_q) g_queue_free_full (*_q, _GLIB_AUTOPTR_DESTROY_FUNC_NAME(TypeName)); } \
1365
1372
  G_GNUC_END_IGNORE_DEPRECATIONS
1366
1373
  #define _GLIB_DEFINE_AUTOPTR_CHAINUP(ModuleObjName, ParentName) \
1367
1374
  _GLIB_DEFINE_AUTOPTR_CLEANUP_FUNCS(ModuleObjName, ParentName, _GLIB_AUTOPTR_CLEAR_FUNC_NAME(ParentName))
@@ -301,15 +301,101 @@ struct _GSourceCallbackFuncs
301
301
  */
302
302
  typedef void (*GSourceDummyMarshal) (void);
303
303
 
304
+ /**
305
+ * GSourceFuncsPrepareFunc:
306
+ * @source: The #GSource
307
+ * @timeout_: (out) (optional): the maximum timeout (in milliseconds) which should be passed to the poll call
308
+ *
309
+ * Checks the source for readiness.
310
+ *
311
+ * Called before all the file descriptors are polled. If the
312
+ * source can determine that it is ready here (without waiting for the
313
+ * results of the poll call) it should return %TRUE. It can also return
314
+ * a @timeout_ value which should be the maximum timeout (in milliseconds)
315
+ * which should be passed to the poll call. The actual timeout used will
316
+ * be `-1` if all sources returned `-1`, or it will be the minimum of all
317
+ * the @timeout_ values returned which were greater than or equal to `0`.
318
+ * If the prepare function returns a timeout and the source also has a
319
+ * ready time set, then the lower of the two will be used.
320
+ *
321
+ * Since 2.36 this may be `NULL`, in which case the effect is as if the
322
+ * function always returns `FALSE` with a timeout of `-1`.
323
+ *
324
+ * Returns: %TRUE if the source is ready, %FALSE otherwise
325
+ *
326
+ * Since: 2.82
327
+ */
328
+ typedef gboolean (*GSourceFuncsPrepareFunc) (GSource *source,
329
+ gint *timeout_);
330
+
331
+ /**
332
+ * GSourceFuncsCheckFunc:
333
+ * @source: The #GSource
334
+ *
335
+ * Checks if the source is ready to be dispatched.
336
+ *
337
+ * Called after all the file descriptors are polled. The source
338
+ * should return %TRUE if it is ready to be dispatched. Note that some
339
+ * time may have passed since the previous prepare function was called,
340
+ * so the source should be checked again here.
341
+ *
342
+ * Since 2.36 this may be `NULL`, in which case the effect is
343
+ * as if the function always returns `FALSE`.
344
+ *
345
+ * Returns: %TRUE if ready to be dispatched, %FALSE otherwise
346
+ *
347
+ * Since: 2.82
348
+ */
349
+ typedef gboolean (*GSourceFuncsCheckFunc) (GSource *source);
350
+
351
+ /**
352
+ * GSourceFuncsDispatchFunc:
353
+ * @source: The #GSource
354
+ * @callback: (nullable): The #GSourceFunc to call
355
+ * @user_data: (nullable): data to pass to @callback
356
+ *
357
+ * Dispatches the source callback.
358
+ *
359
+ * Called to dispatch the event source, after it has returned
360
+ * `TRUE` in either its prepare or its check function, or if a ready time
361
+ * has been reached. The dispatch function receives a callback function and
362
+ * user data. The callback function may be `NULL` if the source was never
363
+ * connected to a callback using [method@GLib.Source.set_callback]. The dispatch
364
+ * function should call the callback function with @user_data and whatever
365
+ * additional parameters are needed for this type of event source. The
366
+ * return value of the dispatch function should be [const@GLib.SOURCE_REMOVE]
367
+ * if the source should be removed or [const@GLib.SOURCE_CONTINUE] to keep it.
368
+ *
369
+ * Returns: [const@GLib.SOURCE_REMOVE] if the source should be removed,
370
+ * [const@GLib.SOURCE_CONTINUE] otherwise.
371
+ *
372
+ * Since: 2.82
373
+ */
374
+ typedef gboolean (*GSourceFuncsDispatchFunc) (GSource *source,
375
+ GSourceFunc callback,
376
+ gpointer user_data);
377
+
378
+ /**
379
+ * GSourceFuncsFinalizeFunc:
380
+ * @source: The #GSource
381
+ *
382
+ * Finalizes the source.
383
+ *
384
+ * Called when the source is finalized. At this point, the source
385
+ * will have been destroyed, had its callback cleared, and have been removed
386
+ * from its [type@GLib.MainContext], but it will still have its final reference
387
+ * count, so methods can be called on it from within this function.
388
+ *
389
+ * Since: 2.82
390
+ */
391
+ typedef void (*GSourceFuncsFinalizeFunc) (GSource *source);
392
+
304
393
  struct _GSourceFuncs
305
394
  {
306
- gboolean (*prepare) (GSource *source,
307
- gint *timeout_);/* Can be NULL */
308
- gboolean (*check) (GSource *source);/* Can be NULL */
309
- gboolean (*dispatch) (GSource *source,
310
- GSourceFunc callback,
311
- gpointer user_data);
312
- void (*finalize) (GSource *source); /* Can be NULL */
395
+ GSourceFuncsPrepareFunc prepare; /* Can be NULL */
396
+ GSourceFuncsCheckFunc check; /* Can be NULL */
397
+ GSourceFuncsDispatchFunc dispatch;
398
+ GSourceFuncsFinalizeFunc finalize; /* Can be NULL */
313
399
 
314
400
  /*< private >*/
315
401
  /* For use by g_source_set_closure */