Releases: toml-lang/toml-test
v1.5.0
Release v1.5.0
Changes
-
This release requires Go 1.19 to build.
-
Add quite a lot of new test.
-
Only "pass" an invalid test if the decoder exits with exactly exit 1, rather than any exit >0. This catches segfaults, panics, and other crashes which shouldn't be considered "passing".
-
Tests are now run in parallel, defaulting to the number of available cores. Use the
-parallel
flag to set the number of cores to use. -
Few small improvements to toml-test runner output.
New features
-
The
-copy
flag copies all tests to the given directory (taking the-toml
flag in to account). This is much easier than manually copying the files. -
Add
-errors
flag to test expected error messages for invalid tests. See-help
for details. -
Add
-print-skip
, to print out a small bash/zsh script with-skip
flags for tests that failed. Useful to get a list of "known failures" for CI integrations and such. -
Add
-timeout
flag to set the maximum execution time per test, to catch infinite loops and/or pathological cases. This defaults to 1s, but can probably be set (much) lower for most implementations. -
Add
-int-as-float
flag, for implementations that treat all numbers as floats. -
Add
-cat
flag to create a large (valid) TOML document, for benchmarks and such.
v1.4.0
-
Move from github.com/BurntSushi/toml-test to github.com/toml-lang/toml-test
In most cases things should keep working as GitHub will redirect things, but you'll have to update the path if you install from source with
go install
. -
Both TOML 1.0 and the upcoming TOML 1.1 are now supported.
If you implemented your own test-runner, then you should only copy/use the files listed in
tests/files-toml-1.0.0
(ortests/files-toml-1.1.0
). Some things that are invalid in 1.0 are now valid in 1.1.Also see "Usage without toml-test binary" in the README.md.
For the
toml-test
tool the default remains 1.0; add-toml 1.1.0
to use TOML 1.1. -
Add a few tests, and improve output on test failures a bit.
v1.3.0
A few minor fixes and additional tests; see the git log for details: v1.2.0...v1.3.0
v1.2.0
A few minor fixes and additional tests; see the git log for details: v1.1.0...v1.2.0
v1.1.0
v1.0.0
Many changes since the last release: much improved error output, support TOML 1.0.0, add several flags to give more control over which tests to run/skip.
Some minor incompatibilities in the test tool:
- You no longer need to add a type hint to arrays.
- Tests are always referenced as valid/[...] or invalid/[..]
- The datetime-local, date-local, and time-local types are added. You will need to add support for this in your -encode and -decode test helpers.
1.0.0-beta2
Various small bugfixes in the runner and improvements to the tests.
1.0.0-beta1
Update tests to TOML v1.0.0, and a number of improvements to the test runner tool.
May not be compressive yet; but GitHub needs a release to upload binaries 🤷 Since this requires Go 1.16, that makes it easier to run it from CIs and such.
Some minor incompatibilities in the test tool:
- You no longer need to add a type hint to arrays.
- tests are always referenced as valid/[...] or invalid/[..]
- The datetime-local, date-local, and time-local types are added. You will need to add support for this in your -encode and -decode test helpers.