forked from GNOME/glib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
15862 lines (13301 loc) · 611 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Overview of changes in GLib 2.76.1, 2023-03-22
==============================================
* Fix build failures in third party C++ projects using `g_strdup()` via C++
qualified symbol lookup (#2936, work by Xi Ruoyao)
* Downgrade critical warnings from `GFileInfo` about missing attributes to debug
messages, as it was affecting too many apps; the critical warnings will be
reinstated early in the 2.78 cycle, so apps should continue to fix their
ambiguous use of `GFileInfo` API (#2948, work by Philip Withnall)
* Bugs fixed:
- #159 g_strstr_len() ignores haystack_len (Philip Withnall)
- #352 Docs for g_file_enumerator_next_files_async () are unclear about end
condition (Owen Taylor)
- #919 g_variant_dict_lookup is unclear about what happens on failure (Philip
Withnall)
- #2922 GWin32AppInfo: Missing NULL string check (Luca Bacci)
- #2936 Possible regression in 2.75.3 when used from C++ due to g_strdup
becoming a macro
- #2943 Meson fails TAP test when g_test_message is called before g_test_init
(Philip Withnall)
- #2948 gio list triggers 'GFileInfo created without …' warnings for trash,
smb and google-drive GVFS backends (Philip Withnall)
- !3241 inotify: Avoid empty root directory string
- !3315 tests: Change the time function used in the bookmark tests
- !3318 gmacros: Add GCC < 5 fallback for __always_inline__
- !3319 fuzzing: do not build tests if build_tests is false
- !3321 tests: only build messages-low-memory if RTLD_NEXT is available
- !3323 tests: Fix timeout sources in gdbus-auth and gapplication tests
- !3324 tests: Reduce number of iterations in queue test
- !3325 gdesktopappinfo: Add a missing NULL check
- !3330 tests: Check a few results in strfuncs tests
- !3338 gfileinfo: Temporarily downgrade missing attribute criticals to debugs
* Translation updates:
- French (Guillaume Bernard)
- Persian (Danial Behzadi)
- Turkish (Sabri Ünal)
Overview of changes in GLib 2.76.0, 2023-03-10
==============================================
* Fix several regressions in handling `GFileInfo` attributes (#2932, #2934,
work by Ondrej Holy and Philip Withnall)
* Bugs fixed:
- #2932 ETAG_VALUE not set in GFileInfo when requested (Philip Withnall)
- #2934 File attributes are not set when their value is FALSE/NULL (Philip
Withnall)
- !3309 gfile: Fix file size detection when copying on btrfs
- !3310 glocalfileinfo: Mark the lost+found dir as hidden again
- !3311 glocalfileinfo: Ensure that is-backup is always set
* Translation updates:
- Bulgarian (Alexander Shopov)
- Catalan (Jordi Mas i Hernandez)
- Czech (Marek Černocký)
- German (Tim Sabsch)
- Korean (Changwoo Ryu)
- Polish (Piotr Drąg)
- Russian (Aleksandr Melman)
- Turkish (Sabri Ünal)
Overview of changes in GLib 2.75.4, 2023-03-03
==============================================
* Emit a critical warning when acquiring the notification queue during GObject
finalization. A type's `finalize()` implementation should not call public
API that emits property notifications. (!3119, work by Marco Trevisan and Emmanuele Bassi)
* Bugs fixed:
- #2720 Fails to create resource.o with LLVM ld
- #2905 [MSVC] gstring.h: warning C4141: 'inline': used more than once
- #2907 g_file_info_get_name returns NULL in contradiction to docs (Philip
Withnall)
- #2913 `glib:glib / error` fails with Glibc-2.37 (Philip Withnall)
- #2915 Python tests fail on Windows when an environment variable contains
non-ASCII characters (Luca Bacci)
- #2916 gdbus: Never buffer reads during server authentication
- #2918 2.75.3: array-test fails on big-endian CPUs (Simon McVittie)
- #2919 2.75.3: g_string_append_len_inline: error: implicit conversion changes
signedness
- #2924 Use-after-free of GDBusMethodInvocation in GDBusInterfaceSkeleton
(Philip Withnall)
- !3168 GWin32AppInfo: Retrieve display name for UWP / Packaged apps
- !3273 Revert "Revert "tests: Temporarily disable socket test due to a kernel
bug""
- !3275 tests: Add a -Wsign-conversion test for gstring.h
- !3279 tests: Don’t run the GObject performance tests under valgrind
- !3280 ci: Use Meson 1.0.0 on Windows and macOS CI builds
- !3281 tests: Remove custom printerr logging from live-g-file
- !3282 spawn-test: Use an absolute path to the system sort.exe on Windows
- !3283 Make sure new file descriptors have close-on-exec flag set on them in
a race-free way
- !3284 Allow passing a `NULL` item to `g_list_store_find_with_equal_func()`
- !3288 spawn-test: Fix running on non-English Windows
- !3290 g_type_name: Fix return annotation
- !3292 Close-on-exec flag few missed places
- !3294 gio/tests/cxx.cpp: fix missing sentinel for musl
- !3295 tests: Add some missing g_thread_join() calls to onceinit test
- !3296 gdbusconnection: Explicitly destroy an idle source on cleanup
- !3299 Update the NEWS file
- !3301 GObject: Add nullable annotations
- !3304 tests: Skip assert-msg-test.py if gdb fails
- !3305 Fix a memory leak in g_strerror
* Translation updates:
- Basque (Asier Sarasua Garmendia)
- Danish (Alan Mortensen)
- Galician (Fran Dieguez)
- Georgian (Ekaterine Papava)
- German (Tim Sabsch)
- Hebrew (Yaron Shahrabani)
- Hungarian (Balázs Úr)
- Indonesian (Kukuh Syafaat)
- Lithuanian (Aurimas Černius)
- Portuguese (Hugo Carvalho)
- Serbian (Марко Костић)
- Slovenian (Matej Urbančič)
- Spanish (Daniel)
- Swedish (Anders Jonsson)
- Turkish (Sabri Ünal, Emin Tufan Çetin)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.75.3, 2023-02-13
==============================================
* Drop the implementation of GSlice, and make the API use the system `malloc()`
internally (#1079) (based on investigation work by multiple people)
* Use a thread-spawning thread to keep thread scheduler settings consistent;
fixes GThreadPool critical warnings due to failing to set scheduler settings
in some situations (#2769, work by Sebastian Dröge and others)
* GIR annotation improvements for multiple APIs (#2827, #2894, #2895, #2897,
!3198, !3234, !3236, !3238, !3245, !3266, work by multiple people)
* Optimise printing of nested maybes in `g_variant_print()` (#2862, work by Philip Withnall)
* Use `tap` test protocol within GLib, and support TAP 13/14 (!3140, work by Marco Trevisan)
* Fix a regression in glib-compile-schemas 2.75.2 causing schemas and override
files to be sorted incorrectly (!3188, spotted by John Wudrick, work by Philip Withnall)
* Support per-desktop overrides in `GSettingsAction` (!3193, work by Philip Withnall)
* Various optimisations to `GString` (!3199, work by Matthias Clasen and Marco Trevisan)
* Reduce allocations in message printing functions if there’s nothing to format (!3205, work by Marco Trevisan)
* Add inline version of `g_strdup()`, allowing the compiler to do `NULL` folding
and constant folding on `strlen()` calls (!3209, work by Marco Trevisan)
* Add a `GPathBuf` API for building and manipulating file paths (!3216, work by Emmanuele Bassi)
* Add `g_string_free_and_steal()` and use it to warn on unused results from
`g_string_free (_, FALSE)` (!3219, !3226, work by Matthias Clasen and Sergey Bugaev)
* Add `g_free_sized()` and `g_aligned_free_sized()` to mirror the upcoming
`free_sized()` function in C23; use these if porting away from `g_slice_free()`
(!3231, work by Philip Withnall)
* Fix underspecified dependencies on generated headers in `meson.build`, which
should reduce spurious build failures (!3260, work by Eli Schwartz)
* Bugs fixed:
- #1079 Investigate dropping or deprecating the GSlice allocator (Natanael
Copa)
- #2769 GThreadPool crashes with: Failed to set scheduler settings: Operation
not permitted (Sebastian Dröge)
- #2827 Callback parameters get wrong attributes in gir files
- #2862 fuzz_variant_text: Timeout in fuzz_variant_text when printing nested
maybes
- #2876 g_find_program_for_path is public ABI but not declared in a public
header (Philip Withnall)
- #2877 glib/tests/array-
test.c:1828:pointer_array_new_from_null_terminated_array_from_gstrv:
'g_ptr_array_index (gparray, 4)' should be NULL (Simon McVittie)
- #2881 Invalid read of size 4 in get_matched_substring_number (Philip
Withnall)
- #2883 g_file_set_contents fails on mingw64 with "no error" if file size >
INT_MAX (CCode)
- #2890 g_string_append() macro evaluates arguments multiple times (Marco
Trevisan (Treviño))
- #2891 Memory leak in "gio/win32/gwin32fsmonitorutils.c" (Philip Withnall)
- #2892 Memory leak in "gio/gwin32mount.c" (Philip Withnall)
- #2894 g_value_take_string: wrong ownership transfer info in GIR (Lukáš
Tyrychtr)
- #2895 g_io_channel_get_line_term: wrong GIR (Bart Jacobs)
- #2897 g_time_zone_adjust_time: GIR says gint64 but it's gint64* (Bart
Jacobs)
- #2898 g_print replaces non-ascii characters with question mark
- #2900 msys2-clang64: g_spawn_[a]sync() fails in clang builds when envp is
not NULL
- #2901 g_app_info_get_executable doesn't work well on latest Ubuntu with
Firefox installed as snap
- #2908 Crash when creating GtkTextView with G_DEBUG=gc-friendly (Marco
Trevisan (Treviño))
- #2914 Should GPathBuf split on both directions of slashes on Windows? (Simon
McVittie)
- GNOME/gimp#9094 devel: None of the extensions and plugins load in Clang
builds
- !3140 meson: Use 'tap' test protocol and support TAP 13/14
- !3184 build: Don't overwrite build variables
- !3185 Include gobject-visibility.h in glib-types.h
- !3187 tests/desktop-app-info: fix stack-use-after-scope
- !3188 glib-compile-schemas: Fix typo in comparison function
- !3189 docs: Fix return type in cmpint
- !3191 tests: Improve error message if setting max processes to 1 fails
- !3192 garray: Avoid calling memcpy with no items
- !3193 gsettings: Support per-desktop overrides in GSettingsAction
- !3196 gio/tests/file.c:Fix expectations when running as root
- !3198 Fix a couple of `closure` annotations
- !3199 Some GString optimizations
- !3203 GTask: Document issues
- !3205 gmessages: Avoid strings duplication if there's nothing to format
- !3206 tests: Add a test print to spawn-test on Windows
- !3207 tests: Fix a minor leak in the GString tests
- !3209 gstrfuncs: Add inline version of g_strdup()
- !3216 Add GPathBuf
- !3219 Add g_string_free_and_steal
- !3221 TAP: some further cleanups
- !3223 Add a few suppressions to glib.supp and fix a minor bug in
gapplication test
- !3224 gtestutils: Fix a potential NULL pointer dereference in g_test_log()
- !3225 tests: Temporarily disable socket test due to a kernel bug
- !3226 Make g_string_free (_, FALSE) warn on unused result
- !3231 gmem: Add g_free_sized() and g_aligned_free_sized()
- !3234 GMainContext: Use nullable context in docs (and in some missing code)
- !3236 g_regex_escape_string: bad GIR: utf8[] -> utf8
- !3238 Fix GIR: gunichar -> gunichar[]
- !3242 GAtomicArray: Ensure metadata does not misalign the payload
- !3243 Allow using msort_r CHERI-enabled architectures
- !3245 gio: converter: Forbid null out arguments
- !3246 tests: Fix a few minor leaks in gdbus-example-peer
- !3247 tests: Fix a minor leak in the cxx string append tests
- !3248 timezone: Fix a compiler warning
- !3249 gstring: Avoid warnings from inline functions
- !3250 ci: Temporarily only run the FreeBSD 13 CI on a schedule
- !3251 Revert "gtype: Use the system allocator on UNIX" and use g_free_sized
instead
- !3256 Remove n_preallocs field from InstanceData
- !3258 Revert "ci: Temporarily only run the FreeBSD 13 CI on a schedule"
- !3259 gmessages: use g_atomic_pointer to access handlers for
g_print()/g_printerr()
- !3260 fix underspecified dependencies on generated headers
- !3262 Add a (temporary) assertion that sizeof(gsize) == sizeof(guintptr)
- !3263 Revert "glib-init: Add more static assertions for gintptr, guintptr"
- !3265 fileutils: Make some sample code detect symlinks as intended
- !3266 Avoid some warnings from GObject-Introspection
- !3268 po: Add missing header file to POTFILES.in
* Translation updates:
- Belarusian (Vasil Pupkin)
- Galician (Fran Dieguez)
- Georgian (Ekaterine Papava)
- Hebrew (Yosef Or Boczko)
- Indonesian (Kukuh Syafaat)
- Portuguese (Hugo Carvalho)
- Russian (Aleksandr Melman)
- Turkish (Sabri Ünal, Emin Tufan Çetin)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.75.2, 2023-01-06
==============================================
* Add `g_ptr_array_sort_values()` and `g_ptr_array_sort_values_with_data()` APIs
(work by Marco Trevisan) (!3155)
* Some fixes for activation of UWP apps on Windows (work by Luca Bacci) (#2843, !3167)
* Support Markdown output from `gdbus-codegen` (work by Guido Günther) (!3171)
* Bugs fixed:
- #2871 Leak in g_find_program_for_path() (Philip Withnall)
- #2843 gtk_show_uri can't open browser on MSYS2 on Windows (Luca Bacci)
- #2857 Grammar issue in documentation glib stpcpy (Peter Bloomfield)
- !3155 garray: Add g_ptr_array_sort_values[_with_data]() wrappers
- !3162 gobject: Add a missing NULL check for the return from
lookup_type_node_I()
- !3167 GWin32AppInfo: Fixes for UWP (packaged) apps activation
- !3169 GLocalFile: Delete redundant error saving statement
- !3170 GLocalFile: add error handle for trash info file writing
- !3171 codegen: Support markdown suitable for gi-docgen
- !3173 gdesktopappinfo: Drop an unnecessary NULL check
- !3174 garray: Add some additional length assertions
- !3175 codegen: Check parameter before calling its interface method
- !3177 Various fixes for how we interact with subproject dependencies
- !3178 glocalfileinfo: Don't reset mtime tv_sec when setting tv_usec
- !3181 INSTALL.md,README.win32.md: Actualize links
* Translation updates:
- Turkish (Sabri Ünal)
Overview of changes in GLib 2.75.1, 2022-12-21
==============================================
* Add new `GFileInfo` properties for large thumbnails (work by Matthias Clasen) (#621)
* Fix missing input validation in `GDBusMenuModel` (work by Lars Uebernickel) (#861)
* Change default `g_desktop_app_info_search()` algorithm to include substring
matches (work by Alynx Zhou) (#1152)
* Various GVariant security fixes when handling untrusted data (work by
William Manley, Philip Withnall, Simon McVittie) (#2121, #2540, #2794, #2797,
#2839, #2840, #2841)
* Add support for XDG Activation protocol in `GAppLaunchContext` (work by
Ilya Fedin) (#2709)
* Return `application/x-zerosize` rather than `text/plain` as content type for
empty files (work by Philip Withnall) (#2777)
* Deprecate `-Druntime_libdir` configure option because it was unused (work by
Philip Withnall) (#2786)
* Check for snap plugs when accessing portals (work by Robert Ancell) (!3020)
* Add `GArray` and `GPtrArray` constructors to take or copy C arrays (work by
Marco Trevisan) (!3128)
* Add `GHashTable` methods to get and steal hash table keys and values as
`GPtrArray`s (work by Marco Trevisan) (!3130)
* Change the default D-Bus system bus socket address from
`/var/run/dbus/system_bus_socket` to `/run/dbus/system_bus_socket`, in line
with changes in dbus.git. This can now be overridden by passing
`-Druntime_dir=/some/path` at configure time — the default is `/run`, which
should work for all users except distributions where `/run` is not equivalent
to `/var/run`. OS distributors should check that this configured path matches
the runtime directory configured for their D-Bus daemon. (work by
Roman Stratiienko, Philip Withnall) (!3095, !3101)
* Bugs fixed:
- #621 file-info: catch thumbnail files in large directory as well (Matthias
Clasen)
- #861 insufficient input validation in GDBusMenuModel (Lars Uebernickel)
- #1152 Application search algorithm (g_desktop_app_info_search()) should use
fuzzy matching (Alynx Zhou)
- #1904 gaction: remote triggered crashes
- #2121 GVariant deserialisation does not match spec for non-normal data
(Philip Withnall, William Manley)
- #2540 Parsing serialized GVariants can blow up run-time and memory (Philip
Withnall)
- #2709 Add support for XDG_ACTIVATION_TOKEN/XDG Activation protocol in
GAppLaunchContext (Ilya Fedin)
- #2777 Return application/x-zerosize for empty file content types rather than
text/plain (Philip Withnall)
- #2786 runtime_libdir and iconv options documented and exposed but not
effective? (Philip Withnall)
- #2793 Introspection annotations for g_clear_pointer() and g_clear_fd() might
not be correct (Philip Withnall)
- #2794 GVariant offset table entry size is not checked in is_normal() (Philip
Withnall)
- #2797 g_variant_byteswap() can take a long time with some non-normal inputs
(Philip Withnall)
- #2809 g_str_equal switched to stricter API (typing) (Philip Withnall)
- #2811 Internal inotify symbols exposed in 2.75.0 ABI (Simon McVittie)
- #2812 CI failing on macOS: -Werror,-Wmissing-field-initializers (Simon
McVittie)
- #2820 g_str_equal: New macro version breaks compilation in C++ projects
(Philip Withnall)
- #2821 GObject webpage documentation is mis-formatted during generation
(Emmanuele Bassi)
- #2835 gio/gapplication test fails with test_dbus_activate: assertion failed
(n_activations == 2): (1 == 2) (Philip Withnall)
- #2836 Conditional jump on uninitialised value in spawn-singlethread (Philip
Withnall)
- #2837 Assertion failure in contexts test (Philip Withnall)
- #2839 [bisected] GVariant test regression on big-endian architectures (Simon
McVittie)
- #2840 fuzz_variant_binary_byteswap: Heap-buffer-overflow in
g_variant_serialised_get_child (Philip Withnall)
- #2841 fuzz_variant_text: Timeout in fuzz_variant_text (Philip Withnall)
- #2845 MSVC: Build failure with g_array_append_val() in C++ mode
- #2846 Follow-up from "garray: Add support adding literal values" — doesn’t
work with clang (Emmanuele Bassi)
- #2852 alpine/musl: catching signals from a subprocess triggers
GLib:ERROR:../glib/gmain.c:5569:siginfo_t_to_wait_status: code should not be
reached (Philip Withnall)
- !385 gtask: Warn if a GTask is finalised without returning
- !2479 glib/spawn: check user source_fds doesn't contain private fds
- !2728 gtype: Speed up type checking for final types
- !2764 GCancellable: Ensure it is always cancelled on connect callback
- !2886 gtestutils: Use $G_TEST_TMPDIR as temporary directory when defined
- !2895 Expose C and C++ standard versions and add macros to check them
- !2917 meson: Use gnome.mkenum_simple()
- !2992 glib/tests: Add test to check that we abort on low-memory
- !3020 portal: Check for snap plugs before accessing portals
- !3042 gdesktopappinfo: Fail early if trying to launch an invalid executable
and always use desktop Path and context $PATH
- !3064 ci: Exclude copylibs and fuzz tests from code coverage
- !3065 tests: Add some trivial tests for g_thread_init()
- !3067 tests/meson.build: do not use can_run_host_binaries()
- !3068 gio: Fix missing visibility header dependency
- !3070 type-flags test: Force G_ENABLE_DIAGNOSTIC=1 to be set
- !3073 Misc docs fixes and test improvements in GAction and
GNotificationBackend
- !3075 gmodule: Fix redeclaration of symbol
- !3076 gspawn: Ignore invalid FDs when using safe_fdwalk()
- !3077 build: Bump Meson dependency to 0.64.0
- !3078 build: Move -Wnonnull flag to meson.build
- !3079 giochannel: Clarify assertions in g_io_channel_write_chars()
- !3080 A few test improvements for scan-build
- !3081 gthreadpool: Mark an explicit leak as to be ignored
- !3083 tests: Remove a manual timeout from desktop-app-info test
- !3086 gmacros: Use C++ namespaces attribute specifier sequences for msvc
- !3088 tests: Add G_TEST_OPTION_ISOLATE_DIRS to almost all gdbus tests
- !3089 Revert dependency bump to use Meson 0.64
- !3091 Fix doc typo in g_dbus_connection_signal_subscribe
- !3092 Fix gmodule/COPYING symlink path
- !3095 gdbusaddress: Form default system dbus path using meson definitions
- !3097 garray: Add assertions to help static analysis
- !3098 gobject: Use compare and exchange full to re-read old ref value
- !3099 gsocketcontrolmessage: add nullable annotation to deserialize return
- !3100 gsimpleproxyresolver: Make explicit that a port is needed for
HTTP/HTTPS
- !3101 gdbusaddress: Use runstatedir rather than localstatedir
- !3103 gclosure: Documentation improvements around floating closures
- !3105 gsocket: use socklen_t in more places to fix build under cygwin
- !3106 gobject: Check for valid ref counting via g_return_if_fail
- !3107 gdesktopappinfo: Group search results by both categories and match
types
- !3108 gwakeuptest: Do not rely on alarm() to stop tests on timeout
- !3112 docs: Remove a stray > in the glib-mkenums man page
- !3115 ci: Don’t fail if testlog-unstable_tests.junit.xml doesn’t exist on
MSVC
- !3116 docs: Remove HACKING
- !3117 tests: fix assert-msg-test with custom gdbinit
- !3119 Improve notification queue warning
- !3120 glib/gthread-posix: Conditionally use `futex` and/or `futex_time64`
syscalls...
- !3124 More gobject performance tests
- !3127 docs: Update SECURITY to stop mentioning a deprecated mailing list
- !3128 garray: Add more G(Ptr)Array constructors to take or copy C arrays
- !3129 garray: Add support adding literal values
- !3130 ghash: Add APIs to get (and steal) hash table keys and values as
GPtrArray
- !3132 gtestutils: Check for failure to setenv() and return
- !3139 gtype: avoid "-Wcast-align" warning with optimized
G_TYPE_CHECK_INSTANCE_CAST()
- !3141 tests/slice-concurrent.c: avoid using rand() from multiple threads
- !3142 tests/gdbus-method-invocation: Fix missing g_variant_new() argument
- !3144 gspawn.c: prefer close_range() on FreeBSD if available
- !3145 tests/gvariant.c: ensure posix_memalign alignment argument is correct
- !3147 ci: Temporarily only run the FreeBSD 13 CI on a schedule
- !3148 ghash: Use unsigned types for number of nodes and occupied ones
- !3151 Revert "ci: Temporarily only run the FreeBSD 13 CI on a schedule"
- !3152 tests: Fix stall/deadlock in slice-concurrent on macOS CI
- !3156 gobject: Some GValue setting code cleanups
- !3157 gthread-posix: need to #include <errno.h>
- !3159 gmenuexporter: Fix warning of unused n_items when building with
G_DISABLE_ASSERT
* Translation updates:
- Interlingue (Olga Smirnova)
- Serbian (Мирослав Николић)
Overview of changes in GLib 2.75.0, 2022-11-10
==============================================
* Update Unicode data to version 15 (work by Marco Trevisan) (#2735)
* Fix various build failures in different situations
(work by Kjell Ahlstedt, Marco Trevisan (Treviño)) (#2740, #2758, #2759, #2766)
* Fix over-eager deprecated property warnings for construct properties
(work by Simon McVittie) (#2748)
* Fix a crash calling `g_param_value_is_valid()` on a `GParamSpecParam` (work by
Emmanuele Bassi) (#2770)
* Fix floating `GVariant` leaks with GObject properties (work by Matthias Clasen) (#2774)
* Add inline optimised version of `g_str_equal()` (work by Xavier Claessens) (#2775)
* Add inline optimised version of `g_str_has_{prefix,suffix}()` (work by Emmanuel Fleury) (#24)
* Fix `GVariant` type depths checks on text format variants (work by Philip Withnall) (#2782)
* Fix regression with int64 and double hashing functions on big-endian architectures
(work by Simon McVittie) (#2787)
* Build the API documentation only when building GLib as a shared library (work
by Emmanuele Bassi) (!2896)
* Ignore weird `/etc/localtime` configurations generated by toolbx (work by Ray Strode) (!2973)
* Avoid `EINTR` races when closing FDs in `g_spawn_*()` (work by Thomas Haller) (!2988)
* Deprecate `G_MODULE_SUFFIX` and improve `g_module_open()` to automatically find
modules better on different platforms (work by Nirbheek Chauhan) (#520, #1413)
* Soft-deprecate sized integer types in favour of C99 `stdint.h` types (work by Simon McVittie) (#1484)
* Correctly mark sshfs file systems as `G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE` (work by Philip Withnall) (#2726)
* Add `g_set_string()` function for setting strings simply (work by Christian Hergert) (#2747)
* Add support for `xdg-terminal-exec` for handling desktop applications using
`Terminal=true` (work by Max Gautier) (!2839)
* Change various configure-time defaults for cast checks and related
(work by Michael Catanzaro) (!2850, !2894)
* Set Meson’s `install_tag` on installed files (work by Xavier Claessens) (!2905)
* Add `G_TYPE_FLAG_DEPRECATED` for tagging deprecated `GType`s/`GObject`s
(work by Matthias Clasen) (!2993)
* Add `g_clear_fd()` and `g_autofd` for automatically closing FDs when exiting a
scope (work by Simon McVittie) (!3007)
* Convert GVariant Specification to reStructuredText and host it at
https://developer.gnome.org/documentation/specifications/gvariant-specification-1.0.html
(work by Philip Withnall) (!3044)
* Bugs fixed:
- #16 gspawn.c file descriptor handling (Emmanuel Fleury, Ray Strode)
- #19 Workaround dlopen(NULL, 0) brokenness
- #24 inlined g_str_has optimisations (Emmanuel Fleury)
- #333 Make GLib valgrind friendly (Marco Trevisan (Treviño))
- #520 g_module_build_path builds incorrect paths on macOS and Windows (MSVC)
(Nirbheek Chauhan)
- #1211 macros: generate uniq variable name in _G_BOOLEAN_EXPR()/G_LIKELY()
(Thomas Haller)
- #1413 Meson build defines G_MODULE_SUFFIX to `dylib` on macOS but autotools
uses `so` (Nirbheek Chauhan)
- #1484 Deprecate sized integer types in favour of C99 stdint.h (Simon
McVittie)
- #2622 GThreadedResolver incorrectly expands domain names in SRV records
(Philip Withnall)
- #2726 G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE not set for sshfs (Philip Withnall)
- #2735 Update unicode data to version 15
- #2740 gio-launch-desktop: clang compiler can't compile with commit 813ce7f0b
(Kjell Ahlstedt)
- #2742 glib:gio / file test fails after update to 2.73.3. (Marco Trevisan
(Treviño))
- #2747 Add g_set_string for simplified and correct property setters
(Christian Hergert)
- #2748 construct properties always trigger the deprecated property warning
(Simon McVittie)
- #2753 Infinite recursion on ENOMEM in g_vasprintf() (Philip Withnall)
- #2754 `glib / spawn-test` fails with non-English locale (Philip Withnall)
- #2758 gmessages.c compile failure with -Werror=unused-result (Marco Trevisan
(Treviño))
- #2759 gosxcontenttype.m compile failure with -Werror=declaration-after-
statement (Marco Trevisan (Treviño))
- #2766 glocalfileinfo.c compile failure when utimensat() not available (=
MacOS)
- #2767 GFileInfo fails to find x-large and xx-large thumbnail paths (Marco
Trevisan (Treviño))
- #2770 Random crashes with GLib 2.74.0 (Emmanuele Bassi)
- #2774 Floating GVariant leaks since 2.73.1 in g_object_set() (Matthias
Clasen)
- #2775 Add an inline version of g_str_equal (Xavier Claessens)
- #2782 GVariant type depth not checked on typedecls in text format variants
(Philip Withnall)
- #2783 Enable no-interrupt close() on macOS
- #2784 Remove workaround to avoid false-positive -Werror=nonnull in
g_str_has_*() macro versions
- #2785 Invalid FD assertion in g_close() triggers test failures on macOS (Ray
Strode)
- #2787 new int64, double hash functions always hash to 0 on big-endian (Simon
McVittie)
- #2791 function name typo in comment explaining the private struct memory
layout (gtype.c) (sunce)
- #2795 [regression] gnome-keyring-daemon uses 100% CPU with glib-2.74.1 (Ray
Strode)
- #2796 _g_clear_fd_ignore_error() breaks with GLIB_VERSION_MAX_ALLOWED (Simon
McVittie)
- #2798 msys2-clang64 fails to compile cxx tests on versions < 11 (Marco
Trevisan (Treviño))
- #2799 Wrong GTask tag on error return path in
g_proxy_resolver_lookup_async() (Michael Catanzaro)
- #2800 fileutils test regression on vs2017-x64 builds:
appcrt\lowio\commit.cpp(19) : Assertion failed: (_osfile(fh) & FOPEN)
- #2802 Remove G_OS_DARWIN in favour of platform-specific defines (Philip
Withnall)
- #2805 g_task_set_name() should not use g_task_set_static_name() unless
permitted by GLIB_VERSION_MAX_ALLOWED (Michael Catanzaro)
- #2807 ../glib/gstrfuncs.h:186:41: error: argument 1 null where non-null
expected [-Werror=nonnull] (Ray Strode)
- !2799 Use the system allocator on UNIX when creating GTypeInstances
- !2839 Add support for xdg-terminal-exec for handling desktop applications
using 'Terminal=true'
- !2848 giomodule: Automatically detect modules on macOS
- !2850 Automatically disable cast checks when building with optimization
- !2852 Replace most GObject warnings with criticals
- !2857 glib-mkenums: Specify output encoding as UTF-8 explicitly for non-
English locale
- !2864 gatomic: fix the atomic compare_and_exchange macros on older C++
standard versions
- !2866 tests: skip g-file-info test if atime unsupported
- !2867 tests: skip shared libs if default_library=static
- !2869 task: Don't overwrite source names
- !2880 gbacktrace: Don't truncate gdb output
- !2884 tests/desktop-app-info: Add tests to verify if launching with terminal
works
- !2885 tests/desktop-app-info: Use unique temporary paths for action files
- !2889 Run tests with G_ENABLE_DIAGNOSTIC=1
- !2892 tests/unix-streams: Free the cancelled error on cancelled cancellable
- !2894 Disable cast checks in plain builds
- !2896 Build API docs only with shared libraries
- !2899 gio: make g_task_get_cancellable return value (nullable)
- !2901 glocalfileoutputstream: Do not double-close an fd on unlink error
- !2903 docs: Fix markup error in code blocks for "DEPRECATED" macros
- !2904 tests: Only run g_error_new_valist() programmer error test on glibc
- !2905 meson: Set install_tag remaining installed files
- !2907 gthread-win32: Fix conversion error from pointer to integer
- !2911 glocalfileinfo: In set_mtime_atime(), don't use utimensat() if it's
not available
- !2913 gregex: Use pcre2 error messages if we don't provide a specific one
- !2915 Consider the GLogField.length of "MESSAGE"/"GLIB_DOMAIN" fields in
g_log_writer_format_fields()
- !2916 Update version in the docs to 2.74.1 for the fixed handling of...
- !2920 gregex: Allow G_REGEX_JAVASCRIPT_COMPAT in compile mask
- !2922 ci: Conform to Python's coding style
- !2924 Optimize the implementation of `g_double_hash`
- !2928 build: Let Meson figure out Python installation
- !2931 gdatetime: add missing g_return_() check in g_date_time_format_iso8601
- !2933 Fix style warning in gvariant.c
- !2936 Fix symbol visibility macros on Windows
- !2937 gicon: Add introspection for to_tokens / from_tokens vfunc's
- !2938 gdatetime: add NULL guard in g_date_time_new_now()
- !2939 gobject/tests/param: Add unit test for handling invalid NULL param
spec
- !2942 gbookmarkfile: Add copy function and define it as boxed type for
introspection
- !2945 gmessages: Add missing trailing newline in fallback log handler
- !2946 tests: Check the return value of fwrite() in a test
- !2947 gspawn: avoid race due to retry with EINTR on close()
- !2948 ghash: document g_hash_table_steal_extended() behavior for sets
- !2949 doc: Correctly annotate g_async_queue_push()
- !2951 meson: Don't explicitly disable mixed declarations and statements
- !2952 Various win32 test fixes
- !2953 build: Post-release version bump to 2.75.0
- !2954 tools: Fix code style warnings in gen-visibility-macros.py
- !2955 gtimezone: Reject weird /etc/localtime configurations
- !2956 gstrfuncs: Fix a compiler warning in g_strerror()
- !2957 Fix include order of glib-visibility.h
- !2959 Some leaks fixes
- !2961 tests: Remove an unnecessary sleep from desktop-app-info test
- !2963 tests: Fix race condition on cancellation in unix-streams test
- !2964 gstdio: fail assertion in g_close() for invalid file descriptor
(EBADF)
- !2965 ghash: comment g_hash_table_steal_extended() about not destroying
key/value
- !2967 Fix build when G_DISABLE_CAST_CHECKS is defined to empty string
- !2968 tests: Fix minor race in desktop-app-info terminals test
- !2969 tests/desktop-app-info: Make sure scripts writes to the right end of
the pipe
- !2970 Fix GIOModule regression from !2959
- !2972 tests: Temporarily disable desktop-app-info terminal test on FreeBSD
- !2976 Fix a couple of minor Coverity issues
- !2977 gstdio: Temporarily disable g_close() warning on macOS
- !2978 A couple of test fixes on OS X
- !2979 gtask: Use unsigned bit-field struct values to avoid warnings
- !2981 meson: Define G_OS_DARWIN when compiling under OSX or iOS
- !2984 tests: Fix code style in Python files to satisfy black and flake8
- !2985 ci: Do not store docs artifacts
- !2987 meson, ci: Support tests that can fail under certain conditions
- !2990 gio/tests/g-file-info: don't assume million-in-one events don't happen
- !2991 glib, gmodule, gobject: Add generated headers to the lib dependency
- !2993 Add G_TYPE_FLAG_DEPRECATED
- !2997 docs: Mention platform-specific predefined macros
- !2999 Soft-deprecate G_VA_COPY in favour of va_copy
- !3000 docs: Stop claiming that gsize is wide enough to hold a pointer
- !3001 Improve documentation and static assertions around g(s)size,
g(u)intptr
- !3002 docs: Soft-deprecate G_STRUCT_OFFSET in favour of offsetof
- !3003 docs: Soft-deprecate types that are just aliases for a standard C type
- !3004 build: Mark the g-file-info test as succeeding
- !3005 Fix sandbox escape in GDBusServer
- !3007 gstdio: Add g_clear_fd() and g_autofd
- !3008 gio/gdesktopappinfo: Free the wrapped argv array on launch failure
- !3009 gtimezone: Fix symlink checks on relative link targets
- !3011 meson: Cleanup and fix include files paths, using base path without
repetitions
- !3012 meson: Handle various build system FIXME's
- !3013 tests: Fix few new clang warnings
- !3015 test/meson: Add tests dependencies on built programs, libraries and
modules
- !3018 Install gversionmacros.h in the right place
- !3019 ci: Fix check for missing install tag
- !3021 Add kgx (gnome console) to known terminals lists
- !3022 Fix coding style issue in .gitlab-ci/check-missing-install-tag.py
- !3023 ci: Move shellcheck/black/flake8 checks to a new CI job which can fail
- !3025 fuzzing: Add a new fuzz test for g_variant_byteswap()
- !3027 gstdio: Preserve errno in g_autofd, document async-signal safety
- !3033 glib/gmacros: Always define NULL as nullptr in C++11 and newer
- !3034 ci: Open issues when scheduled pipelines fail
- !3035 portal: Fix broken header guard
- !3037 gio: Create a sandbox checking function
- !3040 gspawn: Provide less brute force fdwalk implementation on macOS
- !3043 glib-mkenums: feature use of previous symbols in evaluation
- !3044 docs: Convert GVariant Specification to reStructuredText
- !3048 docs: Add licensing/copyright data to GVariant specification and fix
various formatting issues
- !3049 Add a SPDX LicenseRef for the license historically used for tests
- !3050 tests: Shorten internal codegen test timeout
- !3051 ci: Add a CI check for REUSE-compliant licensing/copyright headers
- !3055 fileutils test: Use no-op invalid-parameter handler when exercising
EBADF
- !3058 ci: Build with -Wnonnull
- !3060 fuzzing: Add a fuzz test for g_utf8_validate()
- !3062 tests: Fix a small leak in the GVariant tests and some minor
documentation typos
* Translation updates:
- Abkhazian (Nart Tlisha)
- Dutch (Nathan Follens)
- Friulian (Fabio Tomat)
- German (Christian Kirbach)
- Hebrew (Yaron Shahrabani)
- Kazakh (Baurzhan Muftakhidinov)
- Occitan (post 1500) (Quentin PAGÈS)
Overview of changes in GLib 2.74.0, 2022-09-17
==============================================
* Use EPOLL_CLOEXEC by default (Colin Walters)
* Fixed various regression on GRegex as per the PCRE2 porting (Marco Trevisan)
* Fixed various memory leaks (Sebastian Keller, Marco Trevisan)
* Bugs fixed:
- GNOME/gtksourceview#278 Failed to load html.lang after GLib switched to PCRE2
(Marco Trevisan (Treviño))
- GNOME/gtksourceview#283 GRegex-on-PCRE2 regressions (Marco Trevisan)
- #2688 Follow-up from "replace pcre1 with pcre2" (Marco Trevisan (Treviño))
- #2713 static_assert is undefined in C99 (wen Rafferty)
- #2719 GParamSpec constructors should have nullable annotation on nick/blurb
(Andy Holmes)
- #2729 GRegex/GMatchInfo related crashes after upgrade to 2.73.2 (Marco
Trevisan)
- #2733 gio: GVariantBuilder builder leaked in g_document_portal_add_documents
when URI list is empty (Sebastian Keller)
- #2737 gio mount coredumps on prompt exit since 2.73 (Marco Trevisan)
- #2741 Memory errors on GRegex (Marco Trevisan (Treviño))
- GNOME/gtk#4400 gtk_show_uri can't open browser on MSYS2 on Windows (Luca
Bacci)
- !2820 ci: Expose the coverage report and docs as links in the MR's (Marco)
- !2855 gtlscertificate: Update reference to G_TLS_CERTIFICATE_NO_FLAGS
- !2861 mem: Document OOM behavior for allocations (Matthias Clasen)
- !2868 gio-unix: Use EPOLL_CLOEXEC by default (Colin Walters)
- !2873 Fix array-bounds compiler warnings with GCC 12 (Emmanuele Bassi)
- !2874 tests, GDesktopAppInfo: Fix various GVariant leaks (Marco Trevisan)
- !2875 g_strsplit: Use a pre-allocated GArray when max_tokens is provided
(Marco Trevisan)
- !2876 GActionGroup: Fix ownership transfer annotation for query_action()
(Andy Holmes)
- !2879 gioenumtypes: Only define GLIB_DISABLE_DEPRECATION_WARNINGS if needed
(Marco Trevisan)
- !2881 GWin32AppInfo: Add missing g_spawn_close_pid (Luca Bacci)
- !2882 meson: Set install_tag on all tools (Xavier Claessens)
- !2883 ci: Improve style check script (Matthias Clasen)
- !2900 docs: Improve wording in documentation of g_unix_signal_source_new()
(Tom Levy)
* Translation updates:
- Abkhazian (Nart Tlisha)
- Basque (Asier Sarasua Garmendia)
- Bulgarian (Alexander Shopov)
- Catalan (Jordi Mas)
- Chinese (China) (Luming Zh, Boyuan Yang)
- Croatian (Goran Vidović)
- Czech (Marek Černocký)
- Danish (Alan Mortensen)
- Finnish (Jiri Grönroos)
- French (Claude Paroz)
- Galician (Fran Dieguez)
- Hungarian (Balázs Úr)
- Indonesian (Kukuh Syafaat)
- Korean (Changwoo Ryu)
- Lithuanian (Aurimas Černius)
- Persian (Danial Behzadi)
- Polish (Piotr Drąg)
- Portuguese (Hugo Carvalho)
- Portuguese (Brazil) (Leônidas Araújo)
- Russian (Aleksandr Melman)
- Slovenian (Matej Urbančič)
- Spanish (Daniel Mustieles)
- Swedish (Luna Jernberg)
- Turkish (Emin Tufan Çetin)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.73.3, 2022-08-05
==============================================
* Revitalize G_REGEX_OPTIMIZE flag and use it to enable PCRE JIT compiler (work
by Aleksei Rybalkin) (!2817)
* Fix some regressions due to the PCRE2 port (work
by Aleksei Rybalkin, Mamoru TASAKA and Marco Trevisan) (!2814, !2827, #2694,
#2699, #2700)
* Fix a pidfd leak that was introduced in the previous release (work by
Christian Hergert) (#2708)
* Support compilation without a C++ toolchain (work by James Hilliard) (!2822)
* GDBus: Use namespace-friendly protocol for Linux message buses, and optionally
other connections (work by Simon McVittie) (!2832)
* Fix potential races in multi-threaded signal connections handling (work by
Marco Trevisan) (!2823)
* Add back gio-launch-desktop to redirect stdout/stderr of launched
GDesktopAppInfo's to the journal with proper parent (work by Simon McVittie)
(!2818, !2819, #2682)
* Executables that are invoked when installing other software, typically
from packaging system triggers, can now be installed into
architecture-dependent locations. Unix OS distributors who install
GLib for more than one architecture in parallel (multiarch or multilib
installations) should consider building with -Dmultiarch=true, installing
the bin/glib-compile-schemas and bin/gio-querymodules symbolic links in
packages for the primary architecture, and omitting those symlinks from
packages for secondary architectures. (work by Simon McVittie) (!2818)
* Some enumerators introduced in previous releases have been changed, for better
introspection results:
- G_MARKUP_PARSE_FLAGS_NONE renamed to G_MARKUP_DEFAULT_FLAGS
- G_TLS_CERTIFICATE_FLAGS_NONE renamed to G_TLS_CERTIFICATE_NO_FLAGS
- G_APPLICATION_FLAGS_NONE was deprecated, use G_APPLICATION_DEFAULT_FLAGS now
(work by Emmanuele Bassi) (!2835)
* gfileinfo: Implement xattr attribute removal (work by madmurphy) (#1187)
* Add support to --delete option to gio set, to unset a file attribute (work by
codeboybebop) (#2588)
* Improve default value of glib_debug option: G_ENABLE_DEBUG will be defined
only if using `--buildtype=debug` or enabled via `-Dglib_debug`, but it
won't ever be set if an optimized build is requested (specifically if the
optimization level is not `0` or `g`) as it may be the case when using
`--buildtype=debugoptimized` (work by Michael Catanzaro) (!2851)
* Probably the first revision of any GNOME module ever released from Cuba :)
* Bugs fixed:
- #566 support using the PCRE JIT
- #1187 xattr add possibility to remove an extended attribute
- #2509 g_spawn_*() is not thread-safe on Windows when an environment table is
provided
- #2542 Flatten line breaks in filenames printed by gio-tool
- #2588 gio-tool: -d option to delete attribute
- #2682 Launching a GDesktopAppInfo "blames" parent process for its output
- #2692 2.73.2: build failure on musl >= 1.2.0
- #2694 Recent GRegex changes break vala-language-server compilation
- #2699 g_regex_match_all fails on s390x with Fedora glib2-2.73.2-4.fc37
- #2700 g_regex_match fails on multiple archs (including x86_64) with Fedora
- #2703 Fix GCancellable tests for Windows 64bit
glib2-2.73.2-4.fc37
- #2705 GResourceFile crashes on `g_file_set_display_name()`
- #2708 pidfd leak causes processes to run out of file-descriptors
- !2299 GWin32AppInfo: Fix PID reporting in launched signal
- !2759 Use atomic exchange operations more
- !2812 ci: Setup submodules and subprojects before building on dist
- !2813 Add missing extension point register for various settings backends
- !2814 gregex: use %s format specifier for localized error message
- !2815 giomodule: Use g_once_init_enter/leave to register extensions and load dirs
- !2818 gio: Optionally install trigger executables to architecture-specific paths
- !2822 meson: fix build without cpp toolchain
- !2823 gsignal: Perform signal unlocked handlers block, unblock and disconnect ops
- !2825 gioenums: G_IO_ERROR_NO_SUCH_DEVICE is new in 2.74
- !2826 GDBus: improve interoperability of SASL handshake
- !2827 gregex: Free match info if offset matching recalc failed
- !2829 gregex: use g_debug instead of g_warning in case JIT is not available
- !2830 goption: Slightly improve the documentation for G_OPTION_FLAG_REVERSE
- !2832 GDBus: Use namespace-friendly protocol for Linux message buses, and
optionally other connections
- !2833 Fix installed-tests failures
- !2835 Introduce G_APPLICATION_DEFAULT_FLAGS
- !2836 gio-launch-desktop: Only replace fds that point to the Journal
- !2851 Improve default value of glib_debug option
- !2853 Expose tls-exporter channel binding
- !2854 docs: Add --delete option to gio-tool attributes documentation
* Translation updates:
- Abkhazian
- Basque
- Georgian
- Hebrew
- Persian
- Portuguese
- Russian
- Turkish
- Ukrainian
* Contributors:
Aleksandr Melman, Aleksei Rybalkin, Asier Sarasua Garmendia, Christian Hergert,
codeboybebop, Danial Behzadi, Emin Tufan Çetin, Emmanuele Bassi,
Giuseppe Scrivano, Hugo Carvalho, James Hilliard, Luca Bacci, madmurphy,
Mamoru TASAKA, Marco Trevisan, Matthias Clasen, Michael Catanzaro,
Nart Tlisha, Owen Rafferty, Philip Withnall, Ryan Hope, Simon McVittie,
Yosef Or Boczko, Yuri Chornoivan, Zurab Kargareteli.
Overview of changes in GLib 2.73.2, 2022-07-12
==============================================
* Replace PCRE1 with PCRE2: This is a major change to drop the libpcre1
dependency and use libpcre2 instead, while preserving the behaviour and API of
GRegex. G_REGEX_OPTIMIZE and G_REGEX_JAVASCRIPT_COMPAT are now deprecated
and became a no-op, while other flags are adapted accordingly to the new API
(work by Aleksei Rybalkin, Philipp Withnall) (!2529, #1085)
* Preserve destruction order in gdataset, fixing various crashes during
objects disposal (work by Peter Bloomfield) (!2776, #2672, #2676)
* Require C99 __VA_ARGS__ (work by Emmanuele Bassi) (!2791, #2681)
* Add NONE or DEFAULT members to most flags types (work by Simon McVittie) (!2576)
* GFile: Add some missing async APIs (work by Marco Trevisan) (!2717)
* Improve internal and process documentation (work by Philipp Withnall) (!2763)
* Add atomic compare-and-exchange APIs returning previous value (work by Marco
Trevisan) (!2766)
* Add G_DEFINE_ENUM_TYPE and G_DEFINE_ENUM_VALUE macros (work by Emmanuele Bassi)
(!2788)
* Add platform-independent G_ALWAYS_INLINE and G_NO_INLINE (work by Marco Trevisan)
(!2781)
* Use waitid() on pidfds rather than a global SIGCHLD handler (work by Philip
Withnall) (!2408)
* Bugs fixed:
- #1434 Move tests/* into */tests/
- #2216 Chain signal handlers for SIGCHLD
- #2597 Crash in g_socket_client_enumerator_callback when proxy resolving
- #2659 /maincontext/timeout-once randomly fails
- #2681 Set C99's `__VA_ARGS__` as a toolchain hard requirement
- #2672 Finalization speedup (commit fa8c7c0da) causes crash in gtk3 demo
- #2676 gnome-shell assertion failure with GLib 2.73.1 while
g_object_real_dispose() cleans up weak refs
- #2687 Regression: in GLib 2.72.3, in gsocketclient/cancellable
- !1717 Add lock in _g_get_unix_mount_points() around *fsent() functions
- !2408 gmain: Use waitid() on pidfds rather than a global SIGCHLD handler
- !2529 gregex: replace pcre1 with pcre2
- !2576 Add a NONE or DEFAULT member to most flags-sets
- !2667 test: Potentially fix a race in thread-pool-slow test
- !2706 Add more SPDX license headers
- !2717 gfile (and GAppInfo): Add some missing async APIs and ensure async calls
always use them
- !2744 fuzzing: Add fuzz test for g_uuid_string_is_valid()
- !2748 docs: Add a testing policy
- !2749 tests: Various fixes for TAP output of tests
- !2755 docs: Sync glib.doap to set of users listed in CODEOWNERS
- !2763 docs: Document the release process
- !2766 gatomic: Add Compare and Exchange functions that returns the previous value
- !2770 Correct documentation of g_atomic_pointer_exchange
- !2771 use gvdb as a subproject
- !2772 gobject/tests/performance: fix leaks
- !2773 gdatetime test: Consistently expect %k to generate a figure space
- !2774 tests: Fix type mismatches in new atomic tests when compiling with clang
- !2775 gthread: Some code cleanups and fixes
- !2776 gdataset: Preserve destruction order
- !2779 tests: Fix macOS failures in the file tests
- !2781 gmacros: Provide platform-independent G_ALWAYS_INLINE and G_NO_INLINE
- !2782 ci: Update CI images to add gdb and pcre2
- !2783 _g_get_unix_mount_points(): reduce syscalls inside loop
- !2784 Revert "gobject: Use g_datalist_id_remove_multiple"
- !2785 tests: Fix incorrect basename comparison in gsubprocess test
- !2786 gcontenttype: Fix a potential use-after-free of xdgmime data
- !2788 Add G_DEFINE macros for enum and flags types
- !2789 gdate: Fix a typo in a code comment
- !2790 tests: Skip assert-msg-test.py if gdb is non-functional
- !2791 Require C99's __VA_ARGS__
- !2792 ci: Ensure git submodules are updated before running macOS CI
- !2794 gobject: Don't skip custom dispatch_properties_changed
- !2795 gkeyfile: Remove some unreachable code
- !2796 gmodule: Improve error handling for invalid .la files
- !2797 gio: Add some missing license and copyright headers
- !2798 Remove occurrences of unused-results warnings and mark them as errors
- !2800 gbacktrace: Handle case of strerror_r returning an int value
- !2801 gobject: Small speedup in weak-ref-set
- !2802 gobject/tests/custom-dispatch: Add few more tests
- !2804 gthreadpool: Ensure all unused threads are really counted as stopped
- !2805 gthread-posix: Do not do unguarded and non-atomic assignment of an atomic
- !2807 ci: Specify -Wno-overlength-strings on macOS
build: Specify -Werror=pointer-sign
- !2808 gsocketclient: Fix passing NULL to g_task_get_cancellable()
- !2809 gio/tests/desktop-app-info: Wait until the callback is called
* Translation updates: