serd (0.30.1) unstable; * Fix GCC 4 build * Fix colliding blank nodes when parsing TriG * Fix missing parse error messages * Fix parsing "a" abbreviation without padding whitespace * Fix parsing TriG graphs with several squashed trailing dots * Fix resolving some URIs against base URIs with no trailing slash * Improve documentation -- David Robillard Sat, 30 Mar 2019 11:57:54 +0000 serd (0.30.0) stable; * Add NTriples test suite * Add basic error tolerant parsing for line-based formats * Add serd_free for freeing memory allocated by serd * Add serdi option to write ASCII output * Clarify errors returned by serd_env_expand() * Clean up testing code * Fix building with MSVC * Fix length of base64 encoded nodes * Fix parsing local names that end with escaped dots * Fix reported error when reading statements with only a blank node * Improve relative URI serialisation * Make serdi guess input syntax from extension if unspecified * Make serdi syntax options case-insensitive * Report errors for all failing test cases * Support strict parsing of prefixed names * Upgrade to waf 2.0.9 and autowaf a328983 * Use more efficient stack allocation and growth policies -- David Robillard Sun, 22 Jul 2018 18:34:09 +0000 serd (0.28.0) stable; * Add serd_node_from_substring() * Add support for reading from a user provided callback * Fix hangs when reading corrupt UTF-8 * Fix parsing of hex escapes in file URIs (thanks Johannes Mueller) * Fix strict parsing of abolute URI schemes * Gracefully handle applications that write corrupt UTF-8 -- David Robillard Fri, 21 Jul 2017 06:28:47 +0000 serd (0.26.0) stable; * Add support for TriG and NQuads * Add support for braindead SPARQL PREFIX and BASE directives -- David Robillard Tue, 10 Jan 2017 01:10:35 +0000 serd (0.24.0) stable; * Add serd_node_new_relative_uri() * Fix construction and comparison of URIs with UTF-8 characters * Fix documentation generation * Fix potential out of bounds read * Fix unaligned memory access, undefined behaviour which breaks on ARM * Report I/O errors with message and return appropriate status code * Report missing statement separator errors * Update serdi man page -- David Robillard Tue, 20 Sep 2016 02:21:47 +0000 serd (0.22.0) stable; * Add serd_reader_set_strict() and -l (lax) option to serdi to tolerate parsing URIs with escaped characters * Add support for Turtle named inline nodes extension * Fix clash resolution when a blank node ID prefix is set * Fix reading statements ending with a blank then dot with no space * Fix serd_reader_read_file() for URIs with escaped characters (spaces) * Fix serializing fractional decimals that would round up * Fix warnings when building with ISO C++ compilers * Remove dependence on fmax() to avoid portability issues * Report errors for invalid IRI characters and missing terminators * Show serdi errors in standard format * Upgrade to waf 1.8.14 -- David Robillard Thu, 08 Oct 2015 19:34:18 +0000 serd (0.20.0) stable; * Add -lm to pkg-config libs * Correctly handle posix_memalign failure * Don't write xsd:decimal literals to Turtle bare if they would not be read back with the same type * Fix const-correctness violation for reader input string * Fix possible crash in serd_writer_end_anon() when writing invalid lists * Generate blank names like _:b1 and _:B2 not _:genid1 _:docid2 * Support new RDF 1.1 Turtle * Update to waf 1.7.14 -- David Robillard Fri, 08 Aug 2014 22:02:54 +0000 serd (0.18.2) stable; * Disable timestamps in HTML documentation for reproducible build * Fix bug that caused "a" abbreviation in non-predicate position * Fix clashing symbol "error" in amalgamation build * Fix crash when resolving against non-standard base URIs * Fix crash when serd_node_new_decimal is called with infinity or NaN * Update to waf 1.7.8 and autowaf r90 (install docs to versioned directory) -- David Robillard Sun, 23 Dec 2012 02:32:15 +0000 serd (0.18.0) stable; * Add -e option to serdi to use incremental reading * Add -q option to serdi to suppress all non-data output, e.g. errors * Add error callback to reader and writer for custom error reporting * Add incremental read interface suitable for reading from infinite streams * Add option to build utilities as static binaries * Do not require a C++ compiler to build * Fix various hyper-strict warnings * Report write size correctly when invalid UTF-8 is encountered and a replacement character is written * Reset indent when finishing a write * Strip down API documentation to a single clean page * Support digits at start of local names as per new Turtle grammar * Upgrade to waf 1.7.2 -- David Robillard Thu, 23 Aug 2012 04:18:34 +0000 serd (0.14.0) stable; * Add SerdBulkSink for writing bulk output and corresponding serdi -B option * Add serd_chunk_sink for easy writing to a string * Add serd_file_sink for easy writing to a FILE* stream * Add serd_node_new_blob and serd_base64_decode for handling arbitrary binary data via base64 encoding * Add serd_node_new_file_uri() and serd_file_uri_parse() and implement proper URI to/from path hex escaping, etc. * Add serd_reader_set_default_graph() for reading a file as a named graph * Add serd_strtod(), serd_node_new_decimal(), and serd_node_new_integer() for locale-independent numeric node parsing/serialising * Add serd_uri_serialise_relative() for making URIs relative to a base where possible (by chopping a common prefix and adding dot segments) * Add serd_writer_get_env() * Add serd_writer_set_root_uri() and corresponding -r option to serdi to enable writing URIs with up references (../) * Add serdi -f option to prevent URI qualification * Escape ASCII control characters in output (e.g. fix problems with string literals that start with a backspace) * Handle a quote as the last character of a long string literal in the writer (by escaping it) rather than the reader, to avoid writing Turtle other tools fail to parse * Handle files and strings that start with a UTF-8 Byte Order Mark * Implement pretty-printing for collections * Improve URI resolution to cover most of the abnormal cases from RFC3986 * Improve write performance by doing bulk writes for unescaped substrings * Install man page to DATADIR (e.g. PREFIX/share/man, not PREFIX/man) * Make URIs serialised by the writer properly escape characters * Parse collections iteratively in O(1) space * Remove use of multi-byte peek (readahead) and use exactly 1 page for read buffer (instead of 2) * Report read error if both "genid" and "docid" IDs are found in the same document, to prevent silent merging of distinct blank nodes * Report reason for failure to open file in serdi * Resolve dot segments in serd_uri_resolve() instead of at write time * Support Windows file://c:/foo URIs in serd_uri_to_path() on all platforms * Support compilation as C++ under MSVC++ * Support file://localhost/foo URIs in serd_uri_to_path() * Tolerate invalid characters in string literals by replacing with the Unicode replacement character * Use path variables in pkgconfig files -- David Robillard Tue, 17 Apr 2012 22:23:53 +0000 serd (0.5.0) stable; * Add ability to build static library * Add serd_env_set_prefix_from_strings for convenience * Add serd_strerror * Avoid writing illegal Turtle names as a result of URI qualifying * Fix erroneously equal SERD_ERR_BAD_SYNTAX and SERD_ERR_BAD_ARG * Fix pretty printing of successive blank descriptions, i.e. "] , [" * Gracefully handle NULL reader sinks -- David Robillard Thu, 29 Sep 2011 04:00:00 +0000 serd (0.4.2) stable; * Fix build system Python 3 compatibility * Fix compilation issues on some systems -- David Robillard Wed, 25 May 2011 23:00:00 +0000 serd (0.4.0) stable; * Initial release -- David Robillard Wed, 25 May 2011 03:00:00 +0000