| Age | Commit message (Collapse) | Author | 
|---|
|  | Previously the error offset pointed to the first mismatching character, which
can be confusing especially if the start tag name is a prefix of the end tag
name. Instead, move the offset to the first character of the name - that way
it should be more obvious that the problem is that the entire name mismatches.
Fixes #112. | 
|  | Perl version needed Archive::Zip that for some reason is not installed on WSL by
default. Use this as an opportunity to remove the last Perl script. | 
|  |  | 
|  | This test tests two important invariants:
- Every combination of write flags has to result in a valid document
- Parsing that document and saving the result has to result in identical output
We don't test all flags since parse_no_escapes can intentionally result in
malformed documents and other flags aren't relevant for node output.
Also note that we test both no-whitespace and whitespace version to make sure
we don't have unnecessary whitespace added during formatting. | 
|  | Also add it to the changelog for 1.8 | 
|  |  | 
|  | Setting this flag outputs start and end tag for every element, including empty
elements.
Fixes #118. | 
|  |  | 
|  |  | 
|  | Split some lines into two and add braces in some places to make the code more
readable. | 
|  | This keeps all code that creates document/allocator/page structures together. | 
|  | The separate copy of allocator state in parser was meant to increase parsing
performance by reducing aliasing/indirection, but benchmarks against the
current source don't indicate that this is worthwhile.
Removing this simplifies the code slightly and makes it possible to move
compact hash table to the allocator. | 
|  |  | 
|  | Some compilers support move semantics but don't support ranged for. | 
|  | MSVC 2010 supported move semantics (partially - but should be good enough for
our use case). | 
|  | Do it in one place and set PUGIXML_HAS_MOVE if it's available. | 
|  | VS 2013 supports C++11, but __cplusplus macro isn't updated, and it is 199711 so the old check always fails, even though the compiler supports c++11. | 
|  | Add C++11 'override' specifier | 
|  |  | 
|  |  | 
|  |  | 
|  | docs: Fix broken link at quickstart page | 
|  |  | 
|  | Select correct suffix to use for pkg-config | 
|  | Merge USEOWNSUBDIR and PKGCONFIG build flags; move the pkg-config source file
to scripts/. | 
|  |  | 
|  | Also creating a separate install directory under INCLUDE and LIB directories | 
|  | Remove static pivot from NuGet autopkg. | 
|  |  | 
|  | This pivot seemed to be causing issues because the NuGet package thought it was actually dynamic. | 
|  |  | 
|  | scripts: Add VS2013 static builds to nuget package | 
|  |  | 
|  |  | 
|  |  | 
|  | Include more configurations in the Nuget package. | 
|  | It interferes in a somewhat strange way with codecov reporting | 
|  | While I grew to dislike references for this case, there are other functions in
the source that use references so switch to that for consistency. | 
|  |  | 
|  |  | 
|  | This adds about 40 cycles for parsing <?xml version='1.0'?> declaration and
about 70 cycles for parsing <?xml version='1.0' encoding='utf-8'?>, as
measured on a Core i7, which should be negligible for all documents.
Fixes #16. | 
|  | It is probably redundant given that we have -Wold-style-cast, but it's better
to warn about casts like this in case we ever need to remove the latter flag. | 
|  | Fixes #99. | 
|  |  | 
|  |  | 
|  | Put CMakeLists.txt in the project root. | 
|  | Add vs2013 projects | 
|  |  | 
|  | Previously the page size was defining the data size, and due to additional
headers (+ recently removed allocation padding) the actual allocation was a bit
bigger.
The problem is that some allocators round 2^N+k allocations to 2^N+M, which can
result in noticeable waste of space. Specifically, on 64-bit OSX allocating the
previous page size (32k+40) resulted in 32k+512 allocation, thereby wasting 472
bytes, or 1.4%.
Now we have the allocation size specified exactly and just recompute the available
data size, which can in small space savings depending on the allocator. | 
|  | When using format_raw the space in the empty tag (<node />) is the only
character that does not have to be there; so format_raw almost results in
a minimal XML but not quite.
It's pretty unlikely that this is crucial for any users - the formatting
change should be benign, and it's better to improve format_raw than to add
yet another flag.
Fixes #87. |