forked from GNOME/glib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
16793 lines (14154 loc) · 656 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.80.0, 2024-03-07
==============================================
* Bugs fixed:
- #3271 GLib: string malformed for gettext (Philip Withnall)
- !3940 tests: Don’t run check-missing-install-tag.py test under valgrind
(Philip Withnall)
- !3946 Add missing argument placeholders to several command-line tools (Simon
McVittie)
- !3947 docs: Fix a typo in the macros docs page (Philip Withnall)
- !3951 g_warn_if_fail: Document as always evaluating expr (Simon McVittie)
- !3953 docs: Specify gi-docgen as a native dependency (Bobby Rong)
- !3955 docs: Fix building with docs enabled and introspection disabled (Bobby
Rong)
- !3956 docs: Minor improvements to GSignal documentation (Philip Withnall)
* Translation updates:
- Basque (Asier Sarasua Garmendia)
- British English (Andi Chandler, Bruce Cowan)
- Chinese (China) (Luming Zh)
- Czech (Daniel Rusek)
- Georgian (Ekaterine Papava)
- Hebrew (Yaron Shahrabani)
- Hungarian (Balázs Úr)
- Kazakh (Baurzhan Muftakhidinov)
- Lithuanian (Aurimas Černius)
- Norwegian Bokmål (Brage Fuglseth)
- Persian (Danial Behzadi)
- Russian (Artur S0)
- Slovenian (Matej Urbančič)
- Spanish (Daniel Mustieles)
- Swedish (Anders Jonsson)
- Turkish (Sabri Ünal)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.79.3, 2024-02-27
==============================================
* Various consistency improvements to the command line libgirepository tools
(!3926, !3927, !3928, !3930, work by Simon McVittie)
* Bugs fixed:
- #3080 Gimp GTK file chooser hang when a remote file is open (Luca Bacci)
- #3210 Critical using Open location: GWinHttpFile doesn’t set
G_FILE_ATTRIBUTE_STANDARD_TYPE (Luca Bacci)
- #3252 [2.79.1] gdatetime installed tests fails on s390x (Simon McVittie)
- #3255 g_base_info_clear on zero-initialized stack-allocated introspection
info (Philip Withnall)
- #3258 Possible memory leak in GUnixVolumeMonitor (Ondrej Holy)
- #3260 Add man pages for girepository tools
- #3262 msys2-mingw32 build failing with error code 3221225785 (0xc0000139)
(Philip Withnall)
- #3263 Ensure girepository tools are translatable (Philip Withnall)
- #3266 Use-after-free in gsocketclient.c:connection_attempt_remove() (Philip
Withnall)
- #3271 GLib: string malformed for gettext (Philip Withnall)
- !3918 tests: Don’t run lint tests under valgrind
- !3919 tests: Speed up threaded toggle notify test unless -m slow is passed
- !3921 ci: Fix printing the execution environment
- !3922 gdatetime test: Produce more helpful output on mismatches
- !3923 girepository test: Don't assume doubles are naturally-aligned
- !3925 girwriter: Take the GIRepository as a parameter
- !3926 gi- tools: Remove unused options, improve --debug/--verbose
- !3927 g-ir-compiler: Only accept one input file
- !3928 gi-decompile-typelib: Interpret --includedir as most-important-first
- !3930 migrating-gi: Document command-line option removals
- !3935 Restrict macOS CI to origin
- !3937 girepository: Fix static build under Windows
- !3945 tests: Remove variable-length lookbehind tests for GRegex
* Translation updates:
- Basque (Asier Sarasua Garmendia)
- Catalan (Jordi Mas i Hernandez)
- Chinese (China) (Boyuan Yang)
- Czech (Daniel Rusek)
- Galician (Fran Dieguez)
- Georgian (Ekaterine Papava)
- Hebrew (Yaron Shahrabani)
- Indonesian (Andika Triwidada)
- Kazakh (Baurzhan Muftakhidinov)
- Latvian (Rūdolfs Mazurs)
- Lithuanian (Aurimas Černius)
- Persian (Danial Behzadi)
- Russian (Artur S0)
- Slovenian (Matej Urbančič)
- Spanish (Daniel Mustieles)
- Turkish (Sabri Ünal, Emin Tufan Çetin)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.79.2, 2024-02-12
==============================================
* More work to reduce lock contention and improve performance in GObject (#743,
!3869, !3873, work by Thomas Haller)
* More API changes to libgirepository, which is now stable as of this release
(#3155, #3217, #3218, #3231, #3234, #3243, #3244, #3245, #3246, work by
Philip Chimento, Evan Welsh, Philip Withnall)
* Import `g-ir-compiler`, `g-ir-generate` and `g-ir-inspect` from
gobject-introspection.git and update them to work with girepository-2.0,
renaming them to `gi-compile-repository`, `gi-decompile-typelib` and
`gi-inspect-typelib` (see docs/reference/girepository/migrating-gi.md) (!3853,
!3909, work by Evan Welsh, Philip Withnall)
* Add new `GLibUnix-2.0.gir`, `GLibWin32-2.0.gir`, `GioUnix-2.0.gir` and
`GioWin32-2.0.gir` GIRs which contain platform specific APIs, and are the
preferred way for third parties to access those APIs in future; although
platform specific APIs which were already exposed in `GLib-2.0.gir` and
`Gio-2.0.gir` continue to be listed there; the underlying `.so` files have not
changed (!3892, work by Philip Withnall)
* Bugs fixed:
- #743 GLib weak refs depend on cascade of locks, including global ones, which
makes them non-scalable
- #2887 memory-monitor-dbus.test fails in installed-tests suite (Philip
Withnall)
- #3198 Support --version in standard GApplication command line arguments
(Maxim Moskalets)
- #3217 Feedback on gobject-introspection: APIs for stack-allocated
introspection info (Philip Withnall)
- #3218 Segfault in gi_function_info_prep_invoker (Philip Withnall)
- #3231 New functions in the glib introspection data (Philip Withnall)
- #3234 Reference cycle between GIRepository and GIBaseInfos cached by it
(Philip Withnall)
- #3236 threaded_resolver_worker_cb leaks memory when lookup fails and
connection is already canceled (Philip Withnall)
- #3238 Python packaging module is missing on Hurd CI runner (Philip Withnall)
- #3240 Missing preconditions checks in GArray (Tobias Stoeckmann)
- #3242 Memory leak in gresources over libelf (Maxim Moskalets)
- #3243 Feedback on girepository 2.0: Naming of get_type_info vs load_type
(Philip Withnall)
- #3244 Feedback on girepository 2.0: Where to find uninstalled typelibs
(Philip Withnall)
- #3245 Feedback on girepository 2.0: GIBoxedInfo's place in the type
hierarchy (Philip Withnall)
- #3246 Wrong out parameter type in
gi_object_info_find_method_using_interfaces (Philip Withnall)
- #3247 safe_closefrom(), safe_fdwalk_set_cloexec() as public API (Simon
McVittie)
- !3797 Refactor GIRepository GIR generation to avoid cyclical dependency
- !3807 gprintf/gstrfuncs: Improve and port doc comments to gi-docgen
- !3824 gconvert: match GNU iconv behaviour on FreeBSD
- !3838 build: Add thorough test setup
- !3843 Add more test coverage for girepository
- !3845 gunixmounts: Use libmnt_monitor API for monitoring
- !3847 ci: Add ability to run manually some specific jobs
- !3848 Fix build with introspection on Windows
- !3849 girepository: Remove GI_FUNCTION_THROWS and GI_VFUNC_THROWS flags
- !3850 [th/strdup-in-ascii-strdown] glib: use g_strdup() in
g_ascii_strdown(),g_ascii_strup()
- !3851 ci: Fix post-merge CI pipelines
- !3853 girepository: Update gir-compiler and use it to compile GIRs
- !3854 girnode: Document ownership and element types of internal structs
- !3855 gitypelib: Replace multiple constructors with
gi_typelib_new_from_bytes()
- !3856 girepository: Drop gi_repository_get_default()
- !3859 [th/glib-private-const] glib: return const pointer from
glib__private__()
- !3860 tests: Fix typo in memory-monitor-portal.py.in
- !3861 girepository: Fix a memory leak of a mapped file
- !3865 [th/test-weak-notify] gobject/tests: add test checking that GWeakRef
is cleared in GWeakNotify
- !3866 [th/gobject-carray-comment] gobject: remove obsolete code comment
about CArray
- !3868 Link to the main context tutorial from the main loop docs
- !3869 [th/optimize-weak-ref-list] rework GObject's `WeakRefData` to track
references in an array instead of GSList
- !3870 Revert "Don't skip dbus-codegen tests on Win32"
- !3871 docs: Fix include path for the build
- !3872 gio: tests: Use slightly more explicit assert functions
- !3873 [th/datalist-shrink] shrink the interal buffer of `GData`
- !3874 Don't skip dbus-codegen tests on Win32
- !3876 build: Only override g-ir-compiler when GIR generation is enabled
- !3877 Various girepository fixes
- !3879 [th/gdataset-comment] gdataset: add code comment to
g_datalist_get_data()
- !3881 docs: Add migration guide for libgirepository
- !3886 codegen: Use `-` instead of `stdout` for output to stdout
- !3887 gtestutils: Ensure test_data is freed even if a test is skipped
- !3888 gitypes: Fix integer values of GIInfoType and add unit tests for
GIUnionInfo
- !3892 introspection: Generate separate GIR files and documentation for
platform specific APIs
- !3893 glocalfile: Support statvfs.f_type
- !3894 Minor fixes/docs changes to GFileDescriptorBased and GTask
- !3895 [th/meson-werror-fixes] some fixes for meson detection failure with
-Werror
- !3896 reuse: Add dep5 lines for gnulib and libcharset
- !3897 reuse: Fix screen-scraping expression for version 2.x
- !3898 Incorporate some lint checks into `meson test`
- !3900 gitypelib: Switch to refcounting
- !3901 girepository: Add length ‘out’ arguments to several getter methods
- !3902 gicallableinfo: Clarify docs for callables with no return type
- !3903 gibaseinfo: Rename gi_info_new() to gi_base_info_new()
- !3904 [th/meson-werror-fixes-2] more workarounds for compiler warnings in
meson compiler checks
- !3909 Rename g-ir-generate and g-ir-inspect and update to girepository-2.0
- !3911 glib/tests/unix: Mostly pass O_CLOEXEC to g_unix_pipe_open()
- !3912 glib-unix: Fix reference to FD_CLOEXEC in docs for g_unix_pipe_open()
- !3913 cmph: Fix a typo
- !3914 Revert "ci: Remove not-printable chars from generated junit file"
- !3916 tests: Skip lint tests if bash is not available
- !3917 ci: Build and tar libgirepository documentation
* Translation updates:
- Georgian (Ekaterine Papava)
- Russian (Artur S0)
Overview of changes in GLib 2.79.1, 2024-01-22
==============================================
* Fix a race condition in `g_object_unref()` (#3064, work by Thomas Haller)
* Various API and build changes to libgirepository as it is not yet API-stable
(#3216, !3780, !3805, !3823, !3833, !3840)
* Build fixes on big-endian 64-bit systems and mips64el (#3225, #3226, work by
Simon McVittie)
* Reduce contention on global locks within GObject (!3774, work by Thomas
Haller)
* Allow building man pages without the reference documentation (!3817, work by
Simon McVittie)
* Bugs fixed:
- #1010 g_get_num_processor does not respect cpuset/affinity
- #3064 Crash under g_object_unref()
- #3093 GDBusMessage: should validate the type of all known headers (Philip
Withnall)
- #3207 Add support for syslog to Structured Logging
- #3216 Feedback on gobject-introspection: Casting to and from GIBaseInfo*
(Philip Withnall)
- #3222 pthread_t usages lack type name (Emmanuele Bassi)
- #3223 CLang, GMutexLocker: error: unused variable 'locker'
[-Werror,-Wunused-variable]
- #3225 2.79 regression: gdatetime test failing on 64-bit big-endian since
#3119
- #3226 resource test fails on Debian mips64el: test5.gresource is not linked
but the test assumes it should be (Simon McVittie)
- !3774 [th/g-object-priv] add private data to GObject and use per-object
locking
- !3780 girepository: Use standard types instead of glib specific
- !3789 gdatetime: Fix title of documentation comment
- !3792 build: Tell gi-docgen where to find the GIR files
- !3793 Shorten the title for D-Bus interface docs
- !3794 Add boxed GType for GRand
- !3795 girepository: Skip GIRepository versions not matching GIRepository-3.0
- !3798 docs: Drop outdated .gitignore files
- !3799 tests: Fix a minor leak in the new GParamSpecPool test
- !3800 ci: Re-enable and fix FreeBSD CI
- !3801 gmessages: Port all doc comments to gi-docgen
- !3802 [th/g-pointer-bit-lock-ext] glib: add g_pointer_bit_unlock_and_set()
and g_pointer_bit_lock_mask_ptr()
- !3803 ci: Fix tarballing the docs on dist
- !3805 girepository: Various small API cleanups
- !3806 gsignal.c: drop an optimization that is undefined behaviour
- !3808 glib/deprecated: Skip all the deprecated gthread api
- !3809 docs: Fix links to symbols outside the allowed namsepace
- !3810 gstrfuncs: Improve and port g_set_str() docs to gi-docgen
- !3811 gvariant-parser: Mention annotated types
- !3812 brz.c: Use uintptr_t instead of a hardcoded list of 64-bit arches
- !3813 gobject: define HAVE_OPTIONAL_FLAGS for sizeof(void*) > 8
- !3814 Fix typo in GPOINTER_TO_SIZE documentation
- !3817 docs: Allow building man pages without the reference documentation
- !3818 docs: Clarify >=2.76 changes to g_module_open()
- !3821 tests: Fix a minor leak in the socket test
- !3823 girepository: Misc cleanups
- !3826 genums: use g_once_init_enter_pointer for GType initializers
- !3827 array-test: Don't assume sizeof(void*)==sizeof(gsize)
- !3831 gvariant-core: Don’t call posix_memalign() with size==0
- !3833 girepository: Change various alignments to use size_t
- !3835 build: Ignore branches in g_clear_*() functions under lcov
- !3837 tests: A couple of test isolation improvements
- !3839 gvarianttype: Fix typos
- !3840 girepository: Exclude private symbols from the ABI
- !3841 docs: Fix member names of GLib.LogLevelFlags
- !3842 gio, gmodule, gthread: compile windows resources only in shared build
* Translation updates:
- Georgian (Ekaterine Papava)
- Russian (Artur S0)
Overview of changes in GLib 2.79.0, 2023-12-22
==============================================
* Port to gi-docgen and drop gtk-doc support — dependencies have changed, and
Meson needs `-Ddocumentation` now rather than `-Dgtk_doc` (#3037, work by
multiple people)
* Move libgirepository into glib.git from gobject-introspection.git — but tools
like `g-ir-scanner` are currently still in gobject-introspection.git. For the
moment, glib.git needs to be built twice, once with `-Dintrospection=false`,
then build gobject-introspection.git, then re-build glib.git with
`-Dintrospection=true`. This process will evolve throughout the GLib 2.80
cycle. The API and ABI of libgirepository has changed, and accordingly its
version number has been bumped from 1.0 to 2.0 (note: the version number of
`GIRepository-*.gir` has been bumped from 2.0 to 3.0; see !3786). The GIR and
typelib file formats have not been changed, and are still at version 1.0.
(#3155, work by multiple people)
* Match behaviour for `GAppInfo` searches has changed (#3082, work by Nelson
Benítez León)
* Rename `GTK_USE_PORTAL` environment variable to `GIO_USE_PORTALS` (#3107,
work by Philip Withnall)
* Bump Meson dependency to 1.2.0 and depend on Python `packaging` module
(!3666, !3752)
Bugs fixed:
- #596 GApplication in Garbage Collected environments would benefit from a
g_application_command_line_exit() to enable remote instances to exit.
(Aleksandr Mezin)
- #791 Wish: Add a "nodelay" property to GSocket or GTcpConnection (Philip
Withnall)
- #2810 thread-pool-slow intermittent assertion failure in
test_thread_sort_entry_func() (Philip Withnall)
- #2824 G_REGEX_OPTIMIZE causes incorrect regex behaviour
- #2991 Drop translatable pspec nick/blurbs from properties in GIO (Sophie
Herold)
- #3082 Investigate prioritising prefix matches on GAppInfo keywords over
substring matches on names (Nelson Benítez León)
- #3087 glib doesn't cleanly unload on Windows (Luca Bacci)
- #3098 Make invalid escape sequences in GKeyFile fatal (Philip Withnall)
- #3103 mkenums: Can't parse an enum value with value ',' (Lukáš Tyrychtr)
- #3105 NetworkManager 1.44.0 crashes repeatedly with glib 2.78.0 (Philip
Withnall)
- #3107 Rename GTK_USE_PORTAL to avoid portal services being run with portals
force-enabled (Philip Withnall)
- #3111 gsubprocess-testprog.c: build error with cygwin (sys/ptrace.h: No such
file or directory) (Philip Withnall)
- #3112 Update to Unicode 15.1 (Philip Withnall)
- #3115 Support for additional strftime formatting capabilities
- #3116 gio clears modification time in microseconds when setting with
`set_modification_date_time` (Lukáš Tyrychtr)
- #3119 Add support for `%Ey` to g_date_time_format() (Philip Withnall)
- #3120 Build of glib 2.78.0 ignores -Dlibelf=disabled (Philip Withnall)
- #3128 glib-2.78.0 fails at gio/tests/gsubprocess.p/gsubprocess.c.o
- #3130 Segfault when creating GIO GPropertyAction without properties
- #3134 glib incompatible with Python 3.12 due to distutils usage
- #3135 Add GNU/Hurd CI
- #3140 Add a flag to not copy modification time when copying files (Khalid
Abu Shawarib)
- #3144 `g_file_set_contents_full()` doesn't truncate the file (without
`G_FILE_SET_CONTENTS_CONSISTENT`) (Philip Withnall)
- #3156 check for #ifdef PTRACE_O_EXITKILL will always fail since it isn't a
macro (Alessandro Bono)
- #3157 gsubprocess build-time test intermittently timing out since 2.78.1
(Simon McVittie)
- #3158 "CRITICAL" log when using --attributes option for "gio info" (Philip
Withnall)
- #3159 glib regex test fails JIT compiler tests under musl libc (Pablo Correa
Gómez)
- #3161 codegen installation is broken
- #3168 gvfs-udisks2-volume-monitor SIGSEGV in g_content_type_guess_for_tree()
due to filename with bad encoding (Ondrej Holy)
- #3183 g_dbus_connection_signal_subscribe with flag
G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_PATH doesn't work with an arg0 that is an
object path (Philip Withnall)
- #3185 g_utf8_collate_key() segfaults when passed an invalid length
- #3186 [RFE] Increase gio sniff buffer for mime type magic detection to 16K
or so (Philip Withnall)
- #3187 g_vasprintf crashes when passed invalid UTF-8 (Philip Withnall)
- #3191 Crash in __gio_xdg_cache_mime_type_subclass (Philip Withnall)
- #3203 Fdo notification fails without AppID (Michael Catanzaro)
- !3143 gatomic: Use g(u)intptr where appropriate
- !3316 gobject: Separate GWeakRef from GWeakNotify
- !3394 gsocketclient: Document delays/timeouts better
- !3457 glib-unix: Add convenience API for pipes
- !3524 add muslc ci
- !3552 gutils: Use international symbol for bits
- !3566 Update annotations for GAsyncQueue and GDir
- !3567 Update annotations for GHmac
- !3568 Update GOptionContext annotations
- !3569 Small fixes and cleanups for Vectored Exception Handlers
- !3571 Update GStringChunk annotations
- !3572 Update GRand annotations
- !3573 Update GTimer annotations
- !3576 guniprop.c: Avoid creating (temporarily) out-of-bounds pointers
- !3577 gthread: introduce g_once_init_{enter,leave}_pointer
- !3578 GType: Use guintptr as the underlying storage if larger than gsize
- !3579 Fixes for integer cast warnings when targeting CHERI
- !3580 Fix test_find_program on FreeBSD
- !3581 gthread: Fix optional/nullable annotations for g_once_init_*()
- !3582 Buffer needs to be aligned correctly to receive linux_dirent64.
- !3589 gconstructor.h: Ensure [c|d]tor prototypes are present for MSVC
(Chun-wei Fan)
- !3590 gtestutils.h: Fix warning with -Wsign-conversion caused by
g_assert_cmpint
- !3591 Switch to using gi-docgen for docs (batch 1)
- !3594 Fix gutils-user-database test on macOS
- !3595 gobject: cache flags needed for g_type_create_instance()
- !3596 Add value annotation to G_TYPE_FUNDAMENTAL_MAX
- !3597 Expand security policy to cover previous stable branch
- !3598 Document NULL pointer pitfall in toolchain requirements
- !3601 meson: Fix Windows build with PCRE2 as sibling subproject
- !3603 Add GBytes variants for GSocket receive methods
- !3605 build: Post-release version bump
- !3607 Make sure the `GTask` is freed on a graceful disconnect
- !3610 gdesktopappinfo: Do not search Comment field
- !3611 tests/constructor: Fix "unknown pragma ignored" warning on clang
- !3612 Update GStrv annotations
- !3613 tests: Fix gdatetime test on non-UTC systems
- !3620 gmain: avoid a GList traversal when removing source
- !3621 wakeup: do single read when using eventfd()
- !3623 Windows: Compile with the UNICODE / _UNICODE macros
- !3624 wakeup: Fix g_wakeup_acknowledge if signal comes in
- !3627 Add Hurd code owners
- !3628 glib-unix: Use full path to gstdio.h include
- !3629 glib/tests/meson.build: remove identical build targets
- !3630 glib-compile-resources: ensure alignment is at least sizeof(void *)
- !3632 Stop using enums in bitfields
- !3633 Use g_task_return in task threads
- !3634 Switch to using gi-docgen for docs (batch 2)
- !3635 Fix warnings with Clang on Windows and enable --Werror in CI
- !3636 Generate introspection data
- !3637 gstrvbuilder: Add g_strv_builder_take
- !3638 Cleanup and add content to glib debugging using gdb scripts
- !3640 GIO/tests: skip test_resources_binary on MIPS platforms
- !3641 build: Simplify MIPS test check
- !3645 Switch to using gi-docgen for docs (batch 3)
- !3646 ci: Update from clang-format-11 to clang-format-14
- !3647 Switch to using gi-docgen for docs (batch 4)
- !3652 GApplicationCommandLine: add print[err]_literal()
- !3654 gdatetime: Fix minor leaks from strup/strdown calls
- !3655 gdatetime: Fix incorrect alt-digits being used after changing locale
- !3656 gmodule-dl: Use RTLD_DEFAULT on FreeBSD too
- !3660 Switch to using gi-docgen for docs (batch 5)
- !3661 Switch to using gi-docgen for docs (batch 6)
- !3662 Switch to using gi-docgen for docs (batch 7)
- !3663 gdbusconnection: don't cache G_IO_ERROR_CANCELLED errors
- !3664 gmain: optimize "context->sources" hash table to use as set
- !3665 ci: Remove .build-linux from Hurd CI scheduled job
- !3666 build: Bump Meson dependency to 1.2.0
- !3667 Switch to using gi-docgen for docs (batch 8)
- !3668 Socket & readiness fixes
- !3671 gio/tests: Add test generated txt as the resources test dependency
- !3672 glib-private: Check for LSAN support at runtime when controlling it
- !3674 gtask: Add g_task_return_prefixed_error()
- !3677 Make GQuark register intentional leaks
- !3678 gsignalgroup: Avoid function call with side effect in g_return_* macro
- !3679 gmessages: fix dropping irrelevant log domains
- !3682 tests: Fix dependency of test.gresource on test-generated.txt
- !3683 glib: Disable dynamic asan loading on macOS
- !3687 fix: about libproc.h and PROC_PIDLISTFD_SIZE
- !3688 build: Fix the inclusion paths for GIR files in gi-docgen
- !3689 meson: Add missing dependencies for utility files for gdbus-codegen
- !3690 Switch to using gi-docgen for docs (batch 9)
- !3695 gvalue: add "steal_string"
- !3699 [th/prgname] use atomic pointers for g_prgname/g_application_name and
add g_set_prgname_once()
- !3701 tests: Fix gio-tool.py test on macOS
- !3702 glib.supp: Suppress the global_mime_dirs allocations
- !3703 Port GIRepository to GTypeInstance and add introspection
- !3704 girepository: Rename symbols to the GI namespace
- !3707 girepository: Ignore set-but-not-used warnings with G_DISABLE_ASSERT
- !3708 Fix various leaks in cmph-bdz-test and gutils
- !3709 Switch to using gi-docgen for docs (batch 10)
- !3710 gmessages: introduce g_log_writer_default_set_debug_domains()
- !3711 ghmac: Add a boxed type for GHmac and fix introspection build
accordingly
- !3712 Switch to using gi-docgen for docs (batch 11)
- !3713 gfileutils: Fix g_file_get_contents() silent under-read of large files
when off_t is wider than size_t
- !3714 xdgmime: Handle buggy type definitions with circular inheritance
- !3715 goption: Fix a typo
- !3716 tests: Improve build of cmph tests in girepository
- !3717 tests: provide reason for disabling convert test under musl
- !3721 gtestutils: Add g_test_trap_subprocess_with_envp() for testing envs
- !3722 gdir, gstrvbuilder: Add refcounting support and a boxed type
- !3723 gwin32: Un-hide symbols when building GIR
- !3726 tests: Fix fileutils build on FreeBSD and macOS
- !3731 tests: Fix string test failure on BSDs
- !3732 gspawn: Stop spewing debug messages
- !3733 ci: Make the Alpine CI name more consistent
- !3734 gdatetime: Disable ERA support on platforms which don’t support this
- !3735 ci: Fix printing info message at end of run-style-check-diff.sh
- !3736 build: Rename -Dgtk_doc option to -Ddocumentation and fix some
g-ir-scanner warnings
- !3739 Documentation only: Added clarification about GWeakNotify and removed
ambiguous text
- !3741 hash: Explicitly annotate key in iter_next as nullable
- !3743 ci: Install correct version of Meson on Alpine CI image
- !3745 tests: Assert there no errors first in gdbus-test-codegen
- !3751 Fix generated RST anchors for methods, signals and properties
- !3752 build: Make packaging module required
- !3753 gobject_gdb.py: Do not break bt on optimized build
- !3755 tests: Use textwrap.dedent to indent expected strings pleasingly
- !3757 ci: Re-add explicit Meson version to Alpine CI image
- !3758 docs: Add a section on version checking macros
- !3760 girepository: Various API cleanups
- !3761 gerror: Fix an old allow-none annotation
- !3762 [th/notify-queue] some optimization around
g_object_freeze_notify()/g_object_thaw_notify()
- !3763 girepository: Drop libgio dependency from gdump.c
- !3764 gsignal: fix reference to signals documentation page
- !3765 gapplication: Fix minor typo in docs
- !3767 girepository: Port documentation to gi-docgen and update
- !3768 ci: Build docs artifacts for deployment to docs.gtk.org
- !3770 GDateTime: Add usec precision API for unix time
- !3771 gtask: Add g_task_return_new_error_literal()
- !3772 gobject: Make GLib-2.0 gir build depend on GObject dependency
- !3773 girepository: Return enumerated versions and search paths as a GStrv
- !3776 glocalvfs: Remove unnecessary and buggy code
- !3777 Fix detecting size_t size when `-Wmissing-prototypes` is in CFLAGS
- !3779 gtypemodule: Add assertions in finalize()
- !3782 docs: fix a typo
- !3786 girepository: Re-number GIR file from 2.0 to 3.0
- !3787 docs: Install the gi-docgen docs
* Translation updates:
- Catalan (Jordi Mas i Hernandez)
- Chinese (China) (Boyuan Yang)
- Czech (Daniel Rusek)
- Esperanto (Kristjan SCHMIDT)
- French (Alexandre Franke)
- Italian (Milo Casagrande)
- Latvian (Rūdolfs Mazurs)
- Portuguese (Brazil) (Rafael Fontenelle)
- Romanian (Florentina Mușat)
- Russian (Artur S0)
- Slovenian (Matej Urbančič)
- Spanish (Daniel Mustieles)
- Turkish (Sabri Ünal)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.78.0, 2023-09-08
==============================================
* Bugs fixed:
- #3095 Error handling of invalid GKeyFile string escape sequences changed in
GLib 2.77.3 (Philip Withnall)
- !3559 gdb: Workaround optimized out quark_seq_id
- !3561 meson: fix `gnetworking.h` install tag
- !3562 gthread: Annotate g_thread_exit() with G_NORETURN
- !3564 Fix gutils-user-database unit test
* Translation updates:
- Basque (Asier Sarasua Garmendia)
- Czech (Vojtěch Perník)
- Danish (Alan Mortensen)
- English (United Kingdom) (Bruce Cowan)
- Galician (Fran Dieguez)
- Georgian (Ekaterine Papava)
- German (Philipp Kiemle, Jürgen Benvenuti)
- Hebrew (Yosef Or Boczko)
- Hungarian (Balázs Úr)
- Indonesian (Andika Triwidada)
- Korean (Changwoo Ryu)
- Lithuanian (Aurimas Černius)
- Persian (Danial Behzadi)
- Polish (Piotr Drąg)
- Swedish (Anders Jonsson)
- Turkish (Emin Tufan Çetin)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.77.3, 2023-08-31
==============================================
* Bugs fixed:
- #2575 GSettings schemas default value translations don't work when using
l10n=time (Michael Catanzaro)
- #3032 gdbus-codegen eats indentation in RST in XML comments (André)
- #3051 g_dbus_connection_export_menu_model() is not thread_safe
- #3061 Possible SEGV (null pointer deref) in distribute_method_call() (Philip
Withnall)
- #3083 `arg_data` in GOptionEntry is not a list (Philip Withnall)
- #3090 Possible SEGV (null pointer deref) in _g_resource_file_new() (Philip
Withnall)
- !3459 glib-unix: Clean up use of O_NONBLOCK
- !3503 interim solution for macOS CI
- !3519 meson: warn if -mms-bitfields is necessary
- !3526 gnetworkaddress: use reentrant getservbyname_r() if available
- !3527 tests: Use g_assert_*() rather than g_assert() in tree tests
- !3528 gio-tool-info: Move translator comments so they’re visible
- !3530 gregex: set default max stack size for PCRE2 JIT compiler to 512KiB
- !3532 tests: Disable use of ptrace() in tests on BSD and macOS
- !3533 ci: Only run pages CI job on scheduled job runs
- !3534 ci: Further fix to pages CI job
- !3535 Use 'meson setup' to configure
- !3538 glib-unix: Accept O_CLOEXEC as well as FD_CLOEXEC in
g_unix_open_pipe()
- !3540 gio: Add gresource.dtd
- !3541 gtestutils: Mention not ignoring SIGCHLD in g_test_trap_subprocess()
docs
- !3542 [th/gchildwatch-fail-message] gmain: improve g_warning() for failure
in g_child_watch_dispatch()
- !3543 [th/use-localtime-r] use localtime_r() in g_log_writer_format_fields()
- !3545 gregex: if JIT stack limit is reached, fall back to interpretive
matching
- !3547 glib/gfileutils.c: use 64 bits for value in get_tmp_file()
- !3550 glib/tests/asyncqueue.c: skip test_async_queue_timed in 2038 or later
- !3553 Generate missing docs for out arguments
- !3555 gkeyfile: Fix overwriting of GError
* Translation updates:
- Basque (Asier Sarasua Garmendia)
- Kazakh (Baurzhan Muftakhidinov)
- Panjabi (Amn Alam)
- Persian (Danial Behzadi)
- Swedish (Anders Jonsson)
Overview of changes in GLib 2.77.2, 2023-08-12
==============================================
* Bugs fixed:
- #3071 g_test_trap_subprocess and g_test_subprocess broken in 2.77.1 (Jonas
Ådahl)
- !3432 ci: Don’t run pipeline after merging a MR
- !3520 Fix typos
- !3521 GTree: Handle node counter overflow and return it as an unsigned value
- !3523 gspawn, gdataset: Restore nullable callback functions
* Translation updates:
- Chinese (China) (Luming Zh)
- Galician (Fran Dieguez)
- Indonesian (Kukuh Syafaat)
- Polish (Piotr Drąg)
- Portuguese (Hugo Carvalho)
- Russian (Artur So)
- Spanish (Daniel Mustieles)
- Turkish (Sabri Ünal)
Overview of changes in GLib 2.77.1, 2023-07-30
==============================================
* Fix some regressions with `GKeyFile` comment handling (#3047, work by Gaël Bonithon)
* Improve handling of query and fragment components in `file:` URIs (#3050, work by Lukáš Tyrychtr)
* Bugs fixed:
- #473 systemtap probes for gvariant (Allison Karlitskaya)
- #623 g_type_query() doesn't work for dynamic types (Philip Withnall)
- #931 Optimise GPrivate by removing one malloc (Allison Karlitskaya)
- #2929 gio: Failing build due to race generating glib/gversionmacros.h (Eric
van Gyzen)
- #3045 2.77.0: gio pkg-config test has incorrect install location for gio-
querymodules & glib-compile-schemas (Philip Withnall)
- #3047 2.77.0 changes formatting of keyfiles (Gaël Bonithon)
- #3048 Forcing fallback for libintl does not work (Brendan Shanks)
- #3050 g_file_new_for_uri() handles query strings incorrectly ("?") (Lukáš
Tyrychtr)
- #3054 Fedora installer (anaconda) crashes early with glib 2.77.0 due to
"Attempt to unlock mutex that was not locked", when it runs `hwclock` and
changes the system time (Thomas Haller, Philip Withnall)
- !3287 Audit and fix incorrect use of (closure) in glib
- !3461 gfileinfo: add file_path methods for language bindings
- !3485 docs: Expand supported platforms documentation a little
- !3494 ci: Manually fetch submodules for style-check CI jobs
- !3495 gdbus-codegen: Error on invalid dbus types
- !3496 garray: Fix typo in doc comment of g_ptr_array_sort[_with_data]()
- !3499 strfuncs: Add missing ownership annotations for returned string
vectors
- !3504 Revert "build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags"
- !3505 meson: help gobject-introspection locate source and build dirs
- !3509 build-sys: drop -mms-bitfields GCC flag
- !3510 testutils: Use prctl PR_SET_DUMPABLE to silence core dumps on Linux
- !3514 Revert "build-sys: drop -mms-bitfields GCC flag"
- !3515 gnetworkmonitor: Expand guidelines for metered data use
- !3517 tests: Add some more tests for g_type_query()
- !3518 m4macros: drop unused m4 files
* Translation updates:
- Georgian (Ekaterine Papava)
- Hebrew (Yosef Or Boczko)
- Hungarian (Balázs Úr)
- Persian (Danial Behzadi)
- Slovenian (Matej Urbančič)
- Ukrainian (Yuri Chornoivan)
Overview of changes in GLib 2.77.0, 2023-07-06
==============================================
* Fix `GSocketClient` connecting to a proxy if the port is not specified
(#2832, work by Michael Catanzaro)
* Support using `copy_file_range()` in `g_file_copy()`, if available (#2863,
work by Philip Withnall)
* Improve handling of comments above groups in key files (#2927,
work by Gaël Bonithon)
* Re-upgrade missing attribute debugs to criticals in `GFileInfo` (#2951,
work by Philip Withnall)
* Do not redefine NULL on C++ (#2973, work by Marco Trevisan)
* Make `g_signal_handlers_block_matched()` work for `G_SIGNAL_MATCH_ID`
(#2980, work by Przemyslaw Gorszkowski)
* Fixes to support building with bionic libc better (#3008, work by Øyvind Kolås)
* Fix potential stack overflow in gspawn on macOS if open file limit is very
high (#3024, work by Dario Saccavino)
* Fix support for `--force-fallback-for libpcre` in meson configuration (#3025,
work by Marius Kintel)
* Generate specific marshallers in `gdbus-codegen` (#3028, work by Marco Trevisan)
* Fix build failure on Android with `statx()` support (#3039, work by Philip Withnall)
* Improve locking performance of `GSignal` (!2824, work by Marco Trevisan)
* Improve locking performance of `g_main_context_iterate()` (!3235, work by
Marco Trevisan)
* Add an inline definition of `g_free()` to automatically use `g_free_sized()`
if available (!3252, work by Marco Trevisan)
* Fix race with `waitpid()` and `GChildWatchSource` (!3353, work by Thomas Haller)
* Add `glib_valgrind_suppressions` variable to glib pkg-config file (!3361, work
by Marco Trevisan)
* Fix build on macOS SDK 10.11 (!3385, work by Peter Williams)
* Switch to using a separate thread pool and support timeouts in
`GThreadedResolver` (!3397, work by Philip Withnall)
* Track pending `GTask`s if `G_ENABLE_DEBUG` is defined (!3404, work by Philip Withnall)
* Support GSignal fast path and more marshallers in `gobject_gdb.py` (!3437,
work by Nelson Ben)
* Disable the macOS CI because it’s too unreliable — if you rely on GLib working
on macOS, please get in touch and do something to help! (!3463, decision taken
by Philip Withnall)
* Bugs fixed:
- #65 glib-mkenums: parse_trigraph() chokes on quoted commas (Emmanuel Fleury)
- #95 GMarkupParser documentation completion (David King)
- #98 g_get_current_dir SIGSEGV on long path (Philip Withnall)
- #104 Invocation of the interface "g_key_file_remove_comment" does not remove
comment in specific case (Gaël Bonithon)
- #116 Document UTF-8 behaviour and requirements throughout GLib (Philip
Withnall)
- #252 Disagreement between runtime and docs on whether interfaces are
"classed" (Philip Withnall)
- #322 gdbus-example-proxy-subclass.c is not complete. (Colin Walters)
- #799 GAppInfoMonitor documentation deficiencies (Philip Withnall)
- #1264 Use-after-free under
send_message_with_reply_cleanup():gdbusconnection.c:1792 (Philip Withnall)
- #2289 Document clearly that libgio is not guaranteed to be safe to use in
setuid processes (Philip Withnall)
- #2307 mainloop test leaks a GMainLoop object (Philip Withnall)
- #2829 "glib-compile-resources --dependency-file=DEPFILE" creates wrong set
of dependencies (Michael Catanzaro)
- #2832 GSocketClient cannot proxy connect unless default port is explicitly
specified in proxy URL (Michael Catanzaro)
- #2855 gio/tests/socket-client.c name is too confusing because it does not
use GSocketClient (Mike Salmela)
- #2861 Check for __kernel_long_t when enabling futex()
- #2863 Use copy_file_range() whenever possible in g_file_copy (Philip
Withnall)
- #2864 Documentation mentions non-existing function `g_value_free` (Philip
Withnall)
- #2879 Job #2498619 failed: gio/tests/socket.c:1654:test_reuse_tcp: assertion
failed (error == (g-io-error-quark, 33)): error is NULL (Philip Withnall)
- #2927 GKeyFile: Inconsistent behavior of comment writing above a group (Gaël
Bonithon)
- #2939 mkenums.py test fails on FreeBSD (Philip Withnall)
- #2951 Re-upgrade missing attribute debugs to criticals in GFileInfo (Philip
Withnall)
- #2952 Not clear that GPollableInputStream methods are undefined if
can_poll() returns FALSE (Philip Withnall)
- #2953 Missing docs for GOption (commandline parser) (Sam Thursfield)
- #2958 nbd server fails with glib 2.76.0
- #2960 GDebugControllerDBus wrong default in documentation (Philip Withnall)
- #2963 Probably wrong information regarding G_PLATFORM_WIN32 in
README.win32.md
- #2965 test_measure fails with coreutils 9.2 (Joan Bruguera)
- #2966 Multiple Definition Error When Generating gio/tests/test5.gresource
(Dan Yeaw)
- #2969 user docs: GLib.DateTime.format: broken highlighting (Philip Withnall)
- #2972 GtkFileLauncher: generated paths not recognized on Win32 (Luca Bacci)
- #2973 Build failed due to NULL pointer redefinition in C++ (Marco Trevisan
(Treviño))
- #2980 g_signal_handlers_block_matched does not work for G_SIGNAL_MATCH_ID
(Przemyslaw Gorszkowski)
- #2982 Build randomly fails with: 'gmodule/gmodule-visibility.h' file not
found (Marco Trevisan (Treviño))
- #2993 g_dbus_interface_skeleton_get_vtable misses transfer annotation and is
not introspectable
- #2997 g_assert_cmpuint() should display positive, not negative values (Eric
Blake)
- #3003 glib-compile-schemas failed on directory name with no Latin symbols
(Daniyar Tleulin)
- #3007 GOptionContext group headings missing colon at the end (Philip
Withnall)
- #3008 Adaptations for building with bionic libc under termux (Øyvind Kolås)
- #3020 Races in gio/tests/portal-support-snap* tests
- #3024 Possible stack overflow in gspawn on MacOS
- #3025 libpcre and libintl cannot be chosen to use the builtins
- #3027 action exporter fails in the presence of actions with maybe parameter
types (Matthias Clasen)
- #3028 gdbus-codegen should generate marshallers (Marco Trevisan (Treviño))
- #3030 Document GListModel requiring unique instance pointers from
GListModelInterface.get_item (Christian Hergert)
- #3034 futex based g_mutex_lock sometimes splatters errno with EAGAIN on
contended locks
- #3039 Build failure due to statx fields with NDK r25.c (Philip Withnall)
- #3040 gtester in custom_target() run against system rather than built
libglib during build
- !2824 gsignal: Reduce lock/unlock pairs and ensure we always work on valid
signal nodes
- !3146 Make GVariant/GHash opaque types compatible with CHERI
- !3235 gmain: Avoid some lock/unlock dance during g_main_context_iterate
- !3252 gmem: Add an inline definition of g_free() to automatically use
g_free_sized()
- !3289 Work around an UCRT issue with _wspawn() functions taking an envp
block
- !3306 gregistrysettingsbackend: Allow a different root key path
- !3308 doc: Workaround missing API index
- !3314 gmain: More explicitly document g_main_context_release() prereqs
- !3326 unicode: add tests for g_utf8_normalize() and empty strings
- !3333 build: Drop old .gitignore files from test directories
- !3335 meson: allow -Dlibelf=enabled without pkg-config
- !3337 gio-tool-info: Fix a duplicate attribute name in the UI
- !3340 meson: Move msvc_recommended_pragmas.h to a subdirectory
- !3341 g_utf8_normalize: don't read past the end of the buffer
- !3342 Add fuzzing harness for g_utf8_normalize()
- !3344 tools: Drop check-abis.sh script
- !3345 docs: Drop section about default branch renaming from README.md
- !3347 gsocket/inotify/gwakeup: Use SOCK_NONBLOCK and O_NONBLOCK to avoid
fcntl() syscalls where possible
- !3351 tests: Update Unicode normalisation tests from Unicode 15
- !3352 meson: Fix detection of a system-provided proxy-libintl
- !3353 [th/child-watch-waitpid] fix race with waitpid() and child watcher
sources
- !3356 build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags
- !3357 Make clang++ happier when using G_STATIC_ASSERT
- !3361 meson: Add glib_valgrind_suppressions variable to glib pkg-config file
- !3365 gwin32: Avoid use of function call with side effect in g_return_*
macro
- !3366 Add init macros for refcounting types
- !3367 actiongroup: Add a compiler warning
- !3371 Explicitly mark size parameter as (in)
- !3377 gsignal: Clarify documentation for GSignalMatchType matching
- !3378 build: Post-release version bump
- !3381 gtimer: Avoid doing anything on g_usleep (0)
- !3382 gsocket: Explicitly mark size parameter as (in)
- !3383 add g_timeout_add_seconds_once
- !3384 Test g_signal_handlers_disconnect_matched for G_SIGNAL_MATCH_ID match
- !3385 gio: fix build on older macOS SDKs
- !3388 appmonitor: Skip the test under OSX
- !3389 glib/tests/[rec-]mutex: Allow each thread to work
- !3390 Fix error format in gio/gunixconnection.c (part 2)
- !3392 gvariant: Fix doc for g_variant_new_object_path
- !3393 Fix small issues in docs
- !3395 gtask: Document that g_task_run_in_thread() uses a shared resource
- !3396 glib-unix: Improve documentation for g_unix_fd_source_new()
- !3397 gthreadedresolver: Switch to using a separate thread pool and support
timeouts
- !3398 Avoid having g_futex_simple() inadvertently modify errno
- !3399 meson: wrap html documentation generation with gtk_doc option
- !3400 restore error messages in gunixconnection while maintaining older
compiler support
- !3401 ci: Disable the Coverity CI job
- !3404 gtask: Track pending GTasks if G_ENABLE_DEBUG is defined
- !3405 gthreadedresolver: Remove some incorrect assertions
- !3406 gthreadpool: Clarify that item_free_func is not normally called
- !3407 gregistrysettingsbackend: Remove translatable pspec nick/blurb
- !3408 docs: Update/Drop txt documents from docs directory
- !3409 docs: Don’t ignore gunixfdlist.h when building docs on Windows
- !3410 tests: Add descriptions to environment tests
- !3416 gtestutils: Fix section marker in documentation
- !3418 docs: Add lb90 as a Windows maintainer
- !3419 docs: Update various broken/redirected links and fix list formatting
- !3420 gtestutils: print timing information per test case in TAP output
- !3421 glib/tests/fileutils:fix asserts when running as root
- !3422 Check for linux/netlink.h buildability
- !3423 gstring: add g_string_new_take
- !3425 gwin32networkmonitor: Fix returning address of local variable
- !3426 gdataset, gobject: Use atomic compare and exchange full to set
pointers
- !3429 Rename GTK+ to GTK (mostly comments and documentation)
- !3430 gobject_gdb.py: fix regression caused by bfbe7127d5
- !3431 gfile: Ensure loff_t is defined on FreeBSD
- !3435 Ignore g_task_print_alive_task() when introspecting GIO
- !3437 gobject_gdb.py: support gsignal fastpath and detect more marshallers
- !3438 gio: Check cancellable iterating local file enumerator
- !3439 gstring: Add `Since` marker to `g_string_new_take()`
- !3440 gutf8: Add a g_utf8_truncate_middle() function
- !3441 Allow proper introspection of GTypeValueTable
- !3442 gio: Add g_file_new_build_filenamev
- !3448 meson: try iconv in libintl lookup
- !3449 docs: Move README.win32.md to the docs folder and update
CONTRIBUTING.md
- !3450 gactionmap: Add g_action_map_remove_action_entries()
- !3453 docs: Use the type name as the section name for GKeyFile
- !3455 gfileinfo: add (type filename) annotation to symlink_target functions
- !3456 gmain: Document that g_steal_fd() preserves errno
- !3458 gstdio: Improve documentation of some functions as async-signal safe
- !3462 tests: Reduce thread and iteration count on CI for /thread/rec-mutex3
- !3463 ci: Disable the macOS CI
- !3465 gobject_gdb.py: adapt to recent gsignal changes
- !3466 resolver: Add space in documentations
- !3470 pcre subproject fixes: Allow fallback & static build
- !3471 gio-tool-mount: Add option to show progress when unmounting
- !3472 tests: Fix an intermittent timing error with testing g_usleep(0)
- !3477 gdbus-codegen: Fix some minor typos in the documentation
- !3484 docs: Fix a typo in the backports policy
- !3486 docs: Document issue and merge request triaging and review guidelines
- !3488 codegen: Use g_signal_emit to emit signals
- !3489 guniprop: fix param direction in g_unichar_get_mirror_char(), for
introspection
- !3490 gobject/tests: Fix running on 32-bit Windows
* Translation updates:
- Bulgarian (Alexander Shopov)
- Chinese (China) (Boyuan Yang)
- English (United Kingdom) (Bruce Cowan)
- Galician (Fran Dieguez)
- Portuguese (Brazil) (Leônidas Araújo)
- Slovak (Dušan Kazik)
- Swedish (Anders Jonsson)
- Turkish (Sabri Ünal)
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
==============================================