1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2026-01-28 10:01:00 +03:00
Commit Graph

900 Commits

Author SHA1 Message Date
Jan Pokorný
81958b6e94 Doc: do not mislead towards "infeasible" scenario wrt. xmlBufNodeDump
At least when merely public API is to be leveraged, one cannot use
xmlBufCreate function that would otherwise be a clear fit, and relying
on some invariants wrt. how some other struct fields will get
initialized along the construction/filling such parent struct and
(ab)using that instead does not appear clever, either.

Hence, instruct people what's the Right Thing for the moment, that is,
make them use xmlNodeDumpOutput instead (together with likewise public
xmlAllocOutputBuffer).

Going forward, it's questionable what do with xmlBuf* family of
functions that are once public, since they, for any practical purpose,
cannot be used by the library clients (that's how I've run into this).

Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
2019-08-25 13:23:49 +02:00
Nick Wellnhofer
37189c08e6 dict.h: gcc 2.95 doesn't allow multiple storage classes
This is a partial revert of commit c71f9305. I'm not sure what issue
this commit was trying to solve but it seems to be related to a
circular dependency. It might be related to tree.h being included
from dict.h which is unnecessary.

Resolves !22.
2019-07-08 12:23:13 +02:00
Nick Wellnhofer
538d827cc0 Change git repo URL 2019-02-15 17:37:17 +01:00
Nick Wellnhofer
04fbfa3f19 Change bug tracker URL 2019-02-15 17:34:45 +01:00
Nick Wellnhofer
656df97d6d Remove outdated HTML file 2019-02-15 17:27:15 +01:00
Nick Wellnhofer
57d4329bd7 Merge testThreadsWin32.c into testThreads.c
Apply the same cross-platform modifications as previously in runtest.c.
2019-01-06 14:32:28 +01:00
Daniel Veillard
f8a8c1f59d Release of libxml2-2.9.9
* configure.ac doc/news.html doc/xml.html doc/libxml2.xsa: making changes for
    the release

