@img/sharp-libvips-dev 1.1.0-rc2 → 1.1.0-rc4

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 (112) hide show
  1. package/include/aom/aom_codec.h +18 -1
  2. package/include/aom/aom_encoder.h +2 -0
  3. package/include/aom/aom_image.h +3 -1
  4. package/include/aom/aomcx.h +52 -12
  5. package/include/cairo/cairo-version.h +1 -1
  6. package/include/expat.h +4 -2
  7. package/include/expat_config.h +3 -3
  8. package/include/ffi.h +1 -1
  9. package/include/fontconfig/fontconfig.h +22 -2
  10. package/include/gio-unix-2.0/gio/gdesktopappinfo.h +1 -1
  11. package/include/gio-unix-2.0/gio/gunixmounts.h +95 -23
  12. package/include/glib-2.0/gio/gdbusconnection.h +65 -5
  13. package/include/glib-2.0/gio/gdebugcontroller.h +1 -1
  14. package/include/glib-2.0/gio/gfile.h +4 -0
  15. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  16. package/include/glib-2.0/gio/gioenums.h +14 -3
  17. package/include/glib-2.0/gio/gioenumtypes.h +3 -3
  18. package/include/glib-2.0/gio/giotypes.h +4 -4
  19. package/include/glib-2.0/gio/gmemorymonitor.h +1 -1
  20. package/include/glib-2.0/gio/gnetworkmonitor.h +1 -1
  21. package/include/glib-2.0/gio/gpowerprofilemonitor.h +1 -1
  22. package/include/glib-2.0/gio/gproxy.h +1 -1
  23. package/include/glib-2.0/gio/gproxyresolver.h +1 -1
  24. package/include/glib-2.0/gio/gresource.h +6 -0
  25. package/include/glib-2.0/gio/gtlsbackend.h +1 -1
  26. package/include/glib-2.0/gio/gvfs.h +3 -3
  27. package/include/glib-2.0/gio/gvolumemonitor.h +1 -1
  28. package/include/glib-2.0/girepository/gi-visibility.h +34 -0
  29. package/include/glib-2.0/girepository/gicallableinfo.h +12 -0
  30. package/include/glib-2.0/girepository/gitypes.h +1 -0
  31. package/include/glib-2.0/glib/garray.h +1 -1
  32. package/include/glib-2.0/glib/gerror.h +1 -1
  33. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  34. package/include/glib-2.0/glib/gmacros.h +3 -3
  35. package/include/glib-2.0/glib/gmain.h +79 -1
  36. package/include/glib-2.0/glib/gmem.h +3 -0
  37. package/include/glib-2.0/glib/goption.h +58 -36
  38. package/include/glib-2.0/glib/gqueue.h +1 -1
  39. package/include/glib-2.0/glib/grefstring.h +4 -0
  40. package/include/glib-2.0/glib/gstdio.h +65 -0
  41. package/include/glib-2.0/glib/gstrfuncs.h +4 -0
  42. package/include/glib-2.0/glib/gtestutils.h +65 -33
  43. package/include/glib-2.0/glib/gthread.h +2 -0
  44. package/include/glib-2.0/glib/gtypes.h +1 -1
  45. package/include/glib-2.0/glib/gunicode.h +21 -5
  46. package/include/glib-2.0/glib/gvariant.h +50 -13
  47. package/include/glib-2.0/glib/gvarianttype.h +62 -46
  48. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  49. package/include/glib-2.0/glib-unix.h +21 -0
  50. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  51. package/include/glib-2.0/gobject/glib-enumtypes.h +1 -1
  52. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  53. package/include/glib-2.0/gobject/gobjectnotifyqueue.c +1 -1
  54. package/include/glib-2.0/gobject/gparam.h +4 -2
  55. package/include/glib-2.0/gobject/gsignal.h +22 -7
  56. package/include/glib-2.0/gobject/gtype.h +10 -4
  57. package/include/harfbuzz/hb-draw.h +1 -1
  58. package/include/harfbuzz/hb-face.h +15 -2
  59. package/include/harfbuzz/hb-ft.h +11 -1
  60. package/include/harfbuzz/hb-ot-shape.h +6 -0
  61. package/include/harfbuzz/hb-paint.h +1 -1
  62. package/include/harfbuzz/hb-shape.h +2 -0
  63. package/include/harfbuzz/hb-subset-serialize.h +83 -0
  64. package/include/harfbuzz/hb-subset.h +12 -0
  65. package/include/harfbuzz/hb-version.h +3 -3
  66. package/include/lcms2.h +7 -5
  67. package/include/lcms2_plugin.h +1 -1
  68. package/include/libexif/exif-byte-order.h +2 -0
  69. package/include/libexif/exif-content.h +2 -0
  70. package/include/libexif/exif-data-type.h +2 -0
  71. package/include/libexif/exif-data.h +3 -2
  72. package/include/libexif/exif-entry.h +2 -0
  73. package/include/libexif/exif-format.h +2 -0
  74. package/include/libexif/exif-ifd.h +2 -0
  75. package/include/libexif/exif-loader.h +2 -0
  76. package/include/libexif/exif-log.h +2 -0
  77. package/include/libexif/exif-mem.h +2 -0
  78. package/include/libexif/exif-mnote-data.h +2 -0
  79. package/include/libexif/exif-tag.h +2 -0
  80. package/include/libexif/exif-utils.h +2 -0
  81. package/include/libheif/heif.h +328 -26
  82. package/include/libheif/heif_cxx.h +18 -12
  83. package/include/libheif/heif_items.h +2 -2
  84. package/include/libheif/heif_properties.h +24 -4
  85. package/include/libheif/heif_version.h +2 -2
  86. package/include/libpng16/png.h +120 -12
  87. package/include/libpng16/pngconf.h +2 -3
  88. package/include/libpng16/pnglibconf.h +11 -2
  89. package/include/librsvg-2.0/librsvg/rsvg-features.h +1 -1
  90. package/include/librsvg-2.0/librsvg/rsvg-pixbuf.h +1 -1
  91. package/include/librsvg-2.0/librsvg/rsvg-version.h +2 -2
  92. package/include/librsvg-2.0/librsvg/rsvg.h +1 -1
  93. package/include/libxml2/libxml/xmlversion.h +4 -4
  94. package/include/pango-1.0/pango/pango-features.h +3 -3
  95. package/include/pango-1.0/pango/pango-font.h +31 -2
  96. package/include/pango-1.0/pango/pango-fontmap.h +4 -0
  97. package/include/pango-1.0/pango/pango-layout.h +10 -1
  98. package/include/pango-1.0/pango/pango-version-macros.h +52 -0
  99. package/include/pango-1.0/pango/pangofc-fontmap.h +6 -0
  100. package/include/pixman-1/pixman-version.h +3 -3
  101. package/include/png.h +120 -12
  102. package/include/pngconf.h +2 -3
  103. package/include/pnglibconf.h +11 -2
  104. package/include/vips/colour.h +2 -0
  105. package/include/vips/version.h +4 -4
  106. package/include/webp/encode.h +5 -4
  107. package/include/webp/sharpyuv/sharpyuv.h +14 -5
  108. package/include/webp/sharpyuv/sharpyuv_csp.h +5 -0
  109. package/include/webp/types.h +2 -2
  110. package/include/zlib.h +4 -4
  111. package/package.json +1 -1
  112. package/versions.json +19 -19
