also:
- fixed overflow for very long binary integer literals
- added optimization for parsing string views containing trailing null characters
- added more tests
also:
- significantly improved the performance of toml::parse_file
- improved the performance of printing to streams for deepy-nested TOML data
- simplified some of the examples
- added more tests
- cleaned up some of the test code
Mainly to simplify a the error handling code (it had gotten a bit verbose), but also to reduce compiled binary sizes.
also:
- moved windows terminal code page stuff in examples to a separate file
- added doxygen page for the configuration options
- added SPDX-License-Identifiers around the place
- changed TOML_UNRELEASED_FEATURES default to 0
- simplified ABI namespace machinery
- fixed a number of doxygen bugs
also:
- fixed parser not handling floats with leading '.' characters
- added `TOML_PARSER` configuration option
- added `TOML_LIB_SINGLE_HEADER` indicator
- moved parse_error and the utf8 stream machinery to separate headers
- updated catch2
also:
- fixed some parsing and printing ops being locale-dependent (fixes#19)
- fixed pkgconfig subdir being wrong (fixes#23)
- fixed some parsing errors at EOF when `TOML_EXCEPTIONS = 0`
- fixed some unreferenced variable warnings on older compilers
- fixed some 'maybe-uninitialized' false-positives on GCC9
- added debug/release awareness to CI tests
- added locale awareness to catch test runner
also:
- added note about `#include <fstream>` requirements README
- added tests for parse_result
- added array and table iterators to the toml namespace
see https://github.com/toml-lang/toml/issues/698 for info about TOML v1.0.0
also:
- fixed some parser error-paths not returning early enough when exceptions were disabled
- added more specific error messages for parsing errors relating to prohibited codepoints
- added compilation speed improvements (particularly for platforms lacking floating-point `std::to_chars`)
- added many minor documentation improvements
- added additional tests
also:
- fixed EOF bug in string parsing when exceptions are disabled
- fixed exception mode detection sometimes being incorrect on MSVC
- added short-form license preamble to all source files
- simplified license files
also:
- decoupled `TOML_EXCEPTION` from ex. mode (closes#13)
- added `TOML_OPTIONAL_TYPE` customization point
- added tests for a custom optional type
- ci refactoring
also:
- fixed printing bug in operator << for source_position
- improved quality of error messages for boolean and inf/nan parsing
- documentation fixes
also:
- fixed truncation of floating-point values when using ostreams
- fixed some minor documentation issues (fixes#8)
- fixed missing value deduction guides for dates and times
- added serialization round-trip tests (closes#9)
- added node::is_number()
- added node_view::is_number()
- added node_view::value_or() (closes#7)
- added hexfloat parsing support for all implementations, not just <charconv> ones
- added `toml::is_number<>`
- added `toml::node_type::none`
- added initializer_list and vector relops to `toml::array`
- added constructors for `time_offset` and `date_time`
- added much to `node_view`
- added tests for `node_view` value relops
- added lots more documentation
- removed `time_offset::from_hh_mm`
- removed the handling of `\s` literals (looks like it's not going be accepted as-is)
also:
- moved node_of to impl namespace
- added a lot more documentation
- fixed some bugs in the documentation generator
- fixed the license ID breaking github's license recognition