NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #107 most downloaded on PyPI
A lil' TOML parser
Last release 6 months ago
25 Mar 2026
Ships unpredictably
gaps range from 2 weeks to 2.6 years
Nearly every release is documented
notes for 30 of 30 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
30 releases · first in 2021
One column per quarter.
Bump version: 2.4.0 → 2.4.1
Bump version: 2.4.0 → 2.4.1
Bump version: 2.3.0 → 2.4.0
Bump version: 2.3.0 → 2.4.0
Bump version: 2.3.0 → 2.3.1
Bump version: 2.3.0 → 2.3.1
Bump version: 2.2.1 → 2.3.0
Bump version: 2.2.1 → 2.3.0
Bump version: 2.2.0 → 2.2.1
Bump version: 2.2.0 → 2.2.1
Bump version: 2.0.2 → 2.1.0
Bump version: 2.0.2 → 2.1.0
TOMLDecodeError with free-form arguments.
msg, doc and pos arguments should be given.msg, doc, pos, lineno and colno attributes to TOMLDecodeErrorBump version: 2.0.1 → 2.0.2
Bump version: 2.0.1 → 2.0.2
loads raise TypeError not AttributeError on bad input types that do not have the replace attribute.
Improve error message when bytes is received.load input as typing.IO[bytes] (previously typing.BinaryIO).Bump version: 2.0.0 → 2.0.1
Bump version: 2.0.0 → 2.0.1
TypeError for wrong file modeparse_float to return objects having the append attrparse_float returns an illegal typepytest testing framework to unittest and remove python-dateutil test dependency.
Tests now only require Python interpreter.Bump version: 1.2.2 → 2.0.0
Bump version: 1.2.2 → 2.0.0
load input. Use binary file objects instead.load and loads can no longer be passed by keyword.Backport: Allow lower case "t" and "z" in datetimes
Illegal characters in error messages were surrounded by two pairs of quotation marks
TOMLDecodeError.__module__ is now the public import path (tomli) instead of private import path (tomli._parser)typing.TYPE_CHECKING is True.
This allows sphinx-autodoc-typehints to resolve type annotations.Type annotate load input as typing.BinaryIO only to discourage use of deprecated text file objects.
load input as typing.BinaryIO only to discourage use of deprecated text file objects.setup.py from PyPI source distribution.
If you're a packager and absolutely need this file, please create an issue.Text file objects as input to load. Binary file objects should be used instead to avoid opening a TOML file with universal newlines or with an encodin
load.
Binary file objects should be used instead to avoid opening a TOML file with universal newlines or with an encoding other than UTF-8.load can now take a binary file object
load can now take a binary file object- Performance - Minor boost (~4%)
Raise TOMLDecodeError instead of ValueError when parsing dates and datetimes that pass the regex check but don't correspond to a valid date or datetim
TOMLDecodeError instead of ValueError when parsing dates and datetimes that pass the regex check but don't correspond to a valid date or datetime.- Performance - Minor boost (~4%)
- Performance - A significant boost
Raise TOMLDecodeError instead of KeyError when overwriting implicitly in an inline table
TOMLDecodeError instead of KeyError when overwriting implicitly in an inline tableRaise TOMLDecodeError if overwriting nested inline tables from the parent inline
TOMLDecodeError if overwriting nested inline tables from the parent inlineTOMLDecodeError if escaped Unicode character is not a Unicode scalar valueTOMLDecodeError now raised when opening a table implicitly created by a key/value pair
TOMLDecodeError now raised when opening a table implicitly created by a key/value pairSignificant boost to comment parsing speed
Improved TOMLDecodeError error messages. Line and column are included when applicable.
TOMLDecodeError error messages.
Line and column are included when applicable.- Performance - Over 5% boost
Made exception type TOMLDecodeError when overwriting a value with a deeply nested table
TOMLDecodeError when overwriting a value with a deeply nested tableTOMLDecodeError is now raised when attempting to overwrite a value in an inline table's or array's namespace with a table definition
TOMLDecodeError is now raised when attempting to overwrite a value in an inline table's or array's namespace with a table definitionError type was not TOMLDecodeError in some obscure cases
tomli.load for parsing IO streams returned by open()
tomli.load for parsing IO streams returned by open()parse_float keyword argument to tomli.loads.
Allows parsing TOML floats to a non-float type in Python.TOMLDecodeError is now raised for duplicate keys in inline tables, as opposed to silently overriding the previous value
TOMLDecodeError is now raised for duplicate keys in inline tables,
as opposed to silently overriding the previous value- Changed - Project name to Tomli - Performance - A performance boost
Your coding agent can read these notes before it upgrades. Set up the MCP server →