Releases: squirrelchat/smol-toml
v1.6.1
This release addresses a minor security vulnerability where an attacker-controlled TOML document can exploit an unrestricted recustion and cause a stack overflow error with a document that contains thousands of sucessive commented lines. Security advisory: GHSA-v3rj-xjv7-4jmq
v1.6.0
As of this version, smol-toml now supports the newly released TOML 1.1.0 specification!
Highlights
Multiline inline tables
TOML 1.1.0 now allows inline tables to have newlines, as well as trailing commas.
database = {
driver = "postgresql",
server = {
host = "127.0.0.1",
port = 3307,
},
}Omitting seconds in datetime and time
TOML 1.1.0 renders the seconds component of time elements optional.
datetime-tz = 1979-05-27 07:32Z
datetime = 2001-09-21 10:17
time = 13:37
New string escapes
Strings now support 2 additional escape sequences:
\xHHfor code points between 0 and 255\efor the escape character (U+001B)
What's Changed
- feat: toml 1.1 support by @cyyynthia in #49
Full Changelog: v1.5.2...v1.6.0
v1.5.2
Hot fix for v1.5.1... 🙃
What's Changed
- fix: properly stringify arrays of tables by @cyyynthia
Full Changelog: v1.5.1...v1.5.2
v1.5.1
Smol fix that makes newlines actually consistent when stringifying objects to TOML.
What's Changed
- fix: actually consistent newlines by @cyyynthia
Full Changelog: v1.5.0...v1.5.1
v1.5.0
This version improves the TOML output of the library when stringifying objects, courtesy of the folks over at Cloudflare.
Most notably, the lib no longer emits unnecessary table headers, and doesn't add an empty line between successive table headers anymore:
[look.at.me]
note = "In earlier versions, there would've been [look] and [look.at] generated as well."
[empty.table]
[another.empty.table]
[look.how.compact]
this = "looks"What's Changed
New Contributors
Full Changelog: v1.4.2...v1.5.0
v1.4.2
A smol fix to better handle strings with many successive backslash characters.
What's Changed
fix: string escape detection in util.ts by @cyyynthia
Full Changelog: v1.4.1...v1.4.2
v1.4.1
A little fix for asNeeded not being implemented correctly.
What's Changed
fix: properly implement asNeeded by @cyyynthia
Full Changelog: v1.4.0...v1.4.1
v1.4.0
This release introduces better support for integers, courtesy of @Gouvernathor! It is now possible to parse integers that are larger than 53 bits as BigInts. It is also possible to parse all integers as BigInts, enabling full type preservation of TOML documents.
The project is now tested against Node 24 as well, ensuring stability on the latest versions of Node.js.
What's Changed
- Use more detailed TOML types by @Gouvernathor in #40
- Serialize all numbers as floats by @Gouvernathor in #42
- Use bigint for large numbers by @Gouvernathor in #41
New Contributors
- @Gouvernathor made their first contribution in #40
Full Changelog: v1.3.4...v1.4.0
v1.3.4
Fixing some bugs that have been surfaced by the latest tests added to toml-test.
What's Changed
- fix: don't attempt to skip until comma if not in a structure by @cyyynthia
- fix: get extreme datetime to work by @cyyynthia
Full Changelog: v1.3.3...v1.3.4