@@ -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 */
@@ -3,6 +3,6 @@
3
3
 
4
4
  #define CAIRO_VERSION_MAJOR 1
5
5
  #define CAIRO_VERSION_MINOR 18
6
- #define CAIRO_VERSION_MICRO 2
6
+ #define CAIRO_VERSION_MICRO 4
7
7
 
8
8
  #endif
package/include/expat.h CHANGED
@@ -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 {
@@ -1066,7 +1068,7 @@ XML_SetReparseDeferralEnabled(XML_Parser parser, XML_Bool enabled);
1066
1068
  */
1067
1069
  #define XML_MAJOR_VERSION 2
1068
1070
  #define XML_MINOR_VERSION 6
1069
- #define XML_MICRO_VERSION 3
1071
+ #define XML_MICRO_VERSION 4
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.6.4"
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.6.4"
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.6.4"
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
 
@@ -32,8 +32,10 @@
32
32
 
33
33
  #if defined(__GNUC__) && (__GNUC__ >= 4)
34
34
  #define FC_ATTRIBUTE_SENTINEL(x) __attribute__((__sentinel__(0)))
35
+ #define FC_ATTRIBUTE_MAY_ALIAS __attribute__((may_alias))
35
36
  #else
36
37
  #define FC_ATTRIBUTE_SENTINEL(x)
38
+ #define FC_ATTRIBUTE_MAY_ALIAS
37
39
  #endif
38
40
 
39
41
  #ifndef FcPublic
@@ -52,7 +54,7 @@ typedef int FcBool;
52
54
  */
53
55
 
54
56
  #define FC_MAJOR 2
55
- #define FC_MINOR 15
57
+ #define FC_MINOR 16
56
58
  #define FC_REVISION 0
57
59
 
58
60
  #define FC_VERSION ((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
@@ -253,7 +255,7 @@ typedef enum _FcValueBinding {
253
255
 
254
256
  typedef struct _FcPattern FcPattern;
255
257
 
256
- typedef struct _FcPatternIter {
258
+ typedef struct FC_ATTRIBUTE_MAY_ALIAS _FcPatternIter {
257
259
  void *dummy1;
258
260
  void *dummy2;
259
261
  } FcPatternIter;
@@ -337,6 +339,9 @@ typedef struct _FcStrSet FcStrSet;
337
339
 
338
340
  typedef struct _FcCache FcCache;
339
341
 
342
+ typedef void (* FcDestroyFunc) (void *data);
343
+ typedef FcBool (* FcFilterFontSetFunc) (const FcPattern *font, void *user_data);
344
+
340
345
  _FCFUNCPROTOBEGIN
341
346
 
342
347
  /* fcblanks.c */
@@ -453,6 +458,14 @@ FcPublic FcFontSet *
453
458
  FcConfigGetFonts (FcConfig *config,
454
459
  FcSetName set);
455
460
 
461
+ FcPublic FcBool
462
+ FcConfigAcceptFont (FcConfig *config,
463
+ const FcPattern *font);
464
+
465
+ FcPublic FcBool
466
+ FcConfigAcceptFilter (FcConfig *config,
467
+ const FcPattern *font);
468
+
456
469
  FcPublic FcBool
457
470
  FcConfigAppFontAddFile (FcConfig *config,
458
471
  const FcChar8 *file);
@@ -482,6 +495,12 @@ FcPublic void
482
495
  FcConfigSetSysRoot (FcConfig *config,
483
496
  const FcChar8 *sysroot);
484
497
 
498
+ FcPublic FcConfig *
499
+ FcConfigSetFontSetFilter (FcConfig *config,
500
+ FcFilterFontSetFunc filter_func,
501
+ FcDestroyFunc destroy_data_func,
502
+ void *user_data);
503
+
485
504
  FcPublic void
486
505
  FcConfigFileInfoIterInit (FcConfig *config,
487
506
  FcConfigFileInfoIter *iter);
@@ -1143,6 +1162,7 @@ FcConfigParseAndLoadFromMemory (FcConfig *config,
1143
1162
  _FCFUNCPROTOEND
1144
1163
 
1145
1164
  #undef FC_ATTRIBUTE_SENTINEL
1165
+ #undef FC_ATTRIBUTE_MAY_ALIAS
1146
1166
 
1147
1167
 
1148
1168
  #ifndef _FCINT_H_
@@ -117,7 +117,7 @@ gchar * g_desktop_app_info_get_action_name (GDeskto
117
117
  * G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME:
118
118
  *
119
119
  * Extension point for default handler to URI association. See
120
- * [Extending GIO][extending-gio].
120
+ * [Extending GIO](overview.html#extending-gio).
121
121
  *
122
122
  * Deprecated: 2.28: The #GDesktopAppInfoLookup interface is deprecated and
123
123
  * unused by GIO.
@@ -55,7 +55,14 @@ GType g_unix_mount_point_get_type (void) G_GNUC_CONST;
55
55
  /**
56
56
  * GUnixMountMonitor:
57
57
  *
58
- * Watches #GUnixMounts for changes.
58
+ * Watches for changes to the set of mount entries and mount points in the
59
+ * system.
60
+ *
61
+ * Connect to the [signal@GioUnix.MountMonitor::mounts-changed] signal to be
62
+ * notified of changes to the [struct@GioUnix.MountEntry] list.
63
+ *
64
+ * Connect to the [signal@GioUnix.MountMonitor::mountpoints-changed] signal to
65
+ * be notified of changes to the [struct@GioUnix.MountPoint] list.
59
66
  **/
60
67
  typedef struct _GUnixMountMonitor GUnixMountMonitor;
61
68
  typedef struct _GUnixMountMonitorClass GUnixMountMonitorClass;
@@ -67,43 +74,89 @@ typedef struct _GUnixMountMonitorClass GUnixMountMonitorClass;
67
74
  #define G_IS_UNIX_MOUNT_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_UNIX_MOUNT_MONITOR))
68
75
  G_DEFINE_AUTOPTR_CLEANUP_FUNC(GUnixMountMonitor, g_object_unref)
69
76
 
70
- GIO_AVAILABLE_IN_ALL
77
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_free)
71
78
  void g_unix_mount_free (GUnixMountEntry *mount_entry);
72
- GIO_AVAILABLE_IN_2_54
79
+ GIO_AVAILABLE_IN_2_84
80
+ void g_unix_mount_entry_free (GUnixMountEntry *mount_entry);
81
+
82
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_copy)
73
83
  GUnixMountEntry *g_unix_mount_copy (GUnixMountEntry *mount_entry);
84
+ GIO_AVAILABLE_IN_2_84
85
+ GUnixMountEntry *g_unix_mount_entry_copy (GUnixMountEntry *mount_entry);
86
+
74
87
  GIO_AVAILABLE_IN_ALL
75
88
  void g_unix_mount_point_free (GUnixMountPoint *mount_point);
76
89
  GIO_AVAILABLE_IN_2_54
77
90
  GUnixMountPoint *g_unix_mount_point_copy (GUnixMountPoint *mount_point);
78
- GIO_AVAILABLE_IN_ALL
91
+
92
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_compare)
79
93
  gint g_unix_mount_compare (GUnixMountEntry *mount1,
80
- GUnixMountEntry *mount2);
81
- GIO_AVAILABLE_IN_ALL
94
+ GUnixMountEntry *mount2);
95
+ GIO_AVAILABLE_IN_2_84
96
+ gint g_unix_mount_entry_compare (GUnixMountEntry *mount1,
97
+ GUnixMountEntry *mount2);
98
+
99
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_get_mount_path)
82
100
  const char * g_unix_mount_get_mount_path (GUnixMountEntry *mount_entry);
83
- GIO_AVAILABLE_IN_ALL
101
+ GIO_AVAILABLE_IN_2_84
102
+ const char * g_unix_mount_entry_get_mount_path (GUnixMountEntry *mount_entry);
103
+
104
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_get_device_path)
84
105
  const char * g_unix_mount_get_device_path (GUnixMountEntry *mount_entry);
