4574 Commits

Author SHA1 Message Date
Sebastian Pipping
52791861f1 [REVERT ME] Add debug code to observe allocations at runtime
Based on code from uriparser (file UriMemory.c).
2025-08-21 16:44:59 +02:00
Sebastian Pipping
39ea0d18d0
Merge pull request #1021 from libexpat/dependabot/github_actions/vmactions/freebsd-vm-1.2.3
Actions(deps): Bump vmactions/freebsd-vm from 1.2.1 to 1.2.3
2025-08-20 00:19:21 +02:00
dependabot[bot]
862a90cee2
Actions(deps): Bump vmactions/freebsd-vm from 1.2.1 to 1.2.3
Bumps [vmactions/freebsd-vm](https://github.com/vmactions/freebsd-vm) from 1.2.1 to 1.2.3.
- [Release notes](https://github.com/vmactions/freebsd-vm/releases)
- [Commits](966989c456...05856381fa)

---
updated-dependencies:
- dependency-name: vmactions/freebsd-vm
  dependency-version: 1.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-19 14:27:54 +00:00
Sebastian Pipping
ebbbb6ae61
Merge pull request #1020 from libexpat/dependabot/github_actions/actions/checkout-5.0.0
Actions(deps): Bump actions/checkout from 4.3.0 to 5.0.0
2025-08-19 16:26:52 +02:00
dependabot[bot]
5b56d168c1
Actions(deps): Bump actions/checkout from 4.3.0 to 5.0.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.3.0 to 5.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](08eba0b27e...08c6903cd8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-19 01:01:20 +00:00
Sebastian Pipping
3bf5955040
Merge pull request #1023 from libexpat/fix-freebsd-ci
`freebsd.yml`: Downgrade to FreeBSD 14.3 to fix CI for the moment
2025-08-19 02:38:47 +02:00
Sebastian Pipping
8206f365fd freebsd.yml: Downgrade to FreeBSD 14.3 to fix CI for the moment 2025-08-19 01:53:35 +02:00
Sebastian Pipping
d43570fba8
Merge pull request #1017 from libexpat/autotools-sync-cmake-files
Fix CI / autotools: Sync CMake templates with CMake 3.31 for macOS
2025-08-15 17:47:25 +02:00
Sebastian Pipping
726a6b6460 autotools: Sync CMake templates with CMake 3.31 for macOS 2025-08-15 16:13:13 +02:00
Sebastian Pipping
0b58d09b26
Merge pull request #1016 from libexpat/dependabot/github_actions/actions/checkout-4.3.0
Actions(deps): Bump actions/checkout from 4.2.2 to 4.3.0
2025-08-12 12:43:51 +02:00
dependabot[bot]
1704a3bc95
Actions(deps): Bump actions/checkout from 4.2.2 to 4.3.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.2 to 4.3.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](11bd71901b...08eba0b27e)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-11 17:57:46 +00:00
Sebastian Pipping
4b274f1257
Merge pull request #1008 from libexpat/autotools-sync-cmake-files
autotools: Sync CMake templates with CMake 3.30
2025-06-30 22:23:02 +02:00
Sebastian Pipping
ef3bc459f8 autotools: Sync CMake templates with CMake 3.30 for macOS 2025-06-30 18:22:49 +02:00
Sebastian Pipping
2a91be2c3e autotools: Allow updates to expat.cmake for a single operating system 2025-06-30 18:22:22 +02:00
Sebastian Pipping
a570c75f6b autotools-cmake.yml: Disable fail-fast to ease debugging 2025-06-30 18:22:06 +02:00
Sebastian Pipping
a052855646
Merge pull request #1014 from libexpat/dependabot/github_actions/vmactions/freebsd-vm-1.2.1
Actions(deps): Bump vmactions/freebsd-vm from 1.2.0 to 1.2.1
2025-06-16 17:29:01 +02:00
dependabot[bot]
1ee28de81e
Actions(deps): Bump vmactions/freebsd-vm from 1.2.0 to 1.2.1
Bumps [vmactions/freebsd-vm](https://github.com/vmactions/freebsd-vm) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/vmactions/freebsd-vm/releases)
- [Commits](c3ae29a132...966989c456)

---
updated-dependencies:
- dependency-name: vmactions/freebsd-vm
  dependency-version: 1.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 13:06:11 +00:00
Sebastian Pipping
837347369f
Merge pull request #1013 from libexpat/get-windows-ci-off-of-deprecated-image-windows-2019
Get Windows CI off of deprecated image `windows-2019` + Drop support for MSVC <=16.0/2019
2025-05-30 20:43:00 +02:00
Sebastian Pipping
0085c5fe57 windows-binaries.yml: Replace command zip by 7z
In contrast to CI image "windows-2019", image "windows-2022"
does not seem to ship with command "zip" installed any more.
2025-05-30 19:56:37 +02:00
Sebastian Pipping
50d58db001 Drop support for MSVC <=16.0/2019
.. because of GitHub Actions' removal of image "windows-2019"
2025-05-30 19:56:37 +02:00
Sebastian Pipping
73a0d87d72
Merge pull request #1011 from AZero13/const
XmlInitUnknownEncodingNS: make table const
2025-05-26 23:43:48 +02:00
Rose
10d31158ee XmlInitUnknownEncodingNS: make table const
table is not changed at all.
2025-05-26 16:05:55 -04:00
Sebastian Pipping
74f0b8b241
Merge pull request #1010 from AZero13/check
Replace the empty for-loops with while loops
2025-05-19 23:55:08 +02:00
Rose
bf134925b8 Replace the empty for-loops with while loops 2025-05-19 15:58:40 -04:00
Sebastian Pipping
9b251b8467
Merge pull request #1009 from libexpat/clang-20
CI: Upgrade to Clang 20
2025-05-13 22:27:48 +02:00
Sebastian Pipping
3a5b723808 CI: Upgrade to Clang 20 2025-05-13 18:20:40 +02:00
Sebastian Pipping
8e49998f00
Merge pull request #1007 from libexpat/cmake-3-15-0
CMake: Drop support for CMake <3.15 + fix `-DEXPAT_MSVC_STATIC_CRT=ON` (alternative to #1006)
2025-04-18 21:36:10 +02:00
Sebastian Pipping
dcf5b3f4ae
Merge pull request #1005 from libexpat/dependabot/github_actions/vmactions/freebsd-vm-1.2.0
Actions(deps): Bump vmactions/freebsd-vm from 1.1.9 to 1.2.0
2025-04-18 20:37:22 +02:00
Sebastian Pipping
c25b2b69fd CMake: Drop support for CMake <3.15 + fix -DEXPAT_MSVC_STATIC_CRT=ON
.. for when flag "-MD" was used rather than "/MD" (with slash).
2025-04-18 19:33:21 +02:00
Sebastian Pipping
d7545c06b3 CMake: Report on CMake version in use 2025-04-18 16:57:48 +02:00
Sebastian Pipping
dfb55d0d36 windows-binaries.yml: Enhance description of task "Build installer" 2025-04-18 16:20:37 +02:00
dependabot[bot]
a0222f2575
Actions(deps): Bump vmactions/freebsd-vm from 1.1.9 to 1.2.0
Bumps [vmactions/freebsd-vm](https://github.com/vmactions/freebsd-vm) from 1.1.9 to 1.2.0.
- [Release notes](https://github.com/vmactions/freebsd-vm/releases)
- [Commits](8873d98fd1...c3ae29a132)

---
updated-dependencies:
- dependency-name: vmactions/freebsd-vm
  dependency-version: 1.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 12:03:45 +00:00
Sebastian Pipping
8d3a86bf32
Merge pull request #1004 from libexpat/cmake-fix-off-t-detection-for-werror
`ConfigureChecks.cmake`: Fix `off_t` detection for `-Werror`
2025-04-11 22:23:13 +02:00
Sebastian Pipping
98c6cbbd2a
Merge pull request #1003 from libexpat/freebsd-ci
Cover compilation on FreeBSD by CI
2025-04-11 21:28:47 +02:00
Sebastian Pipping
10c4bcd25c freebsd.yml: Cover compilation on FreeBSD 2025-04-11 20:25:49 +02:00
Sebastian Pipping
f48c79ce29 ConfigureChecks.cmake: Fix off_t detection for -Werror 2025-04-11 20:24:50 +02:00
Sebastian Pipping
69d6c054c1
Merge pull request #1001 from libexpat/clang-tidy-misc-no-recursion
Address clang-tidy warning `misc-no-recursion`
2025-03-31 01:03:21 +02:00
Sebastian Pipping
dc8ddf84e4 Changes: Document #1001 2025-03-30 20:54:46 +02:00
Sebastian Pipping
fe04a7f0ff lib/xmlparse.c: Address clang-tidy warning misc-no-recursion 2025-03-30 20:54:46 +02:00
Sebastian Pipping
004e55a7e1 lib/xmlparse.c: Make function getRootParserOf available to XML_GE != 1 2025-03-30 20:54:46 +02:00
Sebastian Pipping
c5d0761f10
Merge pull request #999 from libexpat/address-warnings
Address more clang-tidy warnings
2025-03-30 20:25:20 +02:00
Sebastian Pipping
90cd37b81a Changes: Fix change log entry for #986 2025-03-30 18:52:46 +02:00
Sebastian Pipping
4477f91771 Changes: Document #999 2025-03-30 18:52:45 +02:00
Sebastian Pipping
ac488f2d69 apply-clang-tidy.sh: Enable warning bugprone-narrowing-conversions 2025-03-30 18:52:09 +02:00
Sebastian Pipping
25ec4f1b29 lib/xmlparse.c: Address clang-tidy warning bugprone-narrowing-conversions
The symptom was:
> [..]/expat/lib/xmlparse.c:826:9: error: narrowing conversion from 'ssize_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   826 |         getrandom(currentTarget, bytesToWrite, getrandomFlags);
>       |         ^
> [..]/expat/lib/xmlparse.c:2765:19: error: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  2765 |     int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1);
>       |                   ^
> [..]/expat/lib/xmlparse.c:3734:16: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  3734 |       for (j = nsAttsSize; j != 0;)
>       |                ^
> [..]/expat/lib/xmlparse.c:3800:15: error: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  3800 |           j = uriHash & mask; /* index into hash table */
>       |               ^
> [..]/expat/lib/xmlparse.c:3814:30: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  3814 |             j < step ? (j += nsAttsSize - step) : (j -= step);
>       |                              ^
> [..]/expat/lib/xmlparse.c:6309:13: error: narrowing conversion from 'int' to signed type 'char' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  6309 |             parser->m_prologState.documentEntity &&
>       |             ^
> [..]/expat/lib/xmlparse.c:6314:27: error: narrowing conversion from 'int' to signed type 'char' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  6314 |         checkEntityDecl = ! dtd->hasParamEntityRefs || dtd->standalone;
>       |                           ^
> [..]/expat/lib/xmlparse.c:7897:10: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  7897 |   next = dtd->scaffCount++;
>       |          ^
> [..]/expat/lib/xmlparse.c:8096:16: error: narrowing conversion from 'XmlBigCount' (aka 'unsigned long long') to 'float' [bugprone-narrowing-conversions,-warnings-as-errors]
>  8096 |             ? (countBytesOutput
>       |                ^
> [..]/expat/lib/xmlparse.c:8098:16: error: narrowing conversion from 'XmlBigCount' (aka 'unsigned long long') to 'float' [bugprone-narrowing-conversions,-warnings-as-errors]
>  8098 |             : ((lenOfShortestInclude
>       |                ^
2025-03-30 18:52:09 +02:00
Sebastian Pipping
0c5b205a01 xmlwf: Address clang-tidy warning bugprone-narrowing-conversions
The symptom was:
> [..]/expat/xmlwf/xmlfile.c:204:13: error: narrowing conversion from 'ssize_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   204 |     nread = read(fd, buf, g_read_size_bytes);
>       |             ^
> [..]/expat/xmlwf/xmlwf.c:314:14: error: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   314 |   numBytes = count * sizeof(XML_Char);
>       |              ^

The solution to read(3) was copied from file xmlwf/readfilemap.c for now.
2025-03-30 18:52:09 +02:00
Sebastian Pipping
57a7643252 fuzz: Address clang-tidy bugprone-narrowing-conversions
The symptom was:
> [..]/expat/fuzz/xml_parse_fuzzer.c:68:40: error: narrowing conversion from 'size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    68 |   XML_Parse(p, (const XML_Char *)data, size, 0);
>       |                                        ^
> [..]/expat/fuzz/xml_parse_fuzzer.c:69:44: error: narrowing conversion from 'size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    69 |   if (XML_Parse(p, (const XML_Char *)data, size, 1) == XML_STATUS_ERROR) {
>       |                                            ^
> [..]/expat/fuzz/xml_parsebuffer_fuzzer.c:69:32: error: narrowing conversion from 'size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    69 |   void *buf = XML_GetBuffer(p, size);
>       |                                ^
> [..]/expat/fuzz/xml_parsebuffer_fuzzer.c:72:22: error: narrowing conversion from 'size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    72 |   XML_ParseBuffer(p, size, 0);
>       |                      ^
> [..]/expat/fuzz/xml_parsebuffer_fuzzer.c:73:26: error: narrowing conversion from 'size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    73 |   buf = XML_GetBuffer(p, size);
>       |                          ^
> [..]/expat/fuzz/xml_parsebuffer_fuzzer.c:78:26: error: narrowing conversion from 'size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    78 |   if (XML_ParseBuffer(p, size, 1) == XML_STATUS_ERROR) {
>       |                          ^
2025-03-30 18:52:09 +02:00
Sebastian Pipping
94cceb228c tests: Address clang-tidy warning bugprone-narrowing-conversions
The symptom was:
> [..]/expat/tests/alloc_tests.c:326:26: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   326 |     g_allocation_count = i;
>       |                          ^
> [..]/expat/tests/alloc_tests.c:437:26: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   437 |     g_allocation_count = i;
>       |                          ^

> [..]/expat/tests/basic_tests.c:415:47: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   415 |   if (_XML_Parse_SINGLE_BYTES(g_parser, text, first_chunk_bytes, XML_FALSE)
>       |                                               ^
> [..]/expat/tests/basic_tests.c:421:34: error: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   421 |                                  sizeof(text) - first_chunk_bytes - 1,
>       |                                  ^

> [..]/expat/tests/handlers.c:92:37: error: narrowing conversion from 'XML_Size' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    92 |   StructData_AddItem(storage, name, XML_GetCurrentColumnNumber(g_parser),
>       |                                     ^
> [..]/expat/tests/handlers.c:93:22: error: narrowing conversion from 'XML_Size' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    93 |                      XML_GetCurrentLineNumber(g_parser), STRUCT_START_TAG);
>       |                      ^
> [..]/expat/tests/handlers.c:99:37: error: narrowing conversion from 'XML_Size' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    99 |   StructData_AddItem(storage, name, XML_GetCurrentColumnNumber(g_parser),
>       |                                     ^
> [..]/expat/tests/handlers.c💯22: error: narrowing conversion from 'XML_Size' (aka 'unsigned long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   100 |                      XML_GetCurrentLineNumber(g_parser), STRUCT_END_TAG);
>       |                      ^
> [..]/expat/tests/handlers.c:1279:26: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>  1279 |     g_allocation_count = i;
>       |                          ^

> [..]/expat/tests/misc_tests.c:73:26: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    73 |     g_allocation_count = i;
>       |                          ^
> [..]/expat/tests/misc_tests.c:93:26: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    93 |     g_allocation_count = i;
>       |                          ^

> [..]/expat/tests/nsalloc_tests.c:86:26: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>    86 |     g_allocation_count = i;
>       |                          ^
> [..]/expat/tests/nsalloc_tests.c:526:28: error: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions,-warnings-as-errors]
>   526 |     g_reallocation_count = i;
>       |                            ^
2025-03-30 18:52:09 +02:00
Sebastian Pipping
2ae87fa583 tests: Address clang-tidy warning bugprone-suspicious-string-compare
The symptom was:
> [..]/expat/tests/handlers.c:135:19: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]
>   135 |   if (id != -1 && xcstrcmp(atts[id], info->id_name)) {
>       |                   ^
>       |                                                     != 0
2025-03-30 18:52:09 +02:00
Sebastian Pipping
66db1f2d05 apply-clang-tidy.sh: Exclude include-only file lib/xcsinc.c
.. from inspection in isolation
2025-03-30 18:52:09 +02:00