serd 0.28.0 has been released. Serd is a lightweight C library for RDF syntax which supports reading and writing Turtle, NTriples, TriG, and NQuads. For more information, see http://drobilla.net/software/serd.
- Add support for reading from a user provided callback
- Add serd_node_from_substring()
- Fix strict parsing of abolute URI schemes
- Fix parsing of hex escapes in file URIs (thanks Johannes Mueller)
- Gracefully handle applications that write corrupt UTF-8
- Fix hangs when reading corrupt UTF-8
serd 0.26.0 has been released. Serd is a lightweight C library for RDF syntax which supports reading and writing Turtle, NTriples, TriG, and NQuads. For more information, see http://drobilla.net/software/serd.
- Add support for TriG and NQuads
- Add support for braindead SPARQL PREFIX and BASE directives
serd 0.24.0 has been released. Serd is a lightweight C library for RDF syntax which supports reading and writing Turtle, NTriples, TriG, and NQuads. For more information, see http://drobilla.net/software/serd.
- Add serd_node_new_relative_uri()
- Fix construction and comparison of URIs with UTF-8 characters
- Report I/O errors with message and return appropriate status code
- Report missing statement separator errors
- Fix potential out of bounds read
- Fix unaligned memory access, undefined behaviour which breaks on ARM
- Fix documentation generation
- Update serdi man page
- Remove dependence on fmax() to avoid portability issues
- Fix serd_reader_read_file() for URIs with escaped characters (spaces)
- Add serd_reader_set_strict() and -l (lax) option to serdi to tolerate parsing URIs with escaped characters
- Fix reading statements ending with a blank then dot with no space
- Fix clash resolution when a blank node ID prefix is set
- Fix serializing fractional decimals that would round up
- Add support for Turtle named inline nodes extension
- Report errors for invalid IRI characters and missing terminators
- Show serdi errors in standard format
- Fix warnings when building with ISO C++ compilers
- Upgrade to waf 1.8.14
- Support new RDF 1.1 Turtle
- Don't write xsd:decimal literals to Turtle bare if they would not be read back with the same type
- Fix possible crash in serd_writer_end_anon() when writing invalid lists
- Generate blank names like :b1 and :B2 not :genid1 :docid2
- Correctly handle posix_memalign failure
- Fix const-correctness violation for reader input string
- Add -lm to pkg-config libs
- Update to waf 1.7.14
- Fix crash when serd_node_new_decimal is called with infinity or NaN
- Fix crash when resolving against non-standard base URIs
- Fix bug that caused "a" abbreviation in non-predicate position
- Disable timestamps in HTML documentation for reproducible build
- Fix clashing symbol "error" in amalgamation build
- Update to waf 1.7.8 and autowaf r90 (install docs to versioned directory)
- Support digits at start of local names as per new Turtle grammar
- Add incremental read interface suitable for reading from infinite streams
- Add -e option to serdi to use incremental reading
- Add error callback to reader and writer for custom error reporting
- Add -q option to serdi to suppress all non-data output, e.g. errors
- Reset indent when finishing a write
- Report write size correctly when invalid UTF-8 is encountered and a replacement character is written
- Strip down API documentation to a single clean page
- Fix various hyper-strict warnings
- Do not require a C++ compiler to build
- Add option to build utilities as static binaries
- Upgrade to waf 1.7.2
- Use path variables in pkgconfig files
- Install man page to DATADIR (e.g. PREFIX/share/man, not PREFIX/man)
- Tolerate invalid characters in string literals by replacing with the Unicode replacement character
- Report reason for failure to open file in serdi
- Improve write performance by doing bulk writes for unescaped substrings
- Add SerdBulkSink for writing bulk output and corresponding serdi -B option
- Add serdi -f option to prevent URI qualification
- Remove use of multi-byte peek (readahead) and use exactly 1 page for read buffer (instead of 2)
- 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.
- Add serd_strtod(), serd_node_new_decimal(), and serd_node_new_integer() for locale-independent numeric node parsing/serialising.
- Add serd_file_sink for easy writing to a FILE* stream.
- Add serd_chunk_sink for easy writing to a string.
- Escape ASCII control characters in output (e.g. fix problems with string literals that start with a backspace)
- Improve URI resolution to cover most of the abnormal cases from RFC3986
- Support file://localhost/foo URIs in serd_uri_to_path()
- Support Windows file://c:/foo URIs in serd_uri_to_path() on all platforms
- Add serd_node_new_blob and serd_base64_decode for handling arbitrary binary data via base64 encoding.
- Support compilation as C++ under MSVC++.
- Implement pretty-printing for collections.
- Parse collections iteratively in O(1) space.
- Report read error if both "genid" and "docid" IDs are found in the same document, to prevent silent merging of distinct blank nodes.
- Handle files and strings that start with a UTF-8 Byte Order Mark.
- Add serd_writer_get_env().
- Add serd_node_new_file_uri() and serd_file_uri_parse() and implement proper URI to/from path hex escaping, etc.
- Add serd_uri_serialise_relative() for making URIs relative to a base where possible (by chopping a common prefix and adding dot segments).
- Make URIs serialised by the writer properly escape characters.
- Add serd_writer_set_root_uri() and corresponding -r option to serdi to enable writing URIs with up references (../).
- Resolve dot segments in serd_uri_resolve() instead of at write time.
- Add serd_reader_set_default_graph() for reading a file as a named graph.
- Fix pretty printing of successive blank descriptions, i.e. "] , ["
- Avoid writing illegal Turtle names as a result of URI qualifying
- Gracefully handle NULL reader sinks
- Add serd_strerror
- Add serd_env_set_prefix_from_strings for convenience
- Fix erroneously equal SERD_ERR_BAD_SYNTAX and SERD_ERR_BAD_ARG
- Add ability to build static library
Page 1 / 2 »