85
- GIO_AVAILABLE_IN_2_60
106
+ GIO_AVAILABLE_IN_2_84
107
+ const char * g_unix_mount_entry_get_device_path (GUnixMountEntry *mount_entry);
108
+
109
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_get_root_path)
86
110
  const char * g_unix_mount_get_root_path (GUnixMountEntry *mount_entry);
87
- GIO_AVAILABLE_IN_ALL
111
+ GIO_AVAILABLE_IN_2_84
112
+ const char * g_unix_mount_entry_get_root_path (GUnixMountEntry *mount_entry);
113
+
114
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_get_fs_type)
88
115
  const char * g_unix_mount_get_fs_type (GUnixMountEntry *mount_entry);
89
- GIO_AVAILABLE_IN_2_58
116
+ GIO_AVAILABLE_IN_2_84
117
+ const char * g_unix_mount_entry_get_fs_type (GUnixMountEntry *mount_entry);
118
+
119
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_get_options)
90
120
  const char * g_unix_mount_get_options (GUnixMountEntry *mount_entry);
91
- GIO_AVAILABLE_IN_ALL
121
+ GIO_AVAILABLE_IN_2_84
122
+ const char * g_unix_mount_entry_get_options (GUnixMountEntry *mount_entry);
123
+
124
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_is_readonly)
92
125
  gboolean g_unix_mount_is_readonly (GUnixMountEntry *mount_entry);
