Releases: ToruNiina/toml11
Releases · ToruNiina/toml11
version 3.6.1
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
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).
version 3.5.0
Added
- support conversion from toml array into
std::forward_list
- cut out the need of default constructor when converting a toml value into a user-defined struct (#108)
- remove
TOML11_UNRELEASED_FEATURES
because all of them are released in v1.0.0-rc1 - parse nanoseconds in date-time types (Scott McCaskill) (#117)
- accept
std::filesystem::path
in C++17 (#113) - add
TOML11_VERSION_(MAJOR|MINOR|PATCH)
macros totoml.hpp
(#114)
Fixed
version 3.4.0
Changed
- use ExternalProject to retrieve TOML test data (@jwillikers)
- simplify serializer's template argument
- format the message in exceptions thrown from
.at()
- show function name from which
toml::type_error
is thrown
Fixed
- workaround an error in gcc 4.8.x
- fix exception section in the README (#107)
version 3.3.1
Fixed
- Fix clang
-Wrange-loop-analysis
. (#98) (@jwillikers )- Avoid the unnecessary copy of strings.
- Fix clang
-Wundef
. (#99) (@jwillikers )- Check environment-specific macro definition before using it
- Use cache variables in CMakeLists (#101 ) (@jwillikers )
- Fix edge cases around TOML strings.
- Recently TOML spec clarified behaviors in some edge cases around strings.
- toml11 now works with all the following examples listed in the official spec.
- toml11 serializer output becomes cleaner in those edge-cases.
# The following examples are copied from the official TOML spec.
str4 = """Here are two quotation marks: "". Simple enough."""
# str5 = """Here are three quotation marks: """.""" # INVALID
str5 = """Here are three quotation marks: ""\"."""
str6 = """Here are fifteen quotation marks: ""\"""\"""\"""\"""\"."""
# "This," she said, "is just a pointless statement."
str7 = """"This," she said, "is just a pointless statement.""""
quot15 = '''Here are fifteen quotation marks: """""""""""""""'''
# apos15 = '''Here are fifteen apostrophes: '''''''''''''''''' # INVALID
apos15 = "Here are fifteen apostrophes: '''''''''''''''"
# 'That's still pointless', she said.
str = ''''That's still pointless', she said.'''
version 3.3.0
Added
- add
find<T>(value, "array", 1)
(#79 ) - enable
find<UserDefined>(value, "user-defined")
whenUserDefined
struct has a constructor fromtoml::value
. - add
toml::value::size()
for array, table, and string values. - add
toml::value::push_back(value)
,toml::value::emplace_back(Ts...)
for array values. - add
toml::value::count(key)
,toml::value::contains(key)
for table values.
Fixed
- suppress warnings related to some flags that are not turned on by
-Wall
and-Wextra
Misc
- run LLVM address sanitizer and LLVM undefined behavior sanitizer on CI
- add many other warning flags that are not turned on by
-Wall
and-Wextra
on CI build - add
-Werror
on CI build
version 3.2.1
Fixed
- fix format of columns in an error message when two lines that have a different number of digits are rendered
- make inline tables immutable (toml-lang/toml#630)
version 3.2.0
Added
- Enable to get
toml::source_location
fromtoml::syntax_error
andtoml::type_error
(#87) - Allow heterogeneous array when
TOML11_UNRELEASED_TOML_FEATURES
is defined (toml-lang/toml #656) - Add
toml::basic_value::operator[]
- Colorize error messages if
TOML11_COLORIZE_ERROR_MESSAGE
is defined
Fixed
- Check the input file is null-terminated (#88)
- Fix macro to check
localtime_r
is available (#92, @blockparty-sh) - Suppress unused variable warning in release mode (#94, @blockparty-sh)
- Suppress warning about a workaround for intel compiler (@kenichiice)
- Fix offset datetime conversion; consider DST (#90)
version 3.1.0
Added
- support unreleased toml feature (with
TOML11_USE_UNRELEASED_TOML_FEATURES
)- Leading zeroes in exponent parts of floats are permitted.
- Allow raw tab characters in basic strings and multi-line basic strings.
- add utility accessor function
toml::value::at
val.as_table().at("key")
->val.at("key")
val.as_array().at(0)
->val.at(0)
Fixed
- Fix example code in README.md (@jcmoyer )
- Fix conversion requirements
- Warnings about rvalue references in clang
version 3.0.1
- Fix documentation
- Fix version information in CMake (
v3.0.1
) - Fix
find_or
fortoml::value
itself by adding overload