Signed-off-by: Daniel Veillard <veillard@redhat.com>
2019-01-03 19:14:17 +01:00
Daniel Veillard
18890f471c Release of libxml2-2.9.8
* configure.ac doc/* libxml2.syms testapi.c: updated for the new release
2018-03-05 17:09:43 +01:00
Nick Wellnhofer
e03f0a199a Fix hash callback signatures
Make sure that all parameters and return values of hash callback
functions exactly match the callback function type. This is required
to pass clang's Control Flow Integrity checks and to allow compilation
to asm.js with Emscripten.

Fixes bug 784861.
2017-11-09 16:42:47 +01:00
Daniel Veillard
bc5a5d6583 Release of libxnl2-2.9.7
* configure.ac doc/news.html : update for release
* doc/news.html doc/xmlcatalog.1 doc/xmlcatalog_man.html: regenerated
2017-11-02 21:26:55 +01:00
Nick Wellnhofer
09f51ecbc5 Add Makefile rules to rebuild HTML man pages
This should make sure that the online version of the man pages for
xmllint and xmlcatalog stay up to date. Also rebuild both HTML
documents.
2017-10-24 14:29:26 +02:00
Jan Pokorný
ca01f8133e xmlcatalog: refresh man page wrt. quering system catalog easily
Also normalize "lookup" spelling.
2017-10-24 13:57:43 +02:00
Nick Wellnhofer
03a238f954 Use __linux__ macro in generated code 2017-10-07 15:22:57 +02:00
Daniel Veillard
4b4d3d8516 Release of libxml2-2.9.6
* configure.ac doc/xml.html doc/news.html: updated for release
2017-10-06 09:00:53 +02:00
Daniel Veillard
2960178fe8 Release of libxml2-2.9.5
* configure.ac, doc/xslt.html: updated for the release
* doc/*, python/setup.py, testapi.c: regenerated
2017-09-04 15:38:47 +02:00
Nick Wellnhofer
8bbe4508ef Spelling and grammar fixes
Fixes bug 743172, bug 743489, bug 769632, bug 782400 and a few other
misspellings.
2017-06-17 16:34:23 +02:00
Nick Wellnhofer
988a5a3b6b Build test programs only when needed
Add test programs to 'check_PROGRAMS' instead of 'noinst_PROGRAMS'.

Fixes bug 760457.
2017-06-17 15:44:50 +02:00
Nick Wellnhofer
b9b4b6b513 Fix doc/examples/index.py
In my previous commit that silenced some test output I didn't realize
that doc/examples/Makefile.am was autogenerated.

Also make index.py output deterministic by sorting the glob results.
2017-06-17 15:43:29 +02:00
Nick Wellnhofer
1ce1f7852c Fix invalid-source-encoding warnings in testWriter.c
Use hex escapes instead of binary data in source file.
2017-06-17 14:11:03 +02:00
Nick Wellnhofer
67f9f9d6c8 Misc fixes for 'make tests'
- Silence test output.
- Clean up after doc/examples tests.
- Adjust expected output for script tests.
- Add missing results for relaxng/pattern3

There are still two test failures I can't comment on:

- regexp/bug316338
- schemas/any4_0
2017-06-12 19:46:56 +02:00
Nick Wellnhofer
94613f64c0 Remove unused variables 2016-10-12 13:23:08 +02:00
Daniel Veillard
bdec2183f3 Release of libxml2-2.9.4
* doc/xml.html libxml.spec.in: updated for the release
* doc/*: regenerated but no API additions
2016-05-23 16:04:52 +08:00
Daniel Veillard
8effcb578e Fix apibuild for a recently added construct
commit c71f9305a9 added __XML_EXTERNC
cpp construct which not understood by apibuild, leading to make dist
failures, ask to ignore that construct.
2016-05-09 10:31:09 +08:00
Jan Pokorný
27aae65156 Fix typo: s{ ec -> cr }cipt
Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
2016-04-15 22:22:52 +08:00
Jan Pokorný
bb654feb9a Fix typos: dictio{ nn -> n }ar{y,ies}
Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
2016-04-15 22:22:48 +08:00
David Kilzer
c5ddd09537 Bug 760921: REGRESSION (8eb55d78): doc/examples/io1 test fails after fix for "xmlSaveUri() incorrectly recomposes URIs with rootless paths" <https://bugzilla.gnome.org/show_bug.cgi?id=760921>
* doc/examples/io1.res: Update expected result.
2016-04-08 10:33:30 +08:00
Daniel Veillard
6657afe83a Release of libxml2-2.9.3
* configure.ac: updated
* doc/*: regenerated
2015-11-20 17:55:11 +08:00
Daniel Veillard
73b2d73df8 Avoid XSS on the search of xmlsoft.org
query string need to be escaped before being displayed back
2015-07-03 20:58:33 +08:00
Daniel Veillard
726f67e2f1 Release of libxml2-2.9.2 2014-10-16 15:40:16 +08:00
Daniel Veillard
af62eb4fab Python generator bug raised by the const change
the doc methode for xmlDocGetRootElement wasn't generated anymore
2014-10-13 16:40:56 +08:00
Patrick Monnerat
ea8c89b9b5 doc/news.html: small update to avoid line join while generating NEWS. 2014-10-04 21:13:47 +08:00
Daniel Veillard
4e73bfaee6 Fix a link to James SAX documentation old page 2014-07-12 17:46:46 +08:00
Daniel Veillard
e59c244e73 Add limitations about encoding conversion 2013-12-11 00:01:38 +08:00
Daniel Veillard
e38217ae82 Forgot to document 2.9.1 release, regenerate docs 2013-05-10 15:40:13 +08:00
Daniel Veillard
f4e5a6994e Release of libxml2-2.9.1
* configure.in: bumped version
* doc/*: updated the symbols file and regenerated
2013-04-19 15:36:36 +08:00
Roumen Petrov
4d7a32959b rebuild docs:Makefile.am 2013-04-01 16:53:27 +08:00
Daniel Veillard
54ae471c14 Regenerated API, and testapi, rebuild documentation
After the previous commit adding 2 new entry points
2013-04-01 16:42:12 +08:00
Daniel Veillard
d8a75bffa4 Converting apibuild.py to python3
not finished ....
2013-03-30 22:33:06 +08:00
Daniel Veillard
113384f126 Add documentation for xmllint --xpath
https://bugzilla.gnome.org/show_bug.cgi?id=694822

this wasn't documented in the man page, and there was a typo in
xmllint help output.
2013-03-27 11:43:41 +08:00
Daniel Veillard
f7aeda24f6 Fix the URL of the SAX docuemntation from James
as it has moved
2013-03-23 10:31:26 +08:00
Michael Wood
fb27e2cd20 Fix spelling of "length". 2012-10-30 10:18:49 +08:00
Daniel Veillard
38bbd3412d Release of libxml2-2.9.0
* libxml.spec.in: update
* doc/*: updated and regenerated
* libxml2.syms testapi.c: regenerated
2012-09-11 15:00:08 +08:00
Daniel Veillard
f8e3db0445 Big space and tab cleanup
Remove all space before tabs and space and tabs at end of lines.
2012-09-11 13:26:36 +08:00
Daniel Veillard
e00778b492 Followup to LibXML2 docs/examples cleanup patch 2012-09-08 21:09:26 +08:00
Daniel Richard
878ec9db9d Second round of cleanups for LibXML2 docs/examples
configure.am:

* Explicitly disallow --enable-rebuild-docs when builddir != srcdir, per
   what you said about needing to build docs with an in-source build

doc/Makefile.am:

* Ensure that xmlversion.h is in the source tree before running
   apibuild.py, to avoid generating an incomplete libxml2-api.xml

* Update the .PHONY target (forgot to do this earlier)

doc/devhelp/Makefile.am:

* Wrap the doc-generating rule in an "if REBUILD_DOCS" conditional so it
   doesn't cause trouble for regular users

* Added a handy-dandy "rebuild" target

doc/examples/index.py:

* NOTE: You need to run this script to regenerate the files it creates,
   and then commit the newly-updated files! The generated files currently
   in git master (e.g. doc/examples/Makefile.am) are out of date even
   before this patch!

* index.html really needs to be in EXTRA_DIST

* Wrap the doc-generating rules in an "if REBUILD_DOCS" conditional,
   because they shouldn't be active otherwise
2012-09-07 14:52:17 +08:00
Daniel Veillard
857104cd49 Remove all .cvsignore as they are not used anymore
For https://bugzilla.gnome.org/show_bug.cgi?id=682985
suggested by Adrian Bunk <bunk@stusta.de>
2012-09-04 14:25:23 +08:00
Vojtech Fried
3e031b7dae Switching XPath node sorting to Timsort
I use libxml xpath engine on quite large (and mostly "flat") xml files.
It seems that Shellsort, that is used in xmlXPathNodeSetSort is a
performance bottleneck for my case. I have read some posts about sorting
in libxml in the libxml archive, but I agree that qsort was not the way
to go. I experimented with Timsort instead and my results were good for
me. For about 10000 nodes, my test was about 5x faster with Timsort,
for 1000 nodes about 10% faster, for small data files, the difference
was not measurable.
* timsort.h: the algorithm, kept in a separate header
* xpath.c: plug in the new algorithm in xmlXPathNodeSetSort
* Makefile.am: add the header to the EXTRA_DIST
* doc/apibuild.py: avoid indexing the new header
2012-08-24 16:52:44 +08:00
Daniel Veillard
82cdfc4eb3 Expose xmlBufShrink in the public tree API
As suggested by Andrew W. Nosenko:
Proposal: expose the new xmlBufShrink() to the "public" API for
compatibility with xmlBufUse().

Reason: the following scenario:

1. Read something into  xmlParserInputBuffer (e.g. using
xmlParserInputBufferRead())
2. Extract content through xmlBufContent()
3. Extract content length through xmlBufUse().  Result have type
'size_t'.
4. Use this content
5. Now, you need to shrink the buffer.  How to do it?  Doing that
through legacy xmlBufferShrink() is unsafe because it uses 'unsigned
int' and the whole point of introducing the new API was handling the
cases, when 'unsigned int' is not enough.  Therefore, need to use the
new xmlBufShrink().  But it is "private".

Therefore, I propose to expose the new xmlBufShrink() in the same way,
as xmlBufContent() and xmlBufUse() are exposed.
2012-08-22 11:05:09 +08:00
Daniel Richard G
6842ee810e More cleanups to the documentation part of libxml2
doc/Makefile.am:

* Build what's in doc/ before doc/devhelp/, as the dependency graph flows
   that way

* Add "--path $(srcdir)" so that xsltproc can find DTDs in srcdir

* Replaced $(top_srcdir)/doc with an equivalent $(srcdir)

* Qualified libxml2-api.xml with $(srcdir) as it's always generated there

* Rewrote the dependencies for libxml2-api.xml so that xmlversion.h
   doesn't throw everything off

doc/devhelp/Makefile.am:

* Use Automake constructs to install the HTML files instead of an
   install-data-local rule

* Reorganized the file a bit (hello whitespace!)

* EXTRA_DIST doesn't need to list so many files now that dist_devhelp_DATA
   is being used

* Only print "Rebuilding devhelp files" if rebuilding is actually
   occurring

doc/examples/index.py:

* Make the "this file is auto-generated" banner more prominent

* Autotools updates: Use AM_CPPFLAGS/AM_CFLAGS instead of INCLUDES

* Got rid of DEPS as it's not needed (Automake already sees the dependency
   on libxml2.la by way of LDADD(S))

* Replaced LDADDS with LDADD, which is applied to all programs listed
   in the file. Since all the test programs have the same link
   dependencies, this way is more concise yet equivalent.

* Remove the *.tmp files via "make clean" instead of having the test
   programs do it themselves (more on this later)

* Invoke index.py in srcdir, as it pretty much needs to run there

* Restructured the index.html rule so that only the xmllint invocation is
   allowed to fail

* Use $(MKDIR_P) instead of $(mkinstalldirs), $(VAR) instead of @VAR@

* Remove symlinks for test?.xml in an out-of-source build

* Sort lists for neatness

* Better formatting for EXTRA_DIST and noinst_PROGRAMS variables

* Simplified the Automake bits printed for each program: *_LDFLAGS doesn't
   need to be specified as it's empty anyway, *_DEPENDENCIES is redundant,
   *_LDADD isn't needed due to the global LDADD

* Added a bit that symlinks in test?.xml from srcdir in out-of-source
   builds. This allows the reader4 test to read these files in the current
   directory, which ensures that the output always looks the same (i.e.
   does not contain references to srcdir)

* Don't hide the test program invocation (or else it's hard to tell which
   test failed), and don't use superfluous parentheses

* NOTE: If you check in these changes, be sure to run this script and also
   check in the updated files that it generates!

doc/examples/*.c:

* Updated the test: lines so that

   + "&&" is used to separate commands instead of ";" so that errors are
     not masked

   + reference files are qualified with $(srcdir)/

   + no "rm" takes place -- these are a problem because (1) if a test
     fails, it's useful to have the output file ready for inspection; (2)
     the "rm" invocation masks a potential non-zero exit status from diff

     (This is why I added the CLEANFILES line above)

doc/examples/io1.res:

* Updated this ref file so that the test passes. (This is correct, right?)

doc/examples/reader4.res:

* Changed this back to its original form, as the symlinking of test?.xml
   means this file no longer has to contain path prefixes on the filenames

doc/examples/testWriter.c:

* Changed the output filenames to *.tmp instead of *.res, partly for
   consistency, partly to not have to add special cases to CLEANFILES

doc/examples/xpath1.c:

* Removed the "./" prefix on the test invocation, which is redundant as
   index.py already adds one
2012-08-17 09:58:38 +08:00
Daniel Veillard
64d11249a5 Fix missing xmlsave.h module which was ignored in recent builds
due to "save.h" rule discarding it too
2012-08-15 09:15:30 +08:00