93
- GIO_AVAILABLE_IN_ALL
126
+ GIO_AVAILABLE_IN_2_84
127
+ gboolean g_unix_mount_entry_is_readonly (GUnixMountEntry *mount_entry);
128
+
129
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_is_system_internal)
94
130
  gboolean g_unix_mount_is_system_internal (GUnixMountEntry *mount_entry);
95
- GIO_AVAILABLE_IN_ALL
131
+ GIO_AVAILABLE_IN_2_84
132
+ gboolean g_unix_mount_entry_is_system_internal(GUnixMountEntry *mount_entry);
133
+
134
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_guess_can_eject)
96
135
  gboolean g_unix_mount_guess_can_eject (GUnixMountEntry *mount_entry);
97
- GIO_AVAILABLE_IN_ALL
136
+ GIO_AVAILABLE_IN_2_84
137
+ gboolean g_unix_mount_entry_guess_can_eject (GUnixMountEntry *mount_entry);
138
+
139
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_guess_should_display)
98
140
  gboolean g_unix_mount_guess_should_display (GUnixMountEntry *mount_entry);
99
- GIO_AVAILABLE_IN_ALL
141
+ GIO_AVAILABLE_IN_2_84
142
+ gboolean g_unix_mount_entry_guess_should_display(GUnixMountEntry *mount_entry);
143
+
144
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_guess_name)
100
145
  char * g_unix_mount_guess_name (GUnixMountEntry *mount_entry);
