@img/sharp-libvips-dev-wasm32 1.1.0-rc3 → 1.1.0-rc5

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 (132) hide show
  1. package/README.md +1 -1
  2. package/include/aom/aom_codec.h +18 -1
  3. package/include/aom/aom_encoder.h +2 -0
  4. package/include/aom/aom_image.h +3 -1
  5. package/include/aom/aomcx.h +52 -12
  6. package/include/expat.h +6 -4
  7. package/include/expat_config.h +3 -3
  8. package/include/ffi.h +1 -1
  9. package/include/glib-2.0/gio/gdbusconnection.h +65 -5
  10. package/include/glib-2.0/gio/gdebugcontroller.h +1 -1
  11. package/include/glib-2.0/gio/gfile.h +4 -0
  12. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  13. package/include/glib-2.0/gio/gioenums.h +14 -3
  14. package/include/glib-2.0/gio/gioenumtypes.h +3 -3
  15. package/include/glib-2.0/gio/giotypes.h +4 -4
  16. package/include/glib-2.0/gio/gmemorymonitor.h +1 -1
  17. package/include/glib-2.0/gio/gnetworkmonitor.h +1 -1
  18. package/include/glib-2.0/gio/gpowerprofilemonitor.h +1 -1
  19. package/include/glib-2.0/gio/gproxy.h +1 -1
  20. package/include/glib-2.0/gio/gproxyresolver.h +1 -1
  21. package/include/glib-2.0/gio/gresource.h +6 -0
  22. package/include/glib-2.0/gio/gtlsbackend.h +1 -1
  23. package/include/glib-2.0/gio/gvfs.h +3 -3
  24. package/include/glib-2.0/gio/gvolumemonitor.h +1 -1
  25. package/include/glib-2.0/glib/garray.h +1 -1
  26. package/include/glib-2.0/glib/gerror.h +1 -1
  27. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  28. package/include/glib-2.0/glib/gmacros.h +3 -3
  29. package/include/glib-2.0/glib/gmain.h +79 -1
  30. package/include/glib-2.0/glib/gmem.h +3 -0
  31. package/include/glib-2.0/glib/goption.h +58 -36
  32. package/include/glib-2.0/glib/gqueue.h +1 -1
  33. package/include/glib-2.0/glib/grefstring.h +4 -0
  34. package/include/glib-2.0/glib/gstdio.h +65 -0
  35. package/include/glib-2.0/glib/gstrfuncs.h +4 -0
  36. package/include/glib-2.0/glib/gtestutils.h +65 -33
  37. package/include/glib-2.0/glib/gthread.h +2 -0
  38. package/include/glib-2.0/glib/gtypes.h +1 -1
  39. package/include/glib-2.0/glib/gunicode.h +21 -5
  40. package/include/glib-2.0/glib/gvariant.h +50 -13
  41. package/include/glib-2.0/glib/gvarianttype.h +62 -46
  42. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  43. package/include/glib-2.0/glib-unix.h +21 -0
  44. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  45. package/include/glib-2.0/gobject/glib-enumtypes.h +1 -1
  46. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  47. package/include/glib-2.0/gobject/gobjectnotifyqueue.c +1 -1
  48. package/include/glib-2.0/gobject/gparam.h +4 -2
  49. package/include/glib-2.0/gobject/gsignal.h +22 -7
  50. package/include/glib-2.0/gobject/gtype.h +10 -4
  51. package/include/lcms2.h +7 -5
  52. package/include/lcms2_plugin.h +1 -1
  53. package/include/libexif/exif-byte-order.h +2 -0
  54. package/include/libexif/exif-content.h +2 -0
  55. package/include/libexif/exif-data-type.h +2 -0
  56. package/include/libexif/exif-data.h +3 -2
  57. package/include/libexif/exif-entry.h +2 -0
  58. package/include/libexif/exif-format.h +2 -0
  59. package/include/libexif/exif-ifd.h +2 -0
  60. package/include/libexif/exif-loader.h +2 -0
  61. package/include/libexif/exif-log.h +2 -0
  62. package/include/libexif/exif-mem.h +2 -0
  63. package/include/libexif/exif-mnote-data.h +2 -0
  64. package/include/libexif/exif-tag.h +2 -0
  65. package/include/libexif/exif-utils.h +2 -0
  66. package/include/libheif/heif.h +328 -26
  67. package/include/libheif/heif_cxx.h +18 -12
  68. package/include/libheif/heif_items.h +2 -2
  69. package/include/libheif/heif_properties.h +24 -4
  70. package/include/libheif/heif_version.h +2 -2
  71. package/include/resvg.h +13 -7
  72. package/include/vips/colour.h +2 -0
  73. package/include/vips/version.h +5 -5
  74. package/include/webp/encode.h +5 -4
  75. package/include/webp/sharpyuv/sharpyuv.h +14 -5
  76. package/include/webp/sharpyuv/sharpyuv_csp.h +5 -0
  77. package/include/webp/types.h +2 -2
  78. package/include/zlib.h +4 -4
  79. package/lib/glib-2.0/include/glibconfig.h +2 -2
  80. package/lib/libaom.a +0 -0
  81. package/lib/libcgif.a +0 -0
  82. package/lib/libexif.a +0 -0
  83. package/lib/libexif.la +1 -1
  84. package/lib/libexpat.a +0 -0
  85. package/lib/libexpat.la +4 -4
  86. package/lib/libffi.a +0 -0
  87. package/lib/libgio-2.0.a +0 -0
  88. package/lib/libglib-2.0.a +0 -0
  89. package/lib/libgmodule-2.0.a +0 -0
  90. package/lib/libgobject-2.0.a +0 -0
  91. package/lib/libgthread-2.0.a +0 -0
  92. package/lib/libheif.a +0 -0
  93. package/lib/libhwy.a +0 -0
  94. package/lib/libimagequant.a +0 -0
  95. package/lib/libjpeg.a +0 -0
  96. package/lib/liblcms2.a +0 -0
  97. package/lib/libresvg.a +0 -0
  98. package/lib/libsharpyuv.a +0 -0
  99. package/lib/libsharpyuv.la +1 -1
  100. package/lib/libspng.a +0 -0
  101. package/lib/libtiff.a +0 -0
  102. package/lib/libvips-cpp.a +0 -0
  103. package/lib/libvips.a +0 -0
  104. package/lib/libwebp.a +0 -0
  105. package/lib/libwebp.la +1 -1
  106. package/lib/libwebpdemux.a +0 -0
  107. package/lib/libwebpdemux.la +1 -1
  108. package/lib/libwebpmux.a +0 -0
  109. package/lib/libwebpmux.la +1 -1
  110. package/lib/libz.a +0 -0
  111. package/lib/pkgconfig/aom.pc +2 -2
  112. package/lib/pkgconfig/cgif.pc +1 -1
  113. package/lib/pkgconfig/expat.pc +1 -1
  114. package/lib/pkgconfig/gio-2.0.pc +1 -1
  115. package/lib/pkgconfig/glib-2.0.pc +1 -1
  116. package/lib/pkgconfig/gmodule-2.0.pc +1 -1
  117. package/lib/pkgconfig/gmodule-export-2.0.pc +1 -1
  118. package/lib/pkgconfig/gmodule-no-export-2.0.pc +1 -1
  119. package/lib/pkgconfig/gobject-2.0.pc +1 -1
  120. package/lib/pkgconfig/gthread-2.0.pc +1 -1
  121. package/lib/pkgconfig/lcms2.pc +1 -1
  122. package/lib/pkgconfig/libexif.pc +3 -1
  123. package/lib/pkgconfig/libffi.pc +1 -1
  124. package/lib/pkgconfig/libheif.pc +2 -1
  125. package/lib/pkgconfig/libsharpyuv.pc +1 -1
  126. package/lib/pkgconfig/libwebp.pc +1 -1
  127. package/lib/pkgconfig/libwebpdemux.pc +1 -1
  128. package/lib/pkgconfig/libwebpmux.pc +1 -1
  129. package/lib/pkgconfig/vips-cpp.pc +1 -1
  130. package/lib/pkgconfig/vips.pc +1 -1
  131. package/package.json +1 -1
  132. package/versions.json +13 -13
