Skip to content

Releases: ToruNiina/toml11

version 4.0.3

06 Jul 12:45
Compare
Choose a tag to compare

Fixed

  • remove default template argument from forward declaration in toml_fwd.hpp
  • enable to call make_error_info with multiple toml::values
  • enable to copy/move result with std::reference_wrapper
  • fix document generation error with the latest version of hugo
  • fix several tiny errors that causes warning
  • fix CMake compatibility warning

Changed

  • add -Werror / /WX to build script
  • set MSVC warning level to /W4
  • add explanation of features to README

version 4.0.2

30 Jun 15:26
Compare
Choose a tag to compare

Fixed

  • check return value of fread in parse(FILE*) (#249)
  • version macro defined in toml11/version.hpp (#250)
  • update docs about compilation
  • update docs about file open mode

Changed

  • use version macros defined in toml11/version.hpp as the project version in CMakeLists.txt

version 4.0.1

23 Jun 15:32
Compare
Choose a tag to compare

v4.0.1

Fixed

  • Resolved naming conflict of sematic_version::{major, minor} with macros defined in <sys/sysmacro.h> (#246 )
  • Fixed the definition of operator<< in discard_comments (#248) (#247 ) (by @egorpugin)
  • Fixed the issue where the first blank line was not output in format_location
  • Fixed the issue where error messages pointing to source_location referring to lines containing only newline characters were displayed in two lines
  • Corrected links in the README
  • Corrected the title of the README in example/unicode

Added

  • Configured CI to automatically update single_include/toml.hpp when changes are made to main

version 4.0.0

16 Jun 16:02
Compare
Choose a tag to compare

Major version update!

Added features

  • Added toml::spec to control TOML version
  • Added toml::parse variants, e.g. nothrow version, string version, and byte array version
  • Added formatting information to toml::value (e.g. inline tables, hex ints, etc).
  • Changed to saving comments in toml::value by default.
  • Added single_include/toml.hpp.
  • Enabled to use as a precompiled library.
  • Added reference manual.

Breaking Changes

  • Changed branch from master to main.
  • Changed template arguments of toml::basic_value.
  • Removed toml::string and explicitly store formatting information of all the values.
  • Modified arguments of toml::format to accommodate formatting information.
  • Changed default arguments of toml::parse to take toml::spec for specifying TOML version information.
  • Updated the interface of toml::source_location to accommodate multiline regions.
  • Modified arguments of toml::format_error.
  • Renamed toml::format_underline to toml::format_location.
  • Unified control method of toml::color to toml::color::enable/disable().

version 3.8.1

07 Jan 11:08
Compare
Choose a tag to compare

Fixed

  • stop using strerror_x variants in toml::parse(FILE*) overload (#235)

version 3.8.0

06 Jan 03:46
Compare
Choose a tag to compare

Fixed

  • Remove needless copy of std::string (#189) (by @muggenhor)
  • Report an error when integer overflows (#190)
  • Report an error if a table is inserted to array-of-table
  • Avoid self-assignment (#192)
  • Fix typo in README (#194) (by @spiderman-idog)
  • Avoid possible lexer truncation warnings (#196) (by @Jajauma)
  • Do not set CMAKE_CXX_STANDARD in CMakeLists (#202)
  • Fix function name in error messages (#207) (by @cxw42)
  • Fix invalid-utf8 error in literal string (#208) (by @cxw42)
  • Enable to reopen implicitly defined table (#211)
  • Fix long binary integer (#213)
  • Fix for case when vector iterator is raw pointer (#214) (by @VestniK)
  • Consider locale while serialization (#218)
  • Do not move temporary object (#229)
  • Escape control characters in keys (#230) (by @arp242)
  • Fix function signature of strerror_r on macos (#231, #233) (by @Esonhugh)
  • Limit value recursion depth (#234)

Added

Changed

  • Simplify unit test build (#200) (by @ctcmkl)
  • Update github actions checkout v2 to v3 (#210) (by @offa)
  • Update toml-test to v1.3.0
  • Add note for C++17 feature in README (#217)
  • Require CMake 3.5+ (#223) (by @offa)
  • Remove travis ci setup (#224) (by @offa)
  • Use secure version of strerror, instead of std (#226)

version 3.7.1

12 Mar 17:14
Compare
Choose a tag to compare

Fixed

Fixed many corner-cases.

  • spelling fixes (#167) (@karl-nilsson)
  • fix condition of inlining while serialization (#169) (@ohdarling)
  • fix warning on MSVC C26478 (#171) (@estshorter)
  • replace not in README by ! (#172) (@estshorter)
  • fix many warnings around macro (#176) (@phlptp)
  • fix g++ free-nonheap-object warning (#173) (#178) (@marascio)
  • make installation optional if embedded (#185) (@ax3l)
  • fix out_of_range exception with malformed toml file (#164)
  • workaround __cplusplus macro on MSVC (#182)
  • fix SFINAE condition while conversion (#177)
  • reorder macro to detect MSVC earlier (#166)
  • fix EOF after comment without line feed (#180)
  • fix serialization of empty key
  • fix serialization of NaN and Inf; use literal string instead of printf
  • fix serialization of an array containing a table; if an array has a table and other value (e.g. integer), the table must be inlined.
  • fix serialization of control chars in a string
  • disallow non-existing datetime
  • disallow 0x0A-1F in a string
  • disallow invalid UTF-8 sequence in a string
  • disallow subtable key conflict
  • disallow null char at the end of input (#181)
  • disallow mixing dotted key and inline table
  • disallow mixing dotted key and table (#183)
  • show better error message for a trailing comma in an inline table

version 3.7.0

27 May 02:50
Compare
Choose a tag to compare

Added

  • add a macro TOML11_PRESERVE_COMMENTS_BY_DEFAULT
  • add find_or(value, key1, key2, ..., keyN, opt) (#156)
  • add a macro TOML11_DEFINE_CONVERSION_NON_INTRUSIVE (#139)

Fixed

  • show filename of an empty file in error messages (#161) (@founderio)
  • suppress warnings by -Wshadow (#158)
  • fix uneven spacing between tables (#152)

Changed

  • define precedence between conversion function and constructor in toml::get/find (#159)

version 3.6.1

25 Mar 14:15
Compare
Choose a tag to compare

Fixed

  • workaround error in SFINAE with MSVC
  • compilation error in <filesystem> with MinGW (@chronoxor) (#136)
  • fix comment duplication while serialization (#131)
  • fix comment disappearance while serialization
  • fix empty array serialization (#142)
  • avoid string::back on an empty string (#141)
  • add missing include files (@amerry) (#144)
  • fix typo in an error message (@sneakypete81) (#148)
  • added TOML11_DISABLE_STD_FILESYSTEM to disable <filesystem> manually (related to: #150)

version 3.6.0

20 Sep 10:28
Compare
Choose a tag to compare

Added

  • Supported u8"..."_toml literal in C++20 mode (#104).
  • Allow comments before comma according to the clarification (ABNF change) in the TOML spec.

Changed

  • Improved the error message for the case of invalid key format.
  • Removed templates from internal implementation and it brings ~20% speedup for compilation without runtime speed loss.
  • Made testing optional in the CMakeLists (@MoAlyousef) (#130).

Fixed

  • Fixed the case when the file does not have line feed at the end of the file but 0 value (#128).
  • Fixed include path in the sample code (@kenichiice) (#127).