101
- GIO_AVAILABLE_IN_ALL
146
+ GIO_AVAILABLE_IN_2_84
147
+ char * g_unix_mount_entry_guess_name (GUnixMountEntry *mount_entry);
148
+
149
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_guess_icon)
102
150
  GIcon * g_unix_mount_guess_icon (GUnixMountEntry *mount_entry);
103
- GIO_AVAILABLE_IN_ALL
151
+ GIO_AVAILABLE_IN_2_84
152
+ GIcon * g_unix_mount_entry_guess_icon (GUnixMountEntry *mount_entry);
153
+
154
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_guess_symbolic_icon)
104
155
  GIcon * g_unix_mount_guess_symbolic_icon (GUnixMountEntry *mount_entry);
156
+ GIO_AVAILABLE_IN_2_84
157
+ GIcon * g_unix_mount_entry_guess_symbolic_icon(GUnixMountEntry *mount_entry);
105
158
 
106
- G_DEFINE_AUTOPTR_CLEANUP_FUNC(GUnixMountEntry, g_unix_mount_free)
159
+ G_DEFINE_AUTOPTR_CLEANUP_FUNC(GUnixMountEntry, g_unix_mount_entry_free)
107
160
  G_DEFINE_AUTOPTR_CLEANUP_FUNC(GUnixMountPoint, g_unix_mount_point_free)
108
161
 
109
162
  GIO_AVAILABLE_IN_ALL
@@ -142,20 +195,39 @@ GUnixMountPoint **g_unix_mount_points_get_from_file (const char *table_p
142
195
  GIO_AVAILABLE_IN_2_66
143
196
  GUnixMountPoint *g_unix_mount_point_at (const char *mount_path,
144
197
  guint64 *time_read);
145
- GIO_AVAILABLE_IN_ALL
198
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entries_get)
146
199
  GList * g_unix_mounts_get (guint64 *time_read);
147
- GIO_AVAILABLE_IN_2_82
200
+ GIO_AVAILABLE_IN_2_84
201
+ GList * g_unix_mount_entries_get (guint64 *time_read);
202
+
203
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entries_get_from_file)
148
204
  GUnixMountEntry **g_unix_mounts_get_from_file (const char *table_path,
149
205
  uint64_t *time_read_out,
150
206
  size_t *n_entries_out);
151
- GIO_AVAILABLE_IN_ALL
207
+ GIO_AVAILABLE_IN_2_84
208
+ GUnixMountEntry **g_unix_mount_entries_get_from_file(const char *table_path,
209
+ uint64_t *time_read_out,
210
+ size_t *n_entries_out);
211
+
212
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_at)
152
213
  GUnixMountEntry *g_unix_mount_at (const char *mount_path,
153
214
  guint64 *time_read);
154
- GIO_AVAILABLE_IN_2_52
215
+ GIO_AVAILABLE_IN_2_84
216
+ GUnixMountEntry *g_unix_mount_entry_at (const char *mount_path,
217
+ guint64 *time_read);
218
+
219
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entry_for)
155
220
  GUnixMountEntry *g_unix_mount_for (const char *file_path,
156
221
  guint64 *time_read);
157
- GIO_AVAILABLE_IN_ALL
222
+ GIO_AVAILABLE_IN_2_84
223
+ GUnixMountEntry *g_unix_mount_entry_for (const char *file_path,
224
+ guint64 *time_read);
225
+
226
+ GIO_DEPRECATED_IN_2_84_FOR(g_unix_mount_entries_changed_since)
158
227
  gboolean g_unix_mounts_changed_since (guint64 time);
228
+ GIO_AVAILABLE_IN_2_84
229
+ gboolean g_unix_mount_entries_changed_since (guint64 time);
230
+
159
231
  GIO_AVAILABLE_IN_ALL
160
232
  gboolean g_unix_mount_points_changed_since (guint64 time);
161
233
 
@@ -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