Tag '2.16.0' created by Akira TAGOH <akira@xxxxxxxxx> at 2025-01-17 15:15 +0000 Version 2.16.0 -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQTs/7w6azZech5b15gwdXqiGXGmcgUCZ4p0KQAKCRAwdXqiGXGm cu4cAPkBTixsNtIQcYmnbKGlJ3Ah2GA9UyeNLj3grbnDF4oRXAD7BbDlYc6ySYqp WHnD0UfemQvv4tRM57aXpEP+J1cFuAg= =HJ+9 -----END PGP SIGNATURE----- Changes since 2.15.0: Akira TAGOH (110): Publish docs to GitLab pages doc: default index for fontconfig-devel to index.html Update URLs for docs doc: Fix a typo of the summary for FcFontSetSort Clean up .uuid files with fc-cache -f too Fix undesired unref of FcConfig on Win32 meson.build: Fix a typo in POT names meson.build: Add missing --msgid-bugs-address Sort out bitmap related config files Add test cases for 70-no-bitmap-and-emoji.conf and 70-no-bitmap-except-emoji.conf meson: Add missing checkup Add a missing dependency for CI on FreeBSD meson: try to figure out libintl dependency ci: Fix a typo in build script ci: Add config.log for artifacts ci: Add missing dependencies ci: Disable cache update meson: Fix build fail with NLS enabled on BSD meson: Add libxml2 support ci: Add libxml2 build for meson meson: Workaround an exception ci: Workaround an error with libxml2 on Android meson: Add iconv checkup for all platforms Fix incompatible pointer type on MinGW meson: Use c_shared_args to take care of --default-library=both on Win32 ci: Fix a typo ci: disable iconv for MSVC ci: build with expat on MSVC doc: Use sans-serif instead of sans Merge branch 'fix-invalid-escape' into 'main' Do not add merge commits into NEWS file Merge branch 'no-merges-in-news' into 'main' Merge branch 'preprocess' into 'main' doc: Fix a typo Merge branch 'fix-doc' into 'main' meson: Enable run-test.sh for non-Win32 test/wrapper-script.sh: don't add a path when executable already has a path name. meson: Add missing the unit testing with json-c test-conf: Fix compiler warnings Fix test case for reproducible builds ci: Use md5 if md5sum isn't available. ci: normalize path to avoid miscalculation of cache name Merge branch 'fix-runtestsh-on-meson' into 'main' ci: Add Fedora 40 and remove Fedora 38 Merge branch 'update-ci-images' into 'main' More information when no writable cache directories Merge branch 'list-cache-dirs-on-fail' into 'main' Merge branch 'android_default_dirs' into 'main' Merge branch 'softwarefailure-main-patch-06986' into 'main' Merge branch 'build-failure' into 'main' Fix a memory leak in _get_real_paths_from_prefix Set FcTypeVoid if no valid types to convert Merge branch 'fix-sast' into 'main' Add FcConfigSetFontSetFilter Merge branch 'filter-fs' into 'main' Improve hinting detection for fonthashint object Merge branch 'issues/426' into 'main' Accept integer for pixelsize Merge branch 'issues/427' into 'main' Merge branch 'alias' into 'main' Fix a memory leak in fc-list/fc-query/fc-scan Merge branch 'fix-memory-leaks' into 'main' Add got.orth for Gothic language Merge branch 'got-orth' into 'main' Add cop.orth for Coptic language Merge branch 'cop-orth' into 'main' Add foreign automake option to avoid an error on autotools bootstrap Merge branch 'issues/425' into 'main' Merge branch 'fix-qsort-nullpointer' into 'main' Merge branch 'fix-fcserialize-nullpointer-usage' into 'main' ci: rebase ci-templates ci: Add Fedora 41 and drop 39 ci: run check-merge-request on merge request pipelines only ci: Add FreeBSD 14.1 and drop 13.2 ci: build mingw on f40 only Merge branch 'ci-update' into 'main' meson: Add install_tag for install targets meson: Add docs into dist meson: Add autotools files into dist doc: generate fontconfig-devel.html as one big file Merge branch 'fix-dist' into 'main' ci: Fix a fail on pages deployment Merge branch 'fix-pages-deployment' into 'main' Merge branch 'lock-sanitization' into 'main' ci: Fix pages deployment again Merge branch 'fix-pages-deployment' into 'main' Merge branch 'noDoubleLeafAssignment' into 'main' Merge branch 'updateMacImage' into 'main' Merge branch 'windowsImages' into 'main' fc-case: Correct the license header of fccase.h Merge branch 'issues/433' into 'main' Merge branch 'addRustToCi' into 'main' Merge branch 'optionBindGenBuild' into 'main' Use proper postscriptname for named instance if any Merge branch 'issues/431' into 'main' Merge branch 'exclusiveLangRefactor' into 'main' Replace hardcoded path in man pages to url link Merge branch 'issues/439' into 'main' Allow comma as a delimiter in postscriptname and ignore it on matching Merge branch 'issues/440' into 'main' Deal with glob string properly Another fix of glob string for Win32 Merge branch 'issues/442' into 'main' ci: Enable meson dist Merge branch 'ci-enable-meson-dist' into 'main' Fix misleading-indentation warning Merge branch 'issues/437' into 'main' Bump the libtool version Bump version to 2.16.0 Merge branch 'release-2-16-0' into 'main' Andreas Falkenhahn (1): Do not prefix cache_base with a "/". Doing so will lead to FcStrBuildFilename() composing paths that contain double slashes, e.g. in FcDirCacheProcess(). If FcDirCacheBasenameMD5() returns a cache_base that is prefixed with a "/", the call to FcStrBuildFilename() in FcDirCacheProcess() will compose a path that contains double slashes and this double-slashed path will then be passed to FcDirCacheOpenFile(). This won't cause any harm on Linux because Linux just ignores multiple slashes in paths but on other operating systems multiple slashes in paths are not allowed so FcDirCacheOpenFile() will fail on those platforms because of the double slash in the path. Andrey Prokopyuk (2): Fix qsort nullpointer issue Fix FcSerialize null pointer usage Christoph Reiter (1): meson: fix config relocation on Windows Dan Yeaw (1): Fix invalid escape character \s Dominik Röttsches (6): Remove redundant leaf assignment in fcfreetype.c Move Mac OS image to an up-to-date Mac OS 15 Sequoia image on ARM Update Windows image to gstreamer image from stable Allow building Rust targets in CI [Fontations] Build bindgen targets, basic Rust test Refactor exclusive language logic into separate file Florian "sp1rit" (1): meson: added default font dirs for android Kenny Levinsen (2): Unlock on allocation failure in FcCacheInsert Ensure config is locked during retry in FcConfigReference Ryan Schmidt (1): Fix wording in README.md Sam James (2): build: detect-and-use `-lm` for `fabs` in fcmatch fontconfig: mark _FcPatternIter as may_alias Xavier Claessens (2): Meson: Fix build with clang-cl by using cc.preprocess() meson: Add missing dep on generated header --- .gitlab-ci.yml | 276 +++++++++++++--------- .gitlab-ci/build.sh | 28 +- .gitlab-ci/ci.template | 29 ++ .gitlab-ci/config.yml | 45 +++ .gitlab-ci/other.yml | 66 +++-- Cargo.lock | 24 + Cargo.toml | 10 NEWS | 116 +++++++++ README.md | 8 build-aux/meson-dist-autotools.py | 26 ++ build-aux/meson-dist-docs.py | 29 ++ conf.d/70-no-bitmaps-and-emoji.conf | 13 + conf.d/70-no-bitmaps-except-emoji.conf | 14 + conf.d/70-no-bitmaps.conf | 11 conf.d/Makefile.am | 2 conf.d/meson.build | 18 - configure.ac | 12 doc/Makefile.am | 20 - doc/check-whitespace-in-args | 6 doc/check-whitespace-in-args.py | 23 + doc/fccache.fncs | 6 doc/fccharset.fncs | 4 doc/fcconfig.fncs | 42 +++ doc/fcfontset.fncs | 8 doc/fcpattern.fncs | 4 doc/fcrange.fncs | 8 doc/fcstring.fncs | 6 doc/fcweight.fncs | 8 doc/fontconfig-devel.sgml | 2 doc/fontconfig-user.sgml | 4 doc/meson.build | 53 ++-- fc-cache/fc-cache.sgml | 3 fc-cache/meson.build | 6 fc-case/fc-case.py | 74 ++---- fc-cat/fc-cat.sgml | 3 fc-cat/meson.build | 3 fc-conflist/meson.build | 3 fc-fontations-bindgen/Cargo.lock | 7 fc-fontations-bindgen/Cargo.toml | 10 fc-fontations-bindgen/build.rs | 34 ++ fc-fontations/meson.build | 53 ++++ fc-fontations/mod.rs | 41 +++ fc-lang/Makefile.am | 4 fc-lang/cop.orth | 9 fc-lang/got.orth | 29 ++ fc-lang/meson.build | 2 fc-list/fc-list.c | 7 fc-list/fc-list.sgml | 3 fc-list/meson.build | 3 fc-match/fc-match.sgml | 3 fc-match/meson.build | 3 fc-pattern/fc-pattern.sgml | 3 fc-pattern/meson.build | 3 fc-query/fc-query.c | 2 fc-query/fc-query.sgml | 3 fc-query/meson.build | 4 fc-scan/fc-scan.c | 2 fc-scan/fc-scan.sgml | 3 fc-scan/meson.build | 4 fc-validate/meson.build | 4 fontconfig/fontconfig.h | 24 + its/meson.build | 4 meson-cc-tests/freetype-pcf-long-family-names.c | 7 meson-cc-tests/pthread-prio-inherit-test.c | 9 meson.build | 179 +++++++++++--- meson_options.txt | 4 new-version.sh | 2 po-conf/meson.build | 4 po/meson.build | 4 src/cutout.py | 37 --- src/fccache.c | 31 ++ src/fccfg.c | 123 +++++++++- src/fcdefault.c | 5 src/fcdir.c | 8 src/fcfreetype.c | 129 +++------- src/fcftint.h | 3 src/fcinit.c | 27 +- src/fcint.h | 16 - src/fclang.c | 71 +++++ src/fcmatch.c | 2 src/fcname.c | 2 src/fcserialize.c | 2 src/fcxml.c | 4 src/ftglue.c | 5 src/ftglue.h | 3 src/meson.build | 32 -- subprojects/libintl/meson.build | 15 + subprojects/libxml2.wrap | 13 + test/Makefile.am | 14 - test/meson.build | 40 +++ test/run-test-conf.sh | 5 test/run-test.sh | 290 ++++++++++++++---------- test/test-70-no-bitmaps-and-emoji.json | 34 ++ test/test-70-no-bitmaps-except-emoji.json | 43 +++ test/test-conf.c | 95 ++++++- test/test-filter.c | 59 ++++ test/test-filter.json | 65 +++++ test/test_issue431.py | 27 ++ test/wrapper-script.sh | 6 99 files changed, 2047 insertions(+), 645 deletions(-) ---