package/README.md CHANGED
@@ -26,7 +26,7 @@ used under the terms of the following licences:
26
26
  | libtiff | [libtiff License](https://gitlab.com/libtiff/libtiff/blob/master/LICENSE.md) (BSD-like) |
27
27
  | libvips | LGPLv3 |
28
28
  | libwebp | New BSD License |
29
- | resvg | MPL-2.0 License |
29
+ | resvg | MIT Licence |
30
30
  | zlib-ng | [zlib Licence](https://github.com/zlib-ng/zlib-ng/blob/develop/LICENSE.md) |
31
31
 
32
32
  Use of libraries under the terms of the LGPLv3 is via the
@@ -223,10 +223,27 @@ typedef long aom_codec_caps_t;
223
223
  * Certain codec features must be known at initialization time, to allow for
224
224
  * proper memory allocation.
225
225
  *
226
- * The available flags are specified by AOM_CODEC_USE_* defines.
226
+ * The available flags are specified by AOM_CODEC_USE_* defines. The bits are
227
+ * allocated as follows:
228
+ * 0x1 - 0x80: codec (common to decoder and encoder)
229
+ * 0x100 - 0x8000: decoder
230
+ * 0x10000 - 0x800000: encoder
227
231
  */
228
232
  typedef long aom_codec_flags_t;
229
233
 
234
+ // Experimental feature policy
235
+ //
236
+ // New features may be marked as experimental. Experimental features are not
237
+ // part of the stable API and may be modified or removed in a future release.
238
+ // Experimental features are made available only if you pass the
239
+ // AOM_CODEC_USE_EXPERIMENTAL flag to the codec init function.
240
+ //
241
+ // If you use experimental features, you must rebuild your code whenever you
242
+ // update to a new libaom release, and you must be prepared to modify your code
243
+ // when an experimental feature you use is modified or removed. If you are not
244
+ // sure, DO NOT use experimental features.
245
+ #define AOM_CODEC_USE_EXPERIMENTAL 0x1 /**< Enables experimental features */
246
+
230
247
  /*!\brief Time Stamp Type
231
248
  *
232
249
  * An integer, which when multiplied by the stream's time base, provides
@@ -78,6 +78,8 @@ extern "C" {
78
78
  */
79
79
  #define AOM_CODEC_USE_PSNR 0x10000 /**< Calculate PSNR on each frame */
80
80
  #define AOM_CODEC_USE_HIGHBITDEPTH 0x40000 /**< Use high bitdepth */
81
+ // 0x80000 was used for the experimental feature AOM_CODEC_USE_PRESET during
82
+ // libaom v3.11.0 development but was removed before the release.
81
83
 
82
84
  /*!\brief Generic fixed size buffer structure
83
85
  *
@@ -278,7 +278,9 @@ aom_image_t *aom_img_alloc(aom_image_t *img, aom_img_fmt_t fmt,
278
278
  * (2^27).
279
279
  * \param[in] align Alignment, in bytes, of each row in the image
280
280
  * (stride). Must not exceed 65536.
281
- * \param[in] img_data Storage to use for the image
281
+ * \param[in] img_data Storage to use for the image. The storage must
282
+ * outlive the returned image descriptor; it can be
283
+ * disposed of after calling aom_img_free().
282
284
  *
283
285
  * \return Returns a pointer to the initialized image descriptor. If the img
284
286
  * parameter is non-null, the value of the img parameter will be
@@ -233,10 +233,16 @@ enum aome_enc_control_id {
233
233
  * unsigned int parameter.
234
234
  *
235
235
  * This parameter controls the level at which rate-distortion optimization of
236
- * transform coefficients favours sharpness in the block.
236
+ * transform coefficients favors sharpness in the block.
237
237
  *
238
- * Valid range: 0..7. The default is 0. Values 1-7 will avoid eob and skip
239
- * block optimization and will change rdmult in favour of block sharpness.
238
+ * Valid range: 0..7. The default is 0.
239
+ *
240
+ * Values 1-7 will avoid eob and skip block optimization and will change
241
+ * rdmult in favor of block sharpness.
242
+ *
243
+ * In all-intra mode: it also sets the `loop_filter_sharpness` syntax element
244
+ * in the bitstream. Larger values increasingly reduce how much the filtering
245
+ * can change the sample values on block edges to favor perceived sharpness.
240
246
  */
241
247
  AOME_SET_SHARPNESS = AOME_SET_ENABLEAUTOALTREF + 2, // 16
242
248
 
@@ -666,6 +672,7 @@ enum aome_enc_control_id {
666
672
  * - 0 = disable
667
673
  * - 1 = enable for all frames (default)
668
674
  * - 2 = disable for non-reference frames
675
+ * - 3 = enable adaptively based on frame qindex
669
676
  */
670
677
  AV1E_SET_ENABLE_CDEF = 58,
671
678
 
@@ -725,8 +732,8 @@ enum aome_enc_control_id {
725
732
  * control sets the minimum level of flatness from which the matrices
726
733
  * are determined.
727
734
  *
728
- * By default, the encoder sets this minimum at half the available
729
- * range.
735
+ * By default, the encoder sets this minimum at level 5 (4 in all intra
736
+ * mode).
730
737
  */
731
738
  AV1E_SET_QM_MIN = 64,
732
739
 
@@ -737,8 +744,8 @@ enum aome_enc_control_id {
737
744
  * As quantisation levels increase, the matrices get flatter. This
738
745
  * control sets the maximum level of flatness possible.
739
746
  *
740
- * By default, the encoder sets this maximum at the top of the
741
- * available range.
747
+ * By default, the encoder sets this maximum at level 9 (10 in all intra
748
+ * mode)
742
749
  */
743
750
  AV1E_SET_QM_MAX = 65,
744
751
 
@@ -1127,6 +1134,8 @@ enum aome_enc_control_id {
1127
1134
  * - 2 = use modulation for local test
1128
1135
  * - 3 = use modulation for key frame perceptual quality optimization
1129
1136
  * - 4 = use modulation for user rating based perceptual quality optimization
1137
+ * - 5 = use modulation for HDR video
1138
+ * - 6 = use modulation for all intra using Variance Boost
1130
1139
  */
1131
1140
  AV1E_SET_DELTAQ_MODE = 107,
1132
1141
 
@@ -1280,8 +1289,7 @@ enum aome_enc_control_id {
1280
1289
  */
1281
1290
  AV1E_SET_SVC_PARAMS = 132,
1282
1291
 
1283
- /*!\brief Codec control function to set reference frame config:
1284
- * the ref_idx and the refresh flags for each buffer slot.
1292
+ /*!\brief Codec control function to set the reference frame config,
1285
1293
  * aom_svc_ref_frame_config_t* parameter
1286
1294
  */
1287
1295
  AV1E_SET_SVC_REF_FRAME_CONFIG = 133,
@@ -1660,6 +1668,18 @@ typedef enum {
1660
1668
  *
1661
1669
  * Changes the encoder to tune for certain types of input material.
1662
1670
  *
1671
+ * \note
1672
+ * AOM_TUNE_IQ is restricted to all intra mode (AOM_USAGE_ALL_INTRA). Setting
1673
+ * the tuning option to AOM_TUNE_IQ causes the following options to be set
1674
+ * (expressed as command-line options):
1675
+ * * --enable-qm=1
1676
+ * * --qm-min=2
1677
+ * * --qm-max=10
1678
+ * * --sharpness=7
1679
+ * * --dist-metric=qm-psnr
1680
+ * * --enable-cdef=3
1681
+ * * --enable-chroma-deltaq=1
1682
+ * * --deltaq-mode=6
1663
1683
  */
1664
1684
  typedef enum {
1665
1685
  AOM_TUNE_PSNR = 0,
@@ -1671,6 +1691,13 @@ typedef enum {
1671
1691
  AOM_TUNE_VMAF_NEG_MAX_GAIN = 7,
1672
1692
  AOM_TUNE_BUTTERAUGLI = 8,
1673
1693
  AOM_TUNE_VMAF_SALIENCY_MAP = 9,
1694
+ /*!\brief Allows detection of the presence of AOM_TUNE_IQ at compile time. */
1695
+ #define AOM_HAVE_TUNE_IQ 1
1696
+ /* Image quality (or intra quality). Increases image quality and consistency,
1697
+ * guided by the SSIMULACRA 2 metric and subjective quality checks. Shares
1698
+ * the rdmult code with AOM_TUNE_SSIM.
1699
+ */
1700
+ AOM_TUNE_IQ = 10,
1674
1701
  } aom_tune_metric;
1675
1702
 
1676
1703
  /*!\brief Distortion metric to use for RD optimization.
@@ -1721,12 +1748,25 @@ typedef struct aom_svc_params {
1721
1748
 
1722
1749
  /*!brief Parameters for setting ref frame config */
1723
1750
  typedef struct aom_svc_ref_frame_config {
1724
- // 7 references: The index 0 - 6 refers to the references:
1751
+ // Three arrays need to be set: reference[], ref_id[], refresh[].
1752
+ // reference[i]: is a boolean flag to indicate which of the 7 possible
1753
+ // references are used for prediction. Values are 0 (not used as reference)
1754
+ // or 1 (use as reference). The index 0 - 6 refers to the references:
1725
1755
  // last(0), last2(1), last3(2), golden(3), bwdref(4), altref2(5), altref(6).
1756
+ // ref_idx[i]: maps a reference to one of the 8 buffers slots, values are
1757
+ // 0 - 7. The ref_idx for a unused reference (reference[i] = 1, and not used
1758
+ // for refresh, see below) can be set to the ref_idx of the first reference
1759
+ // used (usually LAST).
1760
+ // refresh[i] is a boolean flag to indicate if a buffer is updated/refreshed
1761
+ // with the current encoded frame. Values are 0 (no refresh) or 1 (refresh).
1762
+ // The refresh is done internally by looking at the ref_idx[j], for j = 0 - 6,
1763
+ // so to refresh a buffer slot (i) a reference must be mapped to that slot
1764
+ // (i = ref_idx[j]).
1765
+ // Examples for usage (for RTC encoding) are in: examples/svc_encoder_rtc.c.
1726
1766
  int reference[7]; /**< Reference flag for each of the 7 references. */
1727
- /*! Buffer slot index for each of 7 references indexed above. */
1767
+ /*! Buffer slot index (0..7) for each of 7 references indexed above. */
1728
1768
  int ref_idx[7];
1729
- int refresh[8]; /**< Refresh flag for each of the 8 slots. */
1769
+ int refresh[8]; /**< Refresh flag for each of the 8 buffer slots. */
1730
1770
  } aom_svc_ref_frame_config_t;
1731
1771
 
1732
1772
  /*!brief Parameters for setting ref frame compound prediction */
package/include/expat.h CHANGED
@@ -11,7 +11,7 @@
11
11
  Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
12
12
  Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
13
13
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
14
- Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
14
+ Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
15
15
  Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
16
16
  Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
17
17
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
@@ -130,7 +130,9 @@ enum XML_Error {
130
130
  /* Added in 2.3.0. */
131
131
  XML_ERROR_NO_BUFFER,
132
132
  /* Added in 2.4.0. */
133
- XML_ERROR_AMPLIFICATION_LIMIT_BREACH
133
+ XML_ERROR_AMPLIFICATION_LIMIT_BREACH,
134
+ /* Added in 2.6.4. */
135
+ XML_ERROR_NOT_STARTED,
134
136
  };
135
137
 
136
138
  enum XML_Content_Type {
@@ -1065,8 +1067,8 @@ XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled);
1065
1067
  See https://semver.org
1066
1068
  */
1067
1069
  #define XML_MAJOR_VERSION 2
1068
- #define XML_MINOR_VERSION 6
1069
- #define XML_MICRO_VERSION 3
1070
+ #define XML_MINOR_VERSION 7
1071
+ #define XML_MICRO_VERSION 0
1070
1072
 
1071
1073
  #ifdef __cplusplus
1072
1074
  }
@@ -83,7 +83,7 @@
83
83
  #define PACKAGE_NAME "expat"
84
84
 
85
85
  /* Define to the full name and version of this package. */
86
- #define PACKAGE_STRING "expat 2.6.3"
86
+ #define PACKAGE_STRING "expat 2.7.0"
87
87
 
88
88
  /* Define to the one symbol short name of this package. */
89
89
  #define PACKAGE_TARNAME "expat"
@@ -92,7 +92,7 @@
92
92
  #define PACKAGE_URL ""
93
93
 
94
94
  /* Define to the version of this package. */
95
- #define PACKAGE_VERSION "2.6.3"
95
+ #define PACKAGE_VERSION "2.7.0"
96
96
 
97
97
  /* Define to 1 if all of the C90 standard headers exist (not just the ones
98
98
  required in a freestanding environment). This macro is provided for
@@ -100,7 +100,7 @@
100
100
  #define STDC_HEADERS 1
101
101
 
102
102
  /* Version number of package */
103
- #define VERSION "2.6.3"
103
+ #define VERSION "2.7.0"
104
104
 
105
105
  /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
106
106
  significant byte first (like Motorola and SPARC, unlike Intel). */
package/include/ffi.h CHANGED
@@ -1,5 +1,5 @@
1
1
  /* -----------------------------------------------------------------*-C-*-
2
- libffi 3.4.6
2
+ libffi 3.4.7
3
3
  - Copyright (c) 2011, 2014, 2019, 2021, 2022, 2024 Anthony Green
4
4
  - Copyright (c) 1996-2003, 2007, 2008 Red Hat, Inc.
5
5
 
@@ -265,9 +265,11 @@ GVariant *g_dbus_connection_call_with_unix_fd_list_sync (GDBusConnection
265
265
  /**
266
266
  * GDBusInterfaceMethodCallFunc:
267
267
  * @connection: A #GDBusConnection.
268
- * @sender: The unique bus name of the remote caller.
268
+ * @sender: (nullable): The unique bus name of the remote caller, or `NULL` if
269
+ * not specified by the caller, e.g. on peer-to-peer connections.
269
270
  * @object_path: The object path that the method was invoked on.
270
- * @interface_name: The D-Bus interface name the method was invoked on.
271
+ * @interface_name: (nullable): The D-Bus interface name the method was invoked on,
272
+ * or `NULL` if not specified by the sender.
271
273
  * @method_name: The name of the method that was invoked.
272
274
  * @parameters: A #GVariant tuple with parameters.
273
275
  * @invocation: (transfer full): A #GDBusMethodInvocation object that must be used to return a value or error.
@@ -275,6 +277,13 @@ GVariant *g_dbus_connection_call_with_unix_fd_list_sync (GDBusConnection
275
277
  *
276
278
  * The type of the @method_call function in #GDBusInterfaceVTable.
277
279
  *
280
+ * @interface_name may be `NULL` if not specified by the sender, although it’s
281
+ * encouraged for the sender to set it. If unset, and the object has only one
282
+ * method (across all interfaces) matching @method_name, that method is invoked.
283
+ * Otherwise, behaviour is implementation defined. See the
284
+ * [D-Bus specification](https://dbus.freedesktop.org/doc/dbus-specification.html#message-protocol-types-method).
285
+ * It is recommended to return [error@Gio.DBusError.UNKNOWN_METHOD].
286
+ *
278
287
  * Since: 2.26
279
288
  */
280
289
  typedef void (*GDBusInterfaceMethodCallFunc) (GDBusConnection *connection,
@@ -289,7 +298,8 @@ typedef void (*GDBusInterfaceMethodCallFunc) (GDBusConnection *connection,
289
298
  /**
290
299
  * GDBusInterfaceGetPropertyFunc:
291
300
  * @connection: A #GDBusConnection.
292
- * @sender: The unique bus name of the remote caller.
301
+ * @sender: (nullable): The unique bus name of the remote caller or %NULL if
302
+ * not specified by the caller, e.g. on peer-to-peer connections.
293
303
  * @object_path: The object path that the method was invoked on.
294
304
  * @interface_name: The D-Bus interface name for the property.
295
305
  * @property_name: The name of the property to get the value of.
@@ -315,7 +325,8 @@ typedef GVariant *(*GDBusInterfaceGetPropertyFunc) (GDBusConnection *conne
315
325
  /**
316
326
  * GDBusInterfaceSetPropertyFunc:
317
327
  * @connection: A #GDBusConnection.
318
- * @sender: The unique bus name of the remote caller.
328
+ * @sender: (nullable): The unique bus name of the remote caller or %NULL if
329
+ * not specified by the caller, e.g. on peer-to-peer connections.
319
330
  * @object_path: The object path that the method was invoked on.
320
331
  * @interface_name: The D-Bus interface name for the property.
321
332
  * @property_name: The name of the property to get the value of.
@@ -410,7 +421,7 @@ guint g_dbus_connection_register_object (GDBusConnection
410
421
  gpointer user_data,
411
422
  GDestroyNotify user_data_free_func,
412
423
  GError **error);
413
- GIO_AVAILABLE_IN_2_46
424
+ GIO_DEPRECATED_IN_2_84_FOR(g_dbus_connection_register_object_with_closures2)
414
425
  guint g_dbus_connection_register_object_with_closures (GDBusConnection *connection,
415
426
  const gchar *object_path,
416
427
  GDBusInterfaceInfo *interface_info,
@@ -418,6 +429,14 @@ guint g_dbus_connection_register_object_with_closures (GDBusConnectio
418
429
  GClosure *get_property_closure,
419
430
  GClosure *set_property_closure,
420
431
  GError **error);
432
+ GIO_AVAILABLE_IN_2_84
433
+ guint g_dbus_connection_register_object_with_closures2 (GDBusConnection *connection,
434
+ const gchar *object_path,
435
+ GDBusInterfaceInfo *interface_info,
436
+ GClosure *method_call_closure,
437
+ GClosure *get_property_closure,
438
+ GClosure *set_property_closure,
439
+ GError **error);
421
440
  GIO_AVAILABLE_IN_ALL
422
441
  gboolean g_dbus_connection_unregister_object (GDBusConnection *connection,
423
442
  guint registration_id);
@@ -592,6 +611,47 @@ GIO_AVAILABLE_IN_ALL
592
611
  void g_dbus_connection_signal_unsubscribe (GDBusConnection *connection,
593
612
  guint subscription_id);
594
613
 
614
+ /**
615
+ * g_clear_dbus_signal_subscription: (skip)
616
+ * @subscription_id_pointer: (not optional) (inout): A pointer to either a
617
+ * subscription ID obtained from [method@Gio.DBusConnection.signal_subscribe],
618
+ * or zero.
619
+ * @connection: The connection from which the subscription ID was obtained.
620
+ * This pointer may be `NULL` or invalid, if the subscription ID is zero.
621
+ *
622
+ * If @subscription_id_pointer points to a nonzero subscription ID,
623
+ * unsubscribe from that D-Bus signal subscription as if via
624
+ * [method@Gio.DBusConnection.signal_unsubscribe].
625
+ *
626
+ * Also set the value pointed to by @subscription_id_pointer to zero,
627
+ * which signifies it’s no longer a valid subscription ID.
628
+ *
629
+ * This convenience function for C code helps to ensure that each signal
630
+ * subscription is unsubscribed exactly once, similar to
631
+ * [func@GObject.clear_object] and [func@GObject.clear_signal_handler].
632
+ *
633
+ * Since: 2.84
634
+ */
635
+ GLIB_AVAILABLE_STATIC_INLINE_IN_2_84
636
+ static inline void g_clear_dbus_signal_subscription (guint *subscription_id_pointer,
637
+ GDBusConnection *connection);
638
+
639
+ GLIB_AVAILABLE_STATIC_INLINE_IN_2_84
640
+ static inline void
641
+ g_clear_dbus_signal_subscription (guint *subscription_id_pointer,
642
+ GDBusConnection *connection)
643
+ {
644
+ guint subscription_id;
645
+
646
+ /* Suppress "Not available before" warning */
647
+ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
648
+ subscription_id = g_steal_handle_id (subscription_id_pointer);
649
+ G_GNUC_END_IGNORE_DEPRECATIONS
650
+
651
+ if (subscription_id > 0)
652
+ g_dbus_connection_signal_unsubscribe (connection, subscription_id);
653
+ }
654
+
595
655
  /* ---------------------------------------------------------------------------------------------------- */
596
656
 
597
657
  /**
@@ -35,7 +35,7 @@ G_BEGIN_DECLS
35
35
  * G_DEBUG_CONTROLLER_EXTENSION_POINT_NAME:
36
36
  *
37
37
  * Extension point for debug control functionality.
38
- * See [Extending GIO][extending-gio].
38
+ * See [Extending GIO](overview.html#extending-gio).
39
39
  *
40
40
  * Since: 2.72
41
41
  */
@@ -148,6 +148,7 @@ typedef struct _GFileIface GFileIface;
148
148
  * @measure_disk_usage: Recursively measures the disk usage of @file. Since 2.38
149
149
  * @measure_disk_usage_async: Asynchronously recursively measures the disk usage of @file. Since 2.38
150
150
  * @measure_disk_usage_finish: Finishes an asynchronous recursive measurement of the disk usage of @file. Since 2.38
151
+ * @query_exists: Queries whether a file exists. Since 2.84
151
152
  *
152
153
  * An interface for writing VFS file handles.
153
154
  **/
@@ -598,6 +599,9 @@ struct _GFileIface
598
599
  guint64 *num_dirs,
599
600
  guint64 *num_files,
600
601
  GError **error);
602
+
603
+ gboolean (* query_exists) (GFile *file,
604
+ GCancellable *cancellable);
601
605
  };
602
606
 
603
607
  GIO_AVAILABLE_IN_ALL
@@ -1018,3 +1018,37 @@
1018
1018
  #define GIO_AVAILABLE_ENUMERATOR_IN_2_82
1019
1019
  #define GIO_AVAILABLE_TYPE_IN_2_82
1020
1020
  #endif
1021
+
1022
+ #if GLIB_VERSION_MIN_REQUIRED >= GLIB_VERSION_2_84
1023
+ #define GIO_DEPRECATED_IN_2_84 GIO_DEPRECATED
1024
+ #define GIO_DEPRECATED_IN_2_84_FOR(f) GIO_DEPRECATED_FOR (f)
1025
+ #define GIO_DEPRECATED_MACRO_IN_2_84 GLIB_DEPRECATED_MACRO
1026
+ #define GIO_DEPRECATED_MACRO_IN_2_84_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
1027
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_84 GLIB_DEPRECATED_ENUMERATOR
1028
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_84_FOR(f) GLIB_DEPRECATED_ENUMERATOR_FOR (f)
1029
+ #define GIO_DEPRECATED_TYPE_IN_2_84 GLIB_DEPRECATED_TYPE
1030
+ #define GIO_DEPRECATED_TYPE_IN_2_84_FOR(f) GLIB_DEPRECATED_TYPE_FOR (f)
1031
+ #else
1032
+ #define GIO_DEPRECATED_IN_2_84 _GIO_EXTERN
1033
+ #define GIO_DEPRECATED_IN_2_84_FOR(f) _GIO_EXTERN
1034
+ #define GIO_DEPRECATED_MACRO_IN_2_84
1035
+ #define GIO_DEPRECATED_MACRO_IN_2_84_FOR(f)
1036
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_84
1037
+ #define GIO_DEPRECATED_ENUMERATOR_IN_2_84_FOR(f)
1038
+ #define GIO_DEPRECATED_TYPE_IN_2_84
1039
+ #define GIO_DEPRECATED_TYPE_IN_2_84_FOR(f)
1040
+ #endif
1041
+
1042
+ #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_84
1043
+ #define GIO_AVAILABLE_IN_2_84 GIO_UNAVAILABLE (2, 84)
1044
+ #define GIO_AVAILABLE_STATIC_INLINE_IN_2_84 GLIB_UNAVAILABLE_STATIC_INLINE (2, 84)
1045
+ #define GIO_AVAILABLE_MACRO_IN_2_84 GLIB_UNAVAILABLE_MACRO (2, 84)
1046
+ #define GIO_AVAILABLE_ENUMERATOR_IN_2_84 GLIB_UNAVAILABLE_ENUMERATOR (2, 84)
1047
+ #define GIO_AVAILABLE_TYPE_IN_2_84 GLIB_UNAVAILABLE_TYPE (2, 84)
1048
+ #else
1049
+ #define GIO_AVAILABLE_IN_2_84 _GIO_EXTERN
1050
+ #define GIO_AVAILABLE_STATIC_INLINE_IN_2_84
1051
+ #define GIO_AVAILABLE_MACRO_IN_2_84
1052
+ #define GIO_AVAILABLE_ENUMERATOR_IN_2_84
1053
+ #define GIO_AVAILABLE_TYPE_IN_2_84
1054
+ #endif
@@ -1496,9 +1496,6 @@ typedef enum
1496
1496
 
1497
1497
  /**
1498
1498
  * GApplicationFlags:
1499
- * @G_APPLICATION_FLAGS_NONE: Default. Deprecated in 2.74, use
1500
- * %G_APPLICATION_DEFAULT_FLAGS instead
1501
- * @G_APPLICATION_DEFAULT_FLAGS: Default flags. Since: 2.74
1502
1499
  * @G_APPLICATION_IS_SERVICE: Run as a service. In this mode, registration
1503
1500
  * fails if the service is already running, and the application
1504
1501
  * will initially wait up to 10 seconds for an initial activation
@@ -1540,6 +1537,20 @@ typedef enum
1540
1537
  *
1541
1538
  * Since: 2.28
1542
1539
  **/
1540
+ /**
1541
+ * G_APPLICATION_FLAGS_NONE:
1542
+ *
1543
+ * Default flags.
1544
+ *
1545
+ * Deprecated: 2.74: Use [flags@Gio.ApplicationFlags.DEFAULT_FLAGS].
1546
+ **/
1547
+ /**
1548
+ * G_APPLICATION_DEFAULT_FLAGS:
1549
+ *
1550
+ * Default flags.
1551
+ *
1552
+ * Since: 2.74
1553
+ **/
1543
1554
  typedef enum /*< prefix=G_APPLICATION >*/
1544
1555
  {
1545
1556
  G_APPLICATION_FLAGS_NONE GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR(G_APPLICATION_DEFAULT_FLAGS),
@@ -30,7 +30,7 @@
30
30
 
31
31
  G_BEGIN_DECLS
32
32
 
33
- /* enumerations from "../gio/gioenums.h" */
33
+ /* enumerations from "gioenums.h" */
34
34
  GIO_AVAILABLE_IN_ALL GType g_app_info_create_flags_get_type (void) G_GNUC_CONST;
35
35
  #define G_TYPE_APP_INFO_CREATE_FLAGS (g_app_info_create_flags_get_type ())
36
36
  GIO_AVAILABLE_IN_ALL GType g_converter_flags_get_type (void) G_GNUC_CONST;
@@ -192,11 +192,11 @@ GIO_AVAILABLE_IN_ALL GType g_pollable_return_get_type (void) G_GNUC_CONST;
192
192
  GIO_AVAILABLE_IN_ALL GType g_memory_monitor_warning_level_get_type (void) G_GNUC_CONST;
193
193
  #define G_TYPE_MEMORY_MONITOR_WARNING_LEVEL (g_memory_monitor_warning_level_get_type ())
194
194
 
195
- /* enumerations from "../gio/gresolver.h" */
195
+ /* enumerations from "gresolver.h" */
196
196
  GIO_AVAILABLE_IN_ALL GType g_resolver_name_lookup_flags_get_type (void) G_GNUC_CONST;
197
197
  #define G_TYPE_RESOLVER_NAME_LOOKUP_FLAGS (g_resolver_name_lookup_flags_get_type ())
198
198
 
199
- /* enumerations from "../gio/gsettings.h" */
199
+ /* enumerations from "gsettings.h" */
200
200
  GIO_AVAILABLE_IN_ALL GType g_settings_bind_flags_get_type (void) G_GNUC_CONST;
201
201
  #define G_TYPE_SETTINGS_BIND_FLAGS (g_settings_bind_flags_get_type ())
202
202
  G_END_DECLS
@@ -177,8 +177,8 @@ typedef struct _GVolumeMonitor GVolumeMonitor;
177
177
  * Type definition for a function that will be called back when an asynchronous
178
178
  * operation within GIO has been completed. #GAsyncReadyCallback
179
179
  * callbacks from #GTask are guaranteed to be invoked in a later
180
- * iteration of the
181
- * [thread-default main context][g-main-context-push-thread-default]
180
+ * iteration of the thread-default main context
181
+ * (see [method@GLib.MainContext.push_thread_default])
182
182
  * where the #GTask was created. All other users of
183
183
  * #GAsyncReadyCallback must likewise call it asynchronously in a
184
184
  * later iteration of the main context.
@@ -532,8 +532,8 @@ typedef struct _GDBusObjectManagerServer GDBusObjectManagerServer;
532
532
  * use for an interface proxy (if @interface_name is not %NULL) or
533
533
  * object proxy (if @interface_name is %NULL).
534
534
  *
535
- * This function is called in the
536
- * [thread-default main loop][g-main-context-push-thread-default]
535
+ * This function is called in the thread-default main context
536
+ * (see [method@GLib.MainContext.push_thread_default])
537
537
  * that @manager was constructed in.
538
538
  *
539
539
  * Returns: A #GType to use for the remote object. The returned type
@@ -33,7 +33,7 @@ G_BEGIN_DECLS
33
33
  * G_MEMORY_MONITOR_EXTENSION_POINT_NAME:
34
34
  *
35
35
  * Extension point for memory usage monitoring functionality.
36
- * See [Extending GIO][extending-gio].
36
+ * See [Extending GIO](overview.html#extending-gio).
37
37
  *
38
38
  * Since: 2.64
39
39
  */
@@ -33,7 +33,7 @@ G_BEGIN_DECLS
33
33
  * G_NETWORK_MONITOR_EXTENSION_POINT_NAME:
34
34
  *
35
35
  * Extension point for network status monitoring functionality.
36
- * See [Extending GIO][extending-gio].
36
+ * See [Extending GIO](overview.html#extending-gio).
37
37
  *
38
38
  * Since: 2.30
39
39
  */
@@ -34,7 +34,7 @@ G_BEGIN_DECLS
34
34
  * G_POWER_PROFILE_MONITOR_EXTENSION_POINT_NAME:
35
35
  *
36
36
  * Extension point for power profile usage monitoring functionality.
37
- * See [Extending GIO][extending-gio].
37
+ * See [Extending GIO](overview.html#extending-gio).
38
38
  *
39
39
  * Since: 2.70
40
40
  */
@@ -42,7 +42,7 @@ G_BEGIN_DECLS
42
42
  * G_PROXY_EXTENSION_POINT_NAME:
43
43
  *
44
44
  * Extension point for proxy functionality.
45
- * See [Extending GIO][extending-gio].
45
+ * See [Extending GIO](overview.html#extending-gio).
46
46
  *
47
47
  * Since: 2.26
48
48
  */
@@ -40,7 +40,7 @@ G_BEGIN_DECLS
40
40
  * G_PROXY_RESOLVER_EXTENSION_POINT_NAME:
41
41
  *
42
42
  * Extension point for proxy resolving functionality.
43
- * See [Extending GIO][extending-gio].
43
+ * See [Extending GIO](overview.html#extending-gio).
44
44
  */
45
45
  #define G_PROXY_RESOLVER_EXTENSION_POINT_NAME "gio-proxy-resolver"
46
46
 
@@ -119,6 +119,12 @@ gboolean g_resources_get_info (const char *path,
119
119
  guint32 *flags,
120
120
  GError **error);
121
121
 
122
+ GIO_AVAILABLE_IN_2_84
123
+ gboolean g_resource_has_children (GResource *resource,
124
+ const char *path);
125
+ GIO_AVAILABLE_IN_2_84
126
+ gboolean g_resources_has_children (const char *path);
127
+
122
128
 
123
129
  GIO_AVAILABLE_IN_2_32
124
130
  void g_static_resource_init (GStaticResource *static_resource);
@@ -34,7 +34,7 @@ G_BEGIN_DECLS
34
34
  * G_TLS_BACKEND_EXTENSION_POINT_NAME:
35
35
  *
36
36
  * Extension point for TLS functionality via #GTlsBackend.
37
- * See [Extending GIO][extending-gio].
37
+ * See [Extending GIO](overview.html#extending-gio).
38
38
  */
39
39
  #define G_TLS_BACKEND_EXTENSION_POINT_NAME "gio-tls-backend"
40
40
 
@@ -43,7 +43,7 @@ G_BEGIN_DECLS
43
43
  * @vfs: a #GVfs
44
44
  * @identifier: the identifier to look up a #GFile for. This can either
45
45
  * be a URI or a parse name as returned by g_file_get_parse_name()
46
- * @user_data: user data passed to the function
46
+ * @user_data: (nullable): user data passed to the function, or %NULL
47
47
  *
48
48
  * This function type is used by g_vfs_register_uri_scheme() to make it
49
49
  * possible for a client to associate a URI scheme to a different #GFile
@@ -52,7 +52,7 @@ G_BEGIN_DECLS
52
52
  * The client should return a reference to the new file that has been
53
53
  * created for @uri, or %NULL to continue with the default implementation.
54
54
  *
55
- * Returns: (transfer full): a #GFile for @identifier.
55
+ * Returns: (nullable) (transfer full): a #GFile for @identifier.
56
56
  *
57
57
  * Since: 2.50
58
58
  */
@@ -64,7 +64,7 @@ typedef GFile * (* GVfsFileLookupFunc) (GVfs *vfs,
64
64
  * G_VFS_EXTENSION_POINT_NAME:
65
65
  *
66
66
  * Extension point for #GVfs functionality.
67
- * See [Extending GIO][extending-gio].
67
+ * See [Extending GIO](overview.html#extending-gio).
68
68
  */
69
69
  #define G_VFS_EXTENSION_POINT_NAME "gio-vfs"
70
70
 
@@ -45,7 +45,7 @@ G_BEGIN_DECLS
45
45
  * G_VOLUME_MONITOR_EXTENSION_POINT_NAME:
46
46
  *
47
47
  * Extension point for volume monitor functionality.
48
- * See [Extending GIO][extending-gio].
48
+ * See [Extending GIO](overview.html#extending-gio).
49
49
  */
50
50
  #define G_VOLUME_MONITOR_EXTENSION_POINT_NAME "gio-volume-monitor"
51
51
 
@@ -187,7 +187,7 @@ GPtrArray* g_ptr_array_new_from_null_terminated_array (gpointer *data,
187
187
  GDestroyNotify element_free_func);
188
188
  GLIB_AVAILABLE_IN_ALL
189
189
  gpointer* g_ptr_array_free (GPtrArray *array,
190
- gboolean free_seg);
190
+ gboolean free_segment);
191
191
  GLIB_AVAILABLE_IN_ALL
192
192
  GPtrArray* g_ptr_array_ref (GPtrArray *array);
193
193
  GLIB_AVAILABLE_IN_ALL
@@ -67,7 +67,7 @@ struct _GError
67
67
  * respectively, but they should receive the private data type instead
68
68
  * of #GError.
69
69
  *
70
- * See [Extended #GError Domains][gerror-extended-domains] for an example.
70
+ * See [Extended #GError Domains](error-reporting.html#extended-gerror-domains) for an example.
71
71
  *
72
72
  * Since: 2.68
73
73
  */