Xavier Claessens
dcfc9f689e
Fix symbol visibility macros on Windows
...
There is currently no `dllimport` attribute on any of our function,
which prevents MSVC to optimize function calls.
To fix that issue, we need to redeclare all our visibility macros for
each of our libraries, because when compiling e.g. GIO code, we need
dllimport in GLIB headers and dllexport in GIO headers. That means they
cannot use the same GLIB_AVAILABLE_* macro.
Since that's a lot of boilerplate to copy/paste after each version bump,
this MR generate all those macros using a python script.
Also simplify the meson side by using `gnu_symbol_visibility : 'hidden'`
keyword argument instead of passing the cflag manually.
This leaves only API index to add manually into glib-docs.xml when
bumping GLib version. That file cannot be generated because Meson does
not allow passing a buit file to gnome.gtkdoc()'s main_xml kwarg
unfortunately.
2022-10-13 20:53:56 -04:00
Xavier Claessens
d40459c280
Simplify G_HAVE_GNUC_VISIBILITY definition
...
There is no need of compiler checks, GNUC visibility should be used when
__GNUC__ >= 4 but not on Windows.
2022-10-13 20:52:49 -04:00
Philip Withnall
c16f524034
Merge branch 'static' into 'main'
...
tests: skip shared libs if default_library=static
See merge request GNOME/glib!2867
2022-10-12 16:19:02 +00:00
Alyssa Ross
1dc8d69edb
tests: skip shared libs if default_library=static
...
Otherwise, the build will fail when the toolchain is static-only, even
with -Ddefault_library=static. I talked to a Meson developer in their
IRC channel, who told me that the correct fix was to ensure that
shared_library is only used if default_library != static.
2022-10-12 16:49:39 +01:00
Philip Withnall
057a9e5773
Merge branch 'test-actions-parallel-fix' into 'main'
...
tests/desktop-app-info: Use unique temporary paths for action files
See merge request GNOME/glib!2885
2022-10-12 14:41:27 +00:00
Philip Withnall
350b92821c
Merge branch 'wip/smcv/deprecated-construct-prop' into 'main'
...
gobject: Only emit deprecation warnings for user-specified properties
Closes #2748
See merge request GNOME/glib!2912
2022-10-12 13:56:46 +00:00
Philip Withnall
0cdbc530ca
Merge branch 'regex-errors-msg-cleanups' into 'main'
...
gregex: Use pcre2 error messages if we don't provide a specific one
See merge request GNOME/glib!2913
2022-10-12 13:48:29 +00:00
Philip Withnall
5d504709ab
Merge branch 'more-gio-thumbnail-sizes' into 'main'
...
glocalfileinfo: Add support for xx-large and x-large thumbnails
Closes #2767
See merge request GNOME/glib!2941
2022-10-12 13:43:07 +00:00
Philip Withnall
e90733a457
Merge branch 'atomic-older-cplusplus' into 'main'
...
gatomic: fix the atomic compare_and_exchange macros on older C++ standard versions
See merge request GNOME/glib!2864
2022-10-12 09:56:19 +00:00
Philip Withnall
90ae06a9f6
Merge branch 'null-param-handle-test' into 'main'
...
gobject/tests/param: Add unit test for handling invalid NULL param spec
See merge request GNOME/glib!2939
2022-10-11 20:06:27 +00:00
Philip Withnall
61ef7a7ec2
Merge branch 'strugee-main-patch-02389' into 'main'
...
Fix style warning in gvariant.c
See merge request GNOME/glib!2933
2022-10-11 19:50:10 +00:00
Philip Withnall
41d1cd02a0
Merge branch 'ebassi/static-docs' into 'main'
...
Build API docs only with shared libraries
See merge request GNOME/glib!2896
2022-10-11 19:31:31 +00:00
Marco Trevisan (Treviño)
e7a68531b3
glocalfileinfo: Add support for xx-large and x-large thumbnails
...
Co-Authored-by: António Fernandes <antoniof@gnome.org>
Closes : #2767
2022-10-11 20:58:58 +02:00
Marco Trevisan (Treviño)
9bb1410c54
gio/tests: Add file-thumbnail tests
...
Check if thumbnails are created in the path we expect and that we can
retrieve their information, but also that we try to get the biggest size
available when multiple are available.
2022-10-11 20:58:58 +02:00
Matthias Clasen
db1aadaa5e
Merge branch 'str-equal-only' into 'main'
...
g_str_equal: Provide macro for optimization
Closes #2775
See merge request GNOME/glib!2940
2022-10-11 18:19:25 +00:00
Xavier Claessens
6e341750df
g_str_equal: Provide macro for optimization
...
g_str_equal() is a nicer API than strcmp()==0, and less error prone.
However, forcing a function call prevents compiler from doing
optimizations. In the case it is not used as callback to GHashTable,
provide a macro that calls strcmp directly. This also has the side
effect that it forces arguments to be `const char *` instead of
`gconstpointer` in the case it is not used as callback, which adds type
safety.
Fixes : #2775
2022-10-11 10:55:56 -04:00
Marco Trevisan
cf4d8a3bdc
Merge branch 'osx-declaration-mixes-fix' into 'main'
...
gosxcontenttype: Do not mix declarations with code
Closes #2759
See merge request GNOME/glib!2909
2022-10-11 13:24:57 +00:00
Marco Trevisan
10e3715bc1
Merge branch 'utimensat2' into 'main'
...
glocalfileinfo: In set_mtime_atime(), don't use utimensat() if it's not available
See merge request GNOME/glib!2911
2022-10-11 13:11:07 +00:00
Marco Trevisan (Treviño)
60587d5965
tests/file: Include config.h so tests checking HAVE_* definitions are ran
...
We have tests depending on HAVE_UTIMES and HAVE_UTIMENSAT that were
currently not compiled because these were always undefined
2022-10-11 14:37:12 +02:00
Marco Trevisan (Treviño)
b1d4b4bb3b
glocalfileinfo: Avoid getting unused type values
2022-10-11 14:24:17 +02:00
Jared Wahlstrand
15cb123c82
glocalfileinfo: don't call both utimes and utimensat
...
also split us precision and ns precision code to make this cleaner
2022-10-11 14:10:28 +02:00
Marco Trevisan
4231426abe
Merge branch 'optimize_g_double_hash' into 'main'
...
Optimize the implementation of `g_double_hash`
See merge request GNOME/glib!2924
2022-10-11 11:26:41 +00:00
星外之神
e02db8ea22
Add tests for hash collisions in simple cases
2022-10-11 13:12:20 +02:00
wszqkzqk
c1af4b2b88
Optional optimization for g_int64_hash
2022-10-11 13:12:20 +02:00
wszqkzqk
dd1f4f709e
Optimize g_double_hash implementation
2022-10-11 13:12:20 +02:00
Marco Trevisan (Treviño)
80cf66034b
gobject/tests/param: Add unit test for handling invalid NULL param spec
...
This was fixed by !2921 but there was no test with the MR, so add one.
2022-10-10 21:01:10 +02:00
Marco Trevisan
db259b5925
Merge branch 'atime' into 'main'
...
tests: skip g-file-info test if atime unsupported
See merge request GNOME/glib!2866
2022-10-10 15:32:06 +00:00
Marco Trevisan
cc02e8720d
Merge branch 'unicode-15' into 'main'
...
Unicode 15 support
Closes #2735
See merge request GNOME/glib!2877
2022-10-10 14:20:17 +00:00
Marco Trevisan
8f2711bf72
Merge branch 'log-field-nul-termination-2' into 'main'
...
Update version in the docs to 2.74.1 for the fixed handling of...
See merge request GNOME/glib!2916
2022-10-10 12:33:57 +00:00
Philip Withnall
1d2ea6518c
Merge branch 'fix-unix-streams-error-leak' into 'main'
...
tests/unix-streams: Free the cancelled error on cancelled cancellable
See merge request GNOME/glib!2892
2022-10-10 12:02:56 +00:00
Philip Withnall
b321ba1d1f
Merge branch 'ignore-dirs-leaks+valgrind-ci' into 'main'
...
glib.supp: Ignore gutils leaks for user and system dirs
Closes #333
See merge request GNOME/glib!2897
2022-10-10 12:01:49 +00:00
Sebastian Dröge
aaf1bc0331
Merge branch 'fix-localfileinfo' into 'main'
...
gio: properly guard use of utimensat()
Closes #2766
See merge request GNOME/glib!2914
2022-10-10 06:57:48 +00:00
Sebastian Dröge
2f284193a7
Merge branch 'date-time-new-now' into 'main'
...
gdatetime: add NULL guard in g_date_time_new_now()
See merge request GNOME/glib!2938
2022-10-10 06:52:56 +00:00
Peter Bloomfield
574a2ecfa9
gdatetime: add NULL guard in g_date_time_new_now()
...
Add a missing g_return_() check in g_date_time_new_now().
A clear warning is better than a NULL pointer dereference.
2022-10-09 19:39:58 -04:00
Yaron Shahrabani
2b8b866bae
Update Hebrew translation
2022-10-06 13:23:20 +00:00
Sebastian Dröge
07e3ec6e04
Merge branch 'aleksander/gdatetime-return-if-fail' into 'main'
...
gdatetime: add missing g_return_() check in g_date_time_format_iso8601
See merge request GNOME/glib!2931
2022-10-05 07:09:47 +00:00
AJ Jordan
e052dddd1d
Fix style warning in gvariant.c
2022-10-05 06:47:26 +00:00
Aleksander Morgado
737ca7de91
gdatetime: add missing g_return_() check in g_date_time_format_iso8601
...
A clear warning is better than a NULL pointer dereference.
Signed-off-by: Aleksander Morgado <aleksandermj@chromium.org>
2022-10-04 21:37:58 +00:00
Quentin PAGÈS
f5a51089d8
Update Occitan translation
2022-10-04 17:40:02 +00:00
Fabio Tomat
e3c56a2f65
Update Friulian translation
2022-10-03 09:09:10 +00:00
Xavier Claessens
2843eef4a4
Merge branch 'gbsneto/python-find' into 'main'
...
build: Let Meson figure out Python installation
See merge request GNOME/glib!2928
2022-09-30 12:57:58 +00:00
Georges Basile Stavracas Neto
255fa26b96
build: Let Meson figure out Python installation
...
Commit 4a4d9eb662
initially switched Meson to find the python
program using find_program('python3'). Sadly that caused a
regression, since in some cases with MSVC it would fallback to
'meson.exe runpython', which is undesired.
However, that particular code was reverted back to an also
undesired lookup method, find_installation('python3'). This
way of finding python also breaks on Windows + MSVC, in particular
when setting it up as follows:
```
winget install python
winget install meson
```
This fails building GLib with:
> python3 not found
Fix that by not passing any argument to find_installation(), which
lets Meson figure it all out by itself.
2022-09-29 17:18:10 -03:00
Nart Tlisha
274761d68f
Update Abkhazian translation
2022-09-29 15:32:11 +00:00
Fabio Tomat
ce48bf1abd
Update Friulian translation
2022-09-28 08:38:58 +00:00
Marco Trevisan
df8403eec4
Merge branch 're-js-compat' into 'main'
...
gregex: Allow G_REGEX_JAVASCRIPT_COMPAT in compile mask
See merge request GNOME/glib!2920
2022-09-27 14:29:59 +00:00
Guido Günther
664ee9ca6a
gregex: Drop explanation G_REGEX_JAVASCRIPT_COMPAT
...
It's not supported as of glib 2.74
2022-09-27 13:52:05 +02:00
Guido Günther
a164b49532
gregex: Allow G_REGEX_JAVASCRIPT_COMPAT in compile mask for g_regex_new
...
The flag is still ignored but this way we properly deprecate
at compile time without raising an unexpected criticals at runtime:
g_regex_new: assertion '(compile_options & ~G_REGEX_COMPILE_MASK) == 0' failed
and then failing to create the regex completely.
Fixes 8d5a44dc8
("replace pcre1 with pcre2")
2022-09-27 13:52:05 +02:00
Emmanuele Bassi
f0dd96c287
Merge branch 'ebassi/issue-2770' into 'main'
...
Empty values are not valid GParamSpec
Closes #2770
See merge request GNOME/glib!2921
2022-09-25 19:41:00 +00:00
Emmanuele Bassi
0b43858f46
Merge branch 'ebassi/fix-python-style-check' into 'main'
...
ci: Conform to Python's coding style
See merge request GNOME/glib!2922
2022-09-25 19:40:10 +00:00
Emmanuele Bassi
8f975d07f3
ci: Conform to Python's coding style
...
The check-missing-install-tag.py script breaks PEP8, and the style check
CI job complains about it.
2022-09-25 18:51:22 +01:00