https://github.com/GNOME/glib

sort by:
Revision Author Date Message Commit Date
01517e7 WIP: Enable -fsanitize=bounds in CI This is a work in progress. Ultimately, we want to run the test suite with an `-fsanitize=bounds` build on weekly schedule. Currently, however, any build with `-fsanitize=something` fails in CI because `libubsan` is not installed in the CI image. That needs to be fixed and the CI image updated before we can use it in CI. I won’t do that now, though, as this branch can only land once next cycle opens, and that would probably result in rebuilding the CI images twice if I do it now. We may want to consider using clang for the sanitiser builds, too, partially to test building with clang, and partially because its sanitiser support is typically a little more progressed than gcc’s. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 29 February 2024, 13:54:05 UTC
71aeb3d build: Enforce use of C99 flexible arrays and enable bounds checking This nudges us towards requiring more compile time array bounds checking where it’s supported by the compiler. See https://people.kernel.org/kees/bounded-flexible-arrays-in-c Signed-off-by: Philip Withnall <pwithnall@gnome.org> 29 February 2024, 13:54:05 UTC
1f9bcba gobject: Annotate pre-C99 flexible arrays with their dynamic length These arrays were declared using the pre-C99 gcc extension which treated any trailing array in a struct as potentially flexible in length. Change them to be C99 flexible arrays, annotate them with `G_COUNTED_BY`, and adjust the size calculations of the overall structs to match. The size of the overall struct will have decreased as `sizeof (struct->my_flexible_array)` is `sizeof (*struct->my_flexible_array)` if `my_flexible_array[1]` is used in the definition, whereas it’s zero if C99 `my_flexible_array[]` syntax is used. See https://people.kernel.org/kees/bounded-flexible-arrays-in-c#replace-1-element-arrays I found the declarations using: ```sh git grep '\[1\];' | grep -v '=' ``` Signed-off-by: Philip Withnall <pwithnall@gnome.org> 29 February 2024, 13:54:05 UTC
e2340f1 girepository: Annotate C99 flexible arrays with their dynamic lengths Using the new `G_COUNTED_BY` macro (i.e. the `__counted_by__` attribute). I found the declarations using: ```sh git grep '\[\];' | grep -v '=' ``` Signed-off-by: Philip Withnall <pwithnall@gnome.org> 29 February 2024, 13:53:35 UTC
9d23578 gmacros: Add G_COUNTED_BY macro This currently probably does nothing, but in future both gcc and clang will support the annotation it uses, and use that to do compile-time bounds checking on flexible arrays. See https://people.kernel.org/kees/bounded-flexible-arrays-in-c It’s the same implementation as used in the kernel: https://github.com/torvalds/linux/blob/805d849d7c3cc1f38efefd48b2480d62b7b5dcb7/include/linux/compiler_attributes.h#L97-L108. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 29 February 2024, 13:42:06 UTC
8618f50 Merge branch 'wip/smcv/cli-placeholders' into 'main' Add missing argument placeholders to several command-line tools See merge request GNOME/glib!3946 29 February 2024, 10:39:53 UTC
4f555c0 Update Hebrew translation 29 February 2024, 06:48:55 UTC
6aaf88e Update British English translation 28 February 2024, 12:29:55 UTC
90075e4 Update British English translation (cherry picked from commit 557f0d94427d85eae146889d03d66755c56bbe34) 28 February 2024, 11:46:09 UTC
fb4b780 glib-compile-resources: Provide placeholders for options with an argument If we don't do this, the --help text is formatted as though the option did not expect an argument. IDENTIFIER is a new translated string, but it is developer-oriented, so a missing translation is not particularly bad. COMMAND is already present in translations. Signed-off-by: Simon McVittie <smcv@collabora.com> 28 February 2024, 11:28:00 UTC
5622a4a gdbus: Add command-line placeholder for ADDRESS If we don't do this, the --help text is formatted as though the option did not expect an argument. This introduces a new translated string, but it is developer-oriented, so a missing translation is not particularly bad. Signed-off-by: Simon McVittie <smcv@collabora.com> 28 February 2024, 11:27:21 UTC
1a8e222 girepository: Provide placeholders for positional parameters Otherwise, correct invocation isn't clear from the --help output. This does not introduce new translated strings: FILE was already translated. Signed-off-by: Simon McVittie <smcv@collabora.com> 28 February 2024, 11:27:15 UTC
9541b43 girepository: Provide placeholders for --includedir If we don't do this, the --help text is formatted as though the option did not expect an argument. This does not introduce new translated strings: DIRECTORY was already translated. Signed-off-by: Simon McVittie <smcv@collabora.com> 28 February 2024, 11:26:59 UTC
3904549 Update Spanish translation 28 February 2024, 11:10:22 UTC
a91d2f8 Update Czech translation 27 February 2024, 23:04:45 UTC
4bebd4d Update Ukrainian translation 27 February 2024, 17:54:24 UTC
5214fd7 Update Georgian translation 27 February 2024, 17:20:13 UTC
c13744a Update Chinese (China) translation 27 February 2024, 16:48:40 UTC
0d31fc6 2.79.3 Signed-off-by: Philip Withnall <pwithnall@gnome.org> 27 February 2024, 10:11:38 UTC
972db82 Merge branch 'girepository-tool-translation' into 'main' girepository: Add translation support to utility tools Closes #3263 See merge request GNOME/glib!3941 27 February 2024, 09:41:03 UTC
def7de3 Merge branch '3271-size-format' into 'main' gfileutils: Use g_format_size() for a translatable string Closes #3271 See merge request GNOME/glib!3943 27 February 2024, 09:32:13 UTC
fca9568 Merge branch '3266-connection-attempt-unref-order' into 'main' gsocketclient: Fix a use-after-free in g_socket_client_connected_callback() Closes #3266 See merge request GNOME/glib!3944 27 February 2024, 09:17:13 UTC
a3c2691 gfileutils: Use g_format_size() for a translatable string Partially because the use of `G_GSIZE_MODIFIER` breaks translatable string extraction (issue #3271) and partially because `g_format_size()` produces more human-readable results anyway. Prior to commit cf5e371c67 the code was using `%lu`, so this is a fairly new issue. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Fixes: #3271 27 February 2024, 09:14:22 UTC
9a661ab gsocketclient: Fix a use-after-free in g_socket_client_connected_callback() The ref held by `data->task` may be the last one on the `GTask`. The `GTask` stores `attempt->data` as its task data, and so when the `GTask` is finalised, `attempt->data` is too. `connection_attempt_remove()` needs to access `attempt->data`, so must be called before the `g_object_unref()` in this situation. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Fixes: #3266 27 February 2024, 09:03:03 UTC
bd17a09 girepository: Combine input file validation code paths in utilities The code and strings are the same, so let’s simplify things and reduce LoC for no functional change. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 26 February 2024, 18:10:56 UTC
08b3f14 compiler: Correctly use g_strerror() instead of strerror() This ensures the return value is always UTF-8. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 26 February 2024, 18:10:56 UTC
57a8834 girepository: Add translation support to utility tools This fixes a few formatting and newline issues in the strings at the same time, but nothing major. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Fixes: #3263 26 February 2024, 18:10:56 UTC
5b022f9 Merge branch 'pcre-lookbehind' into 'main' tests: Remove variable-length lookbehind tests for GRegex See merge request GNOME/glib!3945 26 February 2024, 18:07:17 UTC
ca4e6f8 Merge branch 'wip/oholy/gvolumemonitor-leak' into 'main' gcontextspecificgroup: Wait until stop_func is done Closes #3258 See merge request GNOME/glib!3934 26 February 2024, 18:06:45 UTC
cce3ae9 tests: Remove variable-length lookbehind tests for GRegex PCRE2 10.43 has now introduced support for variable-length lookbehind, so these tests now fail if GLib is built against PCRE2 10.43 or higher. See https://github.com/PCRE2Project/pcre2/blob/e8db6fa7137f4c6f66cb87e0a3c9467252ec1ef7/ChangeLog#L94. Rather than making the tests conditional on the version of PCRE2 in use, just remove them. They are mostly testing the PCRE2 code rather than any code in GLib, so don’t have much value. This should fix CI runs on msys2-mingw32, which updated to PCRE2 10.43 2 days ago. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 26 February 2024, 16:55:44 UTC
65c64ea Updated Spanish translation 26 February 2024, 14:03:53 UTC
32a60a7 Merge branch 'macos_origin_only' into 'main' Restrict macOS CI to origin See merge request GNOME/glib!3935 26 February 2024, 10:58:05 UTC
c9d3295 Merge branch 'girepository-static' into 'main' girepository: Fix static build under Windows See merge request GNOME/glib!3937 26 February 2024, 10:55:21 UTC
cae2887 Merge branch 'fix-issue-3080' into 'main' GWinHttpFile: Check for matching attributes before sending HTTP(S) request Closes #3080 See merge request GNOME/glib!3936 26 February 2024, 10:51:44 UTC
fe461fd Update Latvian translation 25 February 2024, 11:02:14 UTC
63ff7c9 Update Indonesian translation 25 February 2024, 06:40:55 UTC
714c8e9 Update Kazakh translation 24 February 2024, 17:48:18 UTC
e06b8a4 Update Persian translation 24 February 2024, 13:10:18 UTC
2ee09b8 Update Chinese (China) translation 22 February 2024, 15:40:17 UTC
72d7692 girepository: Fix static build under Windows Properly define `GI_STATIC_COMPILATION` when static build is enabled. Use `library()` instead of `shared_library()` to allow selecting static builds. 21 February 2024, 11:38:40 UTC
4337f8f GWinHttpFile: Check for matching attributes before sending the HTTP(S) request We might not need to make an HTTP(S) request at all Fixes #3080 21 February 2024, 10:56:36 UTC
c515f79 GWinHttpFile: Set display-name and type at the start of the query_info() function Those attributes do not need the HTTP(S) request data, so just set them right away. 21 February 2024, 10:52:36 UTC
241df32 Update Georgian translation 20 February 2024, 21:48:00 UTC
bf7d941 gcontextspecificgroup: Wait until stop_func is done Currently, the `stop_func` is executed on an extra thread, and the `g_context_specific_group_remove` function returns before the `stop_func` finishes. It may happen that the `stop_func` is never executed if the program terminates soon after calling it. Let's wait until the `stop_func` is done. Fixes: https://gitlab.gnome.org/GNOME/glib/-/issues/3258 20 February 2024, 12:39:31 UTC
f1758b1 Update Hebrew translation 19 February 2024, 20:50:46 UTC
3e80909 ci: Run macOS job only for origin This partially reverts 11616b01459f56e8c9a6aa98a207f915593f6faa. The macOS runner is not available to forks on purpose. 19 February 2024, 18:29:35 UTC
41dc64c Update Catalan translation 19 February 2024, 18:28:44 UTC
ad0bc52 Update Slovenian translation 19 February 2024, 16:05:43 UTC
a63fc70 Update Persian translation 19 February 2024, 13:38:04 UTC
214da88 Update Basque translation 18 February 2024, 20:05:55 UTC
ab880c6 Update Galician translation 18 February 2024, 19:52:38 UTC
b4b319d Update Turkish translation 18 February 2024, 15:38:20 UTC
bd8662e Update Lithuanian translation 18 February 2024, 10:31:22 UTC
dfdd97e Update Turkish translation 18 February 2024, 09:20:05 UTC
85528ac Update Hebrew translation 17 February 2024, 21:44:30 UTC
0fb6f31 Update Hebrew translation 17 February 2024, 21:37:06 UTC
36d40eb Update Persian translation 15 February 2024, 22:22:14 UTC
4f54355 Merge branch '3262-msys2-meson-intermittent-failure' into 'main' ci: Use Meson version from pacman on msys2 CI runners Closes #3262 See merge request GNOME/glib!3932 15 February 2024, 21:56:11 UTC
257b980 Merge branch 'wip/smcv/gir-man-pages' into 'main' Add man pages for gi-* tools Closes #3260 and gobject-introspection#55 See merge request GNOME/glib!3924 15 February 2024, 21:37:35 UTC
1ec3ded ci: Temporarily disable --fatal-meson-warnings on msys2 CI For the same reasons as in commit 71061fdcb33b8c26f5f8467c, but in this case we can’t downgrade the version of Meson on the CI runner (see the previous commit), so just tell it to shut up instead. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Helps: #3262 15 February 2024, 21:30:33 UTC
6286e57 ci: Use Meson version from pacman on msys2 CI runners Rather than pinning it to the lowest version we support, as is the standard policy. This means we’ll end up using version 1.3.2-2, which has just been packaged to contain the fix for https://github.com/mesonbuild/meson/issues/12330, which has been impacting GLib significantly since we started installing gobject-introspection in CI in commit c428d6e67318e7b02c13111db260ed98622e982a. Thanks to Christoph Reiter, Luca Bacci and Simon McVittie for diagnosing and fixing this issue. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Fixes: #3262 15 February 2024, 21:25:00 UTC
10c4942 Merge branch 'wip/smcv/migrating-gi' into 'main' migrating-gi: Document command-line option removals See merge request GNOME/glib!3930 15 February 2024, 19:26:11 UTC
90b2185 Merge branch 'wip/smcv/decompiler-order' into 'main' gi-decompile-typelib: Interpret --includedir as most-important-first See merge request GNOME/glib!3928 15 February 2024, 19:02:24 UTC
a9fabe5 Merge branch 'wip/smcv/decompiler' into 'main' girwriter: Take the GIRepository as a parameter See merge request GNOME/glib!3925 15 February 2024, 12:26:45 UTC
fe2c18a Merge branch 'wip/smcv/gi-unused-options' into 'main' gi- tools: Remove unused options, improve --debug/--verbose See merge request GNOME/glib!3926 15 February 2024, 11:11:56 UTC
5b2c120 Update Galician translation 15 February 2024, 02:23:50 UTC
f1d4d54 Merge branch '3255-clear-base-info' into 'main' gibaseinfo: Allow gi_base_info_clear() to be idempotent Closes #3255 See merge request GNOME/glib!3929 15 February 2024, 01:19:44 UTC
803508f Merge branch 'wip/smcv/gi-compiler-only-one' into 'main' g-ir-compiler: Only accept one input file See merge request GNOME/glib!3927 14 February 2024, 23:52:13 UTC
2cc82bd Add a man page for gi-inspect-typelib Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
b0163af Add gi-* man pages to the build system Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
66fda28 g-ir- tools: Add examples to man pages Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
d0cb895 Retitle gi-* man pages and update content gi-compile-repository --module and gi-decompile-typelib --shlib are intentionally undocumented here: they will be removed in !3926. Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
615c519 Spell Matthias' name correctly in the gi-* man pages This was wrong since 2008. Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
bca2ad0 Add metadata header to gi-* man pages Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
30e8c6a Rename man pages to the tools' GLib names Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
af9c0b0 Remove generated man pages Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
e37c948 Move g-ir-compiler, g-ir-generate man pages to docs/reference/girepository Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:07:46 UTC
87ae4fb docs: Update website link 14 February 2024, 12:07:46 UTC
1bda59f Add a --version option to g-ir-compiler and g-ir-generate. Resolves: gobject-introspection#55 14 February 2024, 12:07:46 UTC
8d699b6 Sphinx based user documentation The current output (more or less a straight copy of the wiki) is available here: https://gi.readthedocs.io This contains two changes: * Converts all (not completely outdated) wiki pages to a sphinx based documentation. * Converts the man pages to reST and adds a Makefile for building them using rst2man. So they can be easily exposed in the sphinx docs. Goals: * Have a user focused/compact documentation instead of random wiki pages with various todo/ideas pages. * Take advantage of the gitlab MR workflow by * allowing large documentation changes/refactorings with reviews * allowing to combine features changes with documentation changes in MRs 14 February 2024, 12:07:46 UTC
ae313e3 Update bug reporting links. Also disable automatic hyphenation in manual pages to prevent wrapping long URLs. Ensures that URLs can be easily navigated by clicking on them. 14 February 2024, 12:07:46 UTC
c7387b5 docs: Remove incorrect name rule The leading `lib` should be passed as part of the shared library name in the `--shared-library` argument for g-ir-compiler. https://bugzilla.gnome.org/show_bug.cgi?id=699354 14 February 2024, 12:07:46 UTC
e24c7f9 docs: fix manpage flag formats Signed-off-by: Ben Boeckel <mathstuf@gmail.com> 14 February 2024, 12:07:46 UTC
be0bb09 Fixed reference to obsolete name used in g-ir-generate manpage https://bugzilla.gnome.org/show_bug.cgi?id=729901 14 February 2024, 12:07:46 UTC
33b7bc3 Update bugzilla product/component g-i bug reports have been moved from: http://bugzilla.gnome.org/enter_bug.cgi?product=glib&amp;component=introspection to: http://bugzilla.gnome.org/enter_bug.cgi?product=gobject-introspection https://bugzilla.gnome.org/show_bug.cgi?id=745498 14 February 2024, 12:07:46 UTC
0e11c0a g-ir-compiler: remove references to --code, remove --no-init options The "--code" option was removed years ago in ac81f3e8c5f1c380d16677232d67466e739da283 so remove references to it from README and g-ir-compiler(1) Remove the "--no-init" option from g-ir-compiler and g-ir-compiler(1) as it was documented to "can only be used if --code is also specified", so no reason to keep it around. 14 February 2024, 12:07:46 UTC
7bff894 Do not use triple dashes 14 February 2024, 12:07:46 UTC
d500d23 Remove leading % 2008-09-06 Johan Dahlin <johan@gnome.org> * docs/g-ir-generate.1: Remove leading % svn path=/trunk/; revision=573 14 February 2024, 12:07:45 UTC
3c65ea7 Add man pages for the generator and compiler. 2008-08-29 Johan Dahlin <johan@gnome.org> * Makefile.am: * docs/g-ir-compiler.1: * docs/g-ir-generate.1: * docs/g-ir-scanner.1: Add man pages for the generator and compiler. svn path=/trunk/; revision=518 14 February 2024, 12:07:45 UTC
8440742 migrating-gi: Document command-line option removals From !3926, !3927. Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:03:36 UTC
64762fd gi-decompile-typelib: Interpret --includedir as most-important-first This is a behaviour change from g-ir-generate, which treats it as least-important-first (the last directory on the command-line is searched first). gi-compile-repository --includedir and gcc -I are most-important-first (the first directory on the command-line is searched first) so it seems like it makes most sense to be consistent with that. Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 12:00:05 UTC
06a7258 girepository: Add g_autoptr() and g_auto() support This should make the code a bit more usable in situations where people aren’t potentially using MSVC. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Helps: #3255 14 February 2024, 11:54:48 UTC
39afe18 girepository: Add GI_REPOSITORY_LOAD_FLAG_NONE This just makes code using the load flags a little more readable. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 14 February 2024, 11:54:21 UTC
f4f38c2 girepository: Move internal gi_typelib_blob_type_to_info_type() function `GITypeInfo` isn’t defined in `libgirepository-internals`, and that was forcing us to do some header includes which violated the layering between `libigrepository-internals` and `libgirepository`. Fix that by moving the helper function to the header/source where `GITypeInfo` is defined. This fixes commit 54f156bd63484582a07236c7a803dec658fd189b. Signed-off-by: Philip Withnall <pwithnall@gnome.org> 14 February 2024, 11:52:33 UTC
75820a6 gibaseinfo: Remove an unused private macro Signed-off-by: Philip Withnall <pwithnall@gnome.org> 14 February 2024, 11:52:02 UTC
ec9a73a gibaseinfo: Allow gi_base_info_clear() to be idempotent When called on an already-cleared `GIBaseInfo` it should do nothing. Signed-off-by: Philip Withnall <pwithnall@gnome.org> Fixes: #3255 14 February 2024, 11:51:08 UTC
f80e978 girwriter: Take the GIRepository as a parameter We certainly won't find the requested namespace in a newly-created repository with no typelibs loaded. Fixes: 9ab84bc1 "girwriter: Stop using the singleton GIRepository" Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 11:13:04 UTC
e6d2c2c g-ir-compiler: Only accept one input file The positional parameters are declared as G_OPTION_ARG_FILENAME_ARRAY, but only the first one is used. Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 11:11:14 UTC
b974fa4 Update Ukrainian translation 14 February 2024, 11:00:38 UTC
4180a20 gi-decompile-repository: Remove unused --shlib option This seems to have been a remnant of support for embedding the typelib in the shared library, which was removed from this tool in commit 4bf5ef6b "[girepository] Actually verify header of loaded typelibs in g_irepository_require" (originally gobject-introspection@05ffd857). The feature of embedding the typelib in a shared library was itself removed in commit b2df59c3 "compiler: Remove --code argument", originally gobject-introspection@ac81f3e8, with a note that because we rely on being able to load the shared library into g-ir-scanner, anything that links g-ir-scanner output into the shared library would be a circular dependency. Signed-off-by: Simon McVittie <smcv@collabora.com> 14 February 2024, 10:42:39 UTC
back to top