1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 12:25:09 +03:00
Commit Graph

6900 Commits

Author SHA1 Message Date
Nick Wellnhofer
6ed39a82c6 runtest: Allow catalogs
It's enough to disable the system catalog to avoid unwanted allocations.
2024-06-15 19:41:47 +02:00
Nick Wellnhofer
208f27f964 include: Don't define ATTRIBUTE_UNUSED in public header
Stop polluting namespace with unprefixed names.
2024-06-15 19:13:08 +02:00
Nick Wellnhofer
387f0c784f include: Readd circular dependency between tree.h and parser.h
There are dozens of downstream projects that only include tree.h but use
declarations from parser.h. This broke after the recent cleanup of
circular dependencies.

Make tree.h include parser.h again. This is a hack but doesn't change
the include directory struture.

This commit only made it into the 2.12 branch but wasn't applied to
master, so the issue turned up in 2.13.0 again.

Should fix #734.
2024-06-15 16:27:54 +02:00
Nick Wellnhofer
bd208d5fe1 xinclude: Add another missing include 2024-06-15 01:40:06 +02:00
Nick Wellnhofer
f070acc564 autotools: Abort if external libraries couldn't be found
This makes the configuration process more robust and deterministic.
Before, we would silently disable options.
2024-06-15 01:23:39 +02:00
Jan Alexander Steffens (heftig)
599ceaffad
xinclude: Add missing include
Gambas fails to compile with

    error: 'xmlStructuredErrorFunc' has not been declared
2024-06-15 00:59:54 +02:00
Ryan Carsten Schmidt
86c4cf58ec Fix typo in NEWS (--with-html -> --with-http) 2024-06-14 16:35:11 -05:00
Miklos Vajna
7e83a08994 win32, msvc: fix missing linking against Bcrypt.lib
Fixes this link error:

dict.obj : error LNK2019: unresolved external symbol BCryptGenRandom referenced in function xmlInitRandom

Commit 2e9e758d1e (dict: Get random seed
from system PRNG, 2023-12-24) updated cmake, but not nmake, correct
this.
2024-06-14 22:31:52 +02:00
Nick Wellnhofer
1aa37db04c xinclude: Don't raise error on empty nodeset
xmlXPtrEval returning NULL means an empty nodeset if no error code is
set.

See #733.
2024-06-14 20:55:29 +02:00
Nick Wellnhofer
2608baaf92 parser: Make failure to load main document a warning
Revert the change that made failures to load the main document an error.

This fixes the --path option of xmllint and xsltproc.

Should fix #733.
2024-06-14 20:06:07 +02:00
Nick Wellnhofer
2f12809612 tree: Fix freeing entities via xmlFreeNode
Call xmlFreeEntity to free all entity members.

Fixes #731.
2024-06-14 16:44:09 +02:00
Nick Wellnhofer
039ce1e821 parser: Pass global object to sax->setDocumentLocator
Revert part of commit c011e760.

Fixes #732.
2024-06-14 16:41:43 +02:00
Nick Wellnhofer
3b4a84e4b7 encoding: Deprecate xmlCharEncodingHandler members 2024-06-13 18:09:17 +02:00
Nick Wellnhofer
b34dc1e4a3 tree: Deprecate xmlBuffer members 2024-06-13 18:09:17 +02:00
Nick Wellnhofer
712a31abe4 parser: Deprecate most public struct members
This will probably cause many warnings in downstream code abusing
libxml2 internals, but we can always undeprecate some members later.
2024-06-13 18:04:34 +02:00
Nick Wellnhofer
df40f64edf fuzz: Avoid accessing internal struct members
Switch to xmlNewIOInputStream.
2024-06-13 18:01:23 +02:00
Nick Wellnhofer
0c97eaa772 xmllint: Rewrite HTML error output 2024-06-13 16:57:52 +02:00
Nick Wellnhofer
1c1794964e xlink: Deprecate xlinkGetDefault*
These functions read an otherwise unused global and seem useless.
2024-06-12 19:55:47 +02:00
Nick Wellnhofer
046663bc54 xlink: Deprecate xlinkSetDefault*
These functions set an otherwise unused global and seem useless.
2024-06-12 19:43:22 +02:00
Nick Wellnhofer
669bd34993 xpointer: Remove support for XPointer locations
The latest spec for what it essentially an XPath extension seems to be
this working draft from 2002:

    https://www.w3.org/TR/xptr-xpointer/

The xpointer() scheme is listed as "being reviewed" in the XPointer
registry since at least 2006. libxml2 seems to be the only modern
software that tries to implement this spec, but the code has many bugs
and quality issues.

If you configure --with-legacy, old symbols are retained for ABI
compatibility.
2024-06-12 18:20:01 +02:00
Nick Wellnhofer
dba1ed85a3 ftp: Remove FTP support
Remove the built-in FTP client. If you configure --with-legacy, old
symbols are retained for ABI compatibility.
2024-06-12 18:19:55 +02:00
Nick Wellnhofer
5238404325 parser: Pass resource type to resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
f96dca9c0e xmllint: Switch to resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
ab5e6debd1 parser: Introduce XML_INPUT_NETWORK input flag
This allows to disable network access when creating parser inputs with
xmlInputCreateUrl.
2024-06-12 16:36:12 +02:00
Nick Wellnhofer
780e432a5c fuzz: Move to per-context error handler 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
116d8c0166 fuzz: Move to per-context resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
89fcae4dfd parser: Don't report malloc failures when creating context
We don't want messages to stderr before an error handler could be set on
a parser context.
2024-06-12 16:36:12 +02:00
Nick Wellnhofer
ef8dc4f673 schemas: Add callbacks for resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
fd7d9e5eca reader: Add callbacks for resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
fa2592b384 xinclude: Add callbacks for resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
886c427ab7 c14n: Move some static xmlNs variables to the stack
Static variables aren't thread-safe.
2024-06-12 16:36:12 +02:00
Nick Wellnhofer
40b76edac4 relaxng: Add callbacks for resource loader 2024-06-12 16:36:12 +02:00
Nick Wellnhofer
89743f8b0c test: Disable catalogs with xmlCatalogSetDefaults
Disable catalogs instead of tracking catalog allocations, simplifying
memory leak detection.

Also stop using xmlNoNetExternalEntityLoader.
2024-06-12 16:36:12 +02:00
Nick Wellnhofer
64ad272525 parser: Introduce per-context resource loader 2024-06-12 16:22:52 +02:00
Nick Wellnhofer
b9d2f3c911 parser: Introduce new input API
- xmlInputCreateUrl
- xmlInputCreateMemory
- xmlInputCreateString
- xmlInputCreateFd
- xmlInputCreateIO
- xmlInputSetEncoding

These functions don't take a parser context and work on xmlParserInputs,
replacing functions working on xmlParserInputBuffers.

xmlInputCreateUrl and xmlInputSetEncoding offer fine-grained error
handling.

Several XML_INPUT_* flags offer additional control.
2024-06-12 16:22:52 +02:00
Nick Wellnhofer
410931e385 parser: Only set input ID for PE refs
Other input streams don't require IDs.
2024-06-12 16:22:52 +02:00
Nick Wellnhofer
a3b2baeb67 parser: Simplify xmlNewInputFromFile 2024-06-12 16:22:52 +02:00
Nick Wellnhofer
0b58838764 parser: Rework XML_PARSE_NONET handling 2024-06-12 16:22:52 +02:00
Nick Wellnhofer
ff3b091910 parser: Implement XML_PARSE_NO_UNZIP option 2024-06-12 16:14:15 +02:00
Nick Wellnhofer
1432949d3c io: Pass input flags to xmlParserInputBufferCreateUrl 2024-06-12 16:14:15 +02:00
Nick Wellnhofer
b5890cb425 io: Remove xmlParserInputBufferCreateFilenameSafe 2024-06-12 16:14:15 +02:00
Nick Wellnhofer
1b1e8b3c12 io: Stop invoking generic error handler for IO errors 2024-06-12 16:14:15 +02:00
Nick Wellnhofer
a331526c8e io: Don't report write errors twice 2024-06-12 16:07:20 +02:00
Nick Wellnhofer
717f3a7b21 io: Fix resetting xmlParserInputBufferCreateFilename hook
We don't want to invoke the default function.
2024-06-12 16:04:45 +02:00
Nick Wellnhofer
47cbb6bb3c doc: Don't mention xmlNewInputURL 2024-06-12 16:04:45 +02:00
Nick Wellnhofer
b46decdfc9 Bump version 2024-06-12 15:58:36 +02:00
Nick Wellnhofer
cdd2575f7f Release v2.13.0 2024-06-12 15:45:38 +02:00
Nick Wellnhofer
d5523d27eb Update NEWS 2024-06-12 15:37:17 +02:00
Nick Wellnhofer
7a94fd0ba6 doc: Update documentation 2024-06-12 13:57:21 +02:00
Nick Wellnhofer
d3fafde7de test: Update testapi.c 2024-06-12 13:57:21 +02:00