Skip to main content

Apply a consistent format to your tox.toml file with comment support. See the releases for what changed.

Philosophy

This is an opinionated formatter, with the same objectives as black: it offers few configuration settings on purpose. In return you get consistency, predictability, and smaller diffs.

Use

Via CLI

tox-toml-fmt is a CLI tool that needs Python 3.10 or higher to run. Install it into an isolated environment with pipx or uv; that way you can upgrade tox-toml-fmt later without disturbing the rest of your system. A pip path follows for completeness, though we discourage it:

# install uv per https://docs.astral.sh/uv/#getting-started
uv tool install tox-toml-fmt
tox-toml-fmt --help

Via pre-commit hook

See pre-commit/pre-commit for instructions, sample .pre-commit-config.yaml:

- repo: https://github.com/tox-dev/tox-toml-fmt
  rev: "v1.0.0"
  hooks:
    - id: tox-toml-fmt

Via Python

Call tox-toml-fmt as a Python module to format TOML from your own code.

from tox_toml_fmt import run

# Format a tox.toml file and return the exit code
exit_code = run(["path/to/tox.toml"])

The run function accepts command-line arguments as a list and returns an exit code (0 for success, non-zero for failure).

The [tox-toml-fmt] table is used when present in the tox.toml file:

[tox-toml-fmt]

# After how many columns split arrays/dicts into multiple lines and wrap long strings;
# use a trailing comma in arrays to force multiline format instead of lowering this value
column_width = 120

# Number of spaces for indentation
indent = 2

# Extra newlines between sub-tables in the same group (e.g. "\n" for one blank line
# between sub-tables)
sub_table_spacing = ""

# Extra newlines between root table groups (e.g. "\n" for one blank line, "\n\n" for two)
separate_root_table = "\n"

# Environments pinned to the start of env_list
pin_envs = ["fix", "type"]

If not set they will default to values from the CLI. The example above shows the defaults (except pin_envs which defaults to an empty list).

Shared configuration file

Place formatting settings in a standalone tox-toml-fmt.toml file instead of (or alongside) the [tox-toml-fmt] table. In a monorepo this shares one configuration across projects without repeating it in every tox.toml.

The formatter searches for tox-toml-fmt.toml from the directory of the file being formatted up to the filesystem root, and the first match wins. Pass an explicit path via --config:

tox-toml-fmt --config /path/to/tox-toml-fmt.toml tox.toml

The shared config file uses the same keys as the [tox-toml-fmt] table, but without the table header:

column_width = 120
indent = 2
sub_table_spacing = ""
separate_root_table = "\n"
pin_envs = ["fix", "type"]

When both a shared config file and a [tox-toml-fmt] table exist, per-file settings from the [tox-toml-fmt] table take precedence over the shared config file.

Settings are read with the same parser that reads the file, so a value only TOML 1.1 spells does not hide the table they are written in. Every key there has to be one the formatter knows, written as the type its command-line flag takes; anything else is reported against the file and the key, and nothing is formatted.

tox-toml-fmt is an opinionated formatter, much like black is for Python code. It keeps configuration minimal so every tox.toml lands on one standard format. That buys you:

  • less time configuring tools

  • smaller diffs when committing changes

  • code reviews where formatting never comes up

A few options exist (column_width, indent, table_format, sub_table_spacing, separate_root_table), but there are no dozens of toggles.

General Formatting

These rules apply uniformly across the entire tox.toml file.

String Quotes

All strings use double quotes by default. Single quotes are only used when the value contains double quotes:

# Before
[env.test]
description = 'Run tests'
commands = ["echo \"hello\""]

# After
[env.test]
description = "Run tests"
commands = [ 'echo "hello"' ]

Key Quotes

TOML keys are normalized to the simplest valid form. Keys that are valid bare keys (containing only A-Za-z0-9_-) have redundant quotes stripped. Single-quoted (literal) keys that require quoting are converted to double-quoted (basic) strings with proper escaping. This applies to all keys: table headers, key-value pairs, and inline table keys:

# Before
[env.'my env']
"description" = "run tests"
pass_env = [{ "else" = "no" }]

# After
[env."my env"]
description = "run tests"
pass_env = [ { else = "no" } ]

Backslashes and double quotes within literal keys are escaped during conversion.

Array Formatting

Arrays are formatted based on line length, trailing comma presence, and comments. Short arrays stay on one line:

# Before
env_list = ["py312", "py313", "lint"]

# After
env_list = [ "py313", "py312", "lint" ]

Arrays that exceed column_width are expanded and get a trailing comma (shown here with a small column_width to keep the example short):

# Before
[env.test]
deps = ["pytest>=7", "coverage>=7", "tox>=4"]

# After
[env.test]
deps = [
  "coverage>=7",
  "pytest>=7",
  "tox>=4",
]

A trailing comma forces the multiline format, even for an array that would otherwise fit on one line:

# Before
deps = ["pytest>=7",]

# After
deps = [
  "pytest>=7",
]

A comment on an entry also forces the multiline format. Here ["pytest>=7", "coverage>=7"] would fit on one line, but the comment keeps it expanded:

deps = [
  "pytest>=7",   # testing framework
  "coverage>=7",
]

Multiline formatting rules:

An array becomes multiline when any of these conditions are met:

  1. Trailing comma present - A trailing comma signals intent to keep multiline format

  2. Exceeds column width - Arrays longer than column_width are expanded (and get a trailing comma added)

  3. Contains comments - Arrays with inline or leading comments are always multiline

String Wrapping

Strings whose line runs past column_width are wrapped using TOML multiline basic strings with line-ending backslashes (shown here with a small column_width). The line is measured from the start of its key, so a long key can be what pushes a value into wrapping; a key already wider than the column keeps its value on one line:

# Before
[env.test]
description = "run the entire unit test suite with coverage"

# After
[env.test]
description = """\
  run the entire unit test suite with \
  coverage\
  """

Specific keys can be excluded from wrapping using skip_wrap_for_keys. Patterns support wildcards (e.g. *.commands skips wrapping for commands under any table).

Table Formatting

Sub-tables can be formatted in two styles controlled by table_format:

Short format (default, collapsed to dotted keys):

[env.test]
description = "run tests"
sub.value = 1

Long format (expanded to table headers):

# Before
[env.test]
description = "run tests"
sub.value = 1

# After
[env.test]
description = "run tests"
[env.test.sub]
value = 1

Individual tables can override the default using expand_tables and collapse_tables.

Table spacing:

By default, different table groups are separated by a blank line, while sub-tables within the same group are kept compact. You can control this with sub_table_spacing and separate_root_table. Each option takes a string of \n characters where each \n adds one blank line. For example, setting sub_table_spacing = "\n" adds a blank line between sub-tables within the same environment.

Environment tables are always expanded:

Regardless of the table_format setting, [env.*] tables are never collapsed into dotted keys under [env]. Each environment always gets its own [env.NAME] table section:

# This is always the output format, even in short mode:
[env.fix]
description = "fix"

[env.test]
description = "test"

# Dotted keys under [env] are automatically expanded:
# [env]
# fix.description = "fix"    →    [env.fix]
#                                  description = "fix"

Sub-tables within an environment (e.g. [env.test.sub]) still follow the table_format setting, and are ordered by the same environment key order as dotted keys: ones the order lists (such as set_env) come first, the rest follow alphabetically.

Comment Preservation

All comments are preserved during formatting:

  • Inline comments - Comments after a value on the same line stay with that value

  • Leading comments - Comments on the line before an entry stay with the entry below

  • Block comments - Multi-line comment blocks are preserved

Inline comment alignment:

Inline comments within arrays are aligned independently per array, based on that array’s longest value:

# Before
deps = [
  "pytest", # testing
  "pytest-cov",  # coverage
  "pytest-mock", # mocking
]

# After
deps = [
  "pytest",      # testing
  "pytest-cov",  # coverage
  "pytest-mock", # mocking
]

Disabled Keys

A commented-out line whose body is itself a single valid key-value (for example # set_env = { A = "1" }) is treated as a temporarily disabled field rather than free text. The formatter enables it for the duration of the pass, so it is laid out and ordered together with the table it belongs to, then comments it out again on the way out. This keeps a disabled key anchored to its entry instead of drifting to the next table, and formats the line the same way the enabled key would be:

# Before
[env_run_base]
description = "run the tests"
# set_env = {A = "1"}

# After
[env_run_base]
description = "run the tests"
# set_env = { A = "1" }

Comments that are not a single valid key-value (prose, multi-line blocks, commented-out table headers like # [env.docs]) are left untouched and follow the usual comment-preservation rules above. The heuristic is purely structural, so a prose comment that happens to be valid TOML is reflowed too; if that matters, phrase the comment so it does not parse as a key-value. Keys that would not fit on a single line within column_width are left as plain comments.

Group Markers

By default the formatter reorders each array and table as a single unit, so any entry can move to its sorted position. Mark a boundary with a standalone comment that starts with # Group:: the formatter then sorts within each group, holds the groups in their original order, and keeps the marker at the top of its group. Reach for this when related entries belong together but should still be sorted.

Files without a # Group: marker format the same as before, so the feature stays opt-in. Case does not matter, so # group: works too. Only standalone comment lines count; the formatter ignores inline trailing comments.

# Before
[env.test]
deps = [
  # Group: runtime
  "requests",
  "click",
  # Group: testing
  "pytest-cov",
  "pytest",
]

# After
[env.test]
deps = [
  # Group: runtime
  "click",
  "requests",
  # Group: testing
  "pytest",
  "pytest-cov",
]

Line Endings

The formatter writes a file back with the line ending it already used, so a \r\n file stays \r\n and Git on Windows does not flag it as modified. A file mixing both endings gets whichever one it uses more, with a tie going to \n. Line endings alone never count as a change, so a file that is already formatted is left alone whichever ending it uses. Output written to stdout always uses \n.

Table-Specific Handling

Beyond general formatting, tables have specific key ordering, value normalization, and sorting rules.

Table Ordering

Tables are reordered into a consistent structure:

  1. Root-level keys (min_version, requires, env_list, etc.)

  2. [env_run_base]

  3. [env_pkg_base]

  4. [env_base.*] sections (shared base configurations)

  5. [env.NAME] sections ordered by env_list if specified

  6. Any remaining [env.*] sections not in env_list, sorted alphabetically

  7. [env] (catch-all environment table, if present)

# env_list determines the order of [env.*] sections
env_list = ["lint", "type", "py312", "py313"]

[env_run_base]
deps = ["pytest>=7"]

[env_pkg_base]
# ...

[env_base.ci]
# shared base config

# Environments appear in env_list order:
[env.lint]
# ...

[env.type]
# ...

[env.py312]
# ...

[env.py313]
# ...

Environments not listed in env_list are placed at the end, sorted alphabetically.

Alias Normalization

Legacy INI-style key names are renamed to their modern tox 4 TOML equivalents. This applies automatically to the root table, [env_run_base], [env_pkg_base], and all [env.*] tables.

Root table aliases:

# Before
envlist = ["py312", "py313"]
minversion = "4.2"
skipsdist = true

# After
min_version = "4.2"
env_list = [ "py313", "py312" ]
no_package = true

Full list: envlistenv_list, toxinidirtox_root, toxworkdirwork_dir, skipsdistno_package, isolated_build_envpackage_env, setupdirpackage_root, minversionmin_version, ignore_basepython_conflictignore_base_python_conflict

Environment table aliases:

# Before
[env_run_base]
basepython = "python3.12"
setenv.PYTHONPATH = "src"
passenv = ["HOME"]

# After
[env_run_base]
base_python = "python3.12"
pass_env = [ "HOME" ]
setenv.PYTHONPATH = "src"

Full list: setenvset_env, passenvpass_env, envdirenv_dir, envtmpdirenv_tmp_dir, envlogdirenv_log_dir, changedirchange_dir, basepythonbase_python, usedevelopuse_develop, sitepackagessystem_site_packages, alwayscopyalways_copy

Root Key Ordering

Keys in the root table are reordered into a consistent sequence:

min_versionrequiresprovision_tox_envenv_listlabelsbasepackage_envpackage_rootno_packageskip_missing_interpretersignore_base_python_conflictwork_dirtemp_dirtox_root

# Before
env_list = ["py312", "lint"]
requires = ["tox>=4.2"]
min_version = "4.2"

# After
min_version = "4.2"
requires = [ "tox>=4.2" ]
env_list = [ "py312", "lint" ]

Environment Key Ordering

Keys within [env_run_base], [env_pkg_base], and [env.*] tables are reordered to group related settings:

factorsrunnerdescriptionbase_pythondefault_base_pythonsystem_site_packagesalways_copydownloadvirtualenv_specpackagepackage_envwheel_build_envpackage_tox_env_typepackage_rootskip_installuse_developmeta_dirpkg_dirpip_preinstall_commandlist_dependencies_commanddepsdependency_groupspylockconstraintsconstrain_package_depsuse_frozen_constraintsextrasrecreaterecreate_commandsparallel_show_outputskip_missing_interpretersfail_fastpass_envdisallow_pass_envset_envchange_dirplatformargs_are_pathsignore_errorscommands_retryignore_outcomeextra_setup_commandscommands_precommandscommands_postallowlist_externalslabelssuicide_timeoutinterrupt_timeoutterminate_timeoutdependsenv_direnv_tmp_direnv_log_dir

The keys of a set_env table keep the order the file gave them: tox reads that table in order, so a key written after file overrides what the file said while one written before it does not.

# Before
[env_run_base]
commands = ["pytest"]
deps = ["pytest>=7"]
description = "run tests"

# After
[env_run_base]
description = "run tests"
deps = [ "pytest>=7" ]
commands = [ "pytest" ]

requires Normalization

Dependencies in the root requires array are normalized per PEP 508 (canonical package names, consistent spacing around specifiers) and sorted alphabetically by package name:

# Before
requires = ["tox >= 4.2", "tox-uv"]

# After
requires = [ "tox>=4.2", "tox-uv" ]

env_list Order

The env_list array is written in a fixed order:

  1. Pinned environments, in the order --pin-env names them

  2. CPython versions (py3.12, py312, 3.12), newest first

  3. PyPy versions (pypy3.10, pypy310), newest first

  4. Everything else (lint, type, docs), by name

A compound name separated by - is placed by the first part of it that reads as one of those.

# Before
env_list = ["lint", "py38", "py312", "docs", "py310-django"]

# After
env_list = [ "py312", "py310-django", "py38", "docs", "lint" ]

An entry that generates environments rather than naming one, such as { product = ... }, names none of them, and what it generates is read where it sits, so it holds the place the file gave it while the names around it move.

That order is also where each [env.NAME] table is written, so the file reads the way tox runs it. --pin-env (here fix,type) moves both:

# Before
env_list = ["lint", "fix", "type"]

[env.lint]
description = "lint"

[env.fix]
description = "fix"

[env.type]
description = "type"

# After
env_list = [ "fix", "type", "lint" ]

[env.fix]
description = "fix"

[env.type]
description = "type"

[env.lint]
description = "lint"

use_develop Upgrade

The legacy use_develop = true setting is automatically converted to the modern package = "editable" equivalent. If use_develop = false, the key is left as-is. tox reads use_develop before package and installs an editable package whatever package says, so a package key already there is given the mode the environment ran with:

# Before
[env_run_base]
use_develop = true

# After
[env_run_base]
package = "editable"

Array Sorting

Certain arrays within environment tables are sorted automatically:

Sorted by canonical PEP 508 package name:

  • deps: dependencies normalized and sorted by package name. constraints names the files tox hands to pip, so it is left as written.

pip reads this list the way it reads a requirements file, where a later --index-url replaces the one before it, so a list holding anything but plain requirements keeps the order it names them in. Pip options and file references (-r, -c, -e, --index-url), local paths (./, ../, /), URLs, artifact filenames (.whl, .zip, .tar.gz and the other archive suffixes pip installs by name), and entries containing tox substitution variables ({tox_root}, etc.) are each such an entry: they are left as written, and the list they sit in is left in its order while every requirement beside them is still normalized:

# Before
[env_run_base]
deps = ["Pytest >= 7", "-r requirements.txt", "coverage", "-e ./my-pkg[test]"]

# After
[env_run_base]
deps = [ "pytest>=7", "-r requirements.txt", "coverage", "-e ./my-pkg[test]" ]

Sorted alphabetically:

  • dependency_groups, allowlist_externals, extras, labels, depends

Special handling for ``pass_env``:

Replacement objects (inline tables like { replace = "default", ... }) are pinned to the start, then string entries are sorted alphabetically:

# Before
[env.test]
pass_env = ["TERM", "CI", { replace = "env", name = "PATH" }, "HOME"]

# After
[env.test]
pass_env = [ { replace = "env", name = "PATH" }, "CI", "HOME", "TERM" ]

Arrays NOT sorted:

  • commands, commands_pre, commands_post: execution order matters

  • base_python: first entry takes priority

Inline Table Key Reordering

Keys within inline tables are reordered into a consistent order based on the inline table’s type. The type is detected by the presence of a discriminator key:

  • replace: replaceconditionofenvkeynamepatternthenelsedefaultextendmarker

  • prefix: prefixstartstop

  • product: productexclude

  • value: valuemarker

Keys not listed in the schema are appended at the end in their original order.

# Before
pass_env = [{ default = ".", replace = "default", extend = true }]
env_list = [{ exclude = ["py312-django"], product = ["py312", "py313"] }]

# After
env_list = [ { product = [ "py312", "py313" ], exclude = [ "py312-django" ] } ]
pass_env = [ { replace = "default", default = ".", extend = true } ]

This reordering applies to all inline tables in the file, including those nested inside arrays.

Other Tables

Any unrecognized tables are preserved and reordered according to standard table ordering rules. Keys within unknown tables are not reordered or normalized.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tox_toml_fmt-1.10.2.tar.gz (196.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

tox_toml_fmt-1.10.2-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded PyPymacOS 11.0+ ARM64

tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded PyPymacOS 10.12+ x86-64

tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.15tmusllinux: musl 1.2+ x86-64

tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.15tmusllinux: musl 1.2+ ARM64

tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.15tmanylinux: glibc 2.28+ x86-64

tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.15tmanylinux: glibc 2.28+ ARM64

tox_toml_fmt-1.10.2-cp315-cp315t-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.15tmacOS 11.0+ ARM64

tox_toml_fmt-1.10.2-cp315-cp315t-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.15tmacOS 10.12+ x86-64

tox_toml_fmt-1.10.2-cp314-cp314t-win_arm64.whl (1.2 MB view details)

Uploaded CPython 3.14tWindows ARM64

tox_toml_fmt-1.10.2-cp314-cp314t-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.14tWindows x86-64

tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

tox_toml_fmt-1.10.2-cp314-cp314t-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

tox_toml_fmt-1.10.2-cp314-cp314t-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.14tmacOS 10.12+ x86-64

tox_toml_fmt-1.10.2-cp310-abi3-win_arm64.whl (1.2 MB view details)

Uploaded CPython 3.10+Windows ARM64

tox_toml_fmt-1.10.2-cp310-abi3-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10+Windows x86-64

tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_31_riscv64.whl (1.3 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.31+ riscv64

tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64

tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_aarch64.whl (1.3 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

tox_toml_fmt-1.10.2-cp310-abi3-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

tox_toml_fmt-1.10.2-cp310-abi3-macosx_10_12_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file tox_toml_fmt-1.10.2.tar.gz.

File metadata

  • Download URL: tox_toml_fmt-1.10.2.tar.gz
  • Upload date:
  • Size: 196.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tox_toml_fmt-1.10.2.tar.gz
Algorithm Hash digest
SHA256 013f1661b0f38f540b4bbf987ce3a08ea9473858042756aee3fa46597d4deb00
MD5 a64463e467c1bad86d364b9c7c266225
BLAKE2b-256 533c747c9032bd0450ed2d9046fec5e795df5f1c0d0a72a37c43ceb9f8d926a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2.tar.gz:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1be1330c2c188d507d4d070c45622d9b9f3a5010ea3b74c68278fb89ea5dc6ac
MD5 6ed281d7e68d08495f2336b861fa668c
BLAKE2b-256 d228379209ded1cb7ee6a1bc15b9b5b3b0096d52aa536f595b64570204feabfa

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0931c3f6371344441380c5061ff015a6ab818b4dded9f9e0496bc9fdccc21ee0
MD5 8645e13c633387e576fae128fac84a50
BLAKE2b-256 4bc939d59287d57f360d307f52f3a207257c88f8bb40fd391b993ea0faffeec0

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8ef3c08a9f85b21c53e720fe5837f56fe75945d134352f3538e54350e7806d2b
MD5 d5dd0529fbda2728c571814261e99dd4
BLAKE2b-256 b3167d7f9f7280edd16bc08fc900f72cffd7c48894a8cb3cc26c00deb6b044af

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-pp311-pypy311_pp73-macosx_10_12_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f6d4f385b487e881b4dc2bb26432830f0bbf4f9116276ec9831b5920f4c730c3
MD5 cedf13a498c3ac068fe423b02355d154
BLAKE2b-256 a2d12c2bcaaf84b3f79209ede2322e50b12c5fa0baf222c06583c877fff9bfa8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3467e96c65053cf493fc0fcdeb27ef54dc3ea1b679b6c5c2958827ed0712c026
MD5 4b8e11deb6487fb30611b720ed853c25
BLAKE2b-256 c71188873fd1d5dac2a39406c70c99695d70043958777b7d66830ea01773e6b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp315-cp315t-musllinux_1_2_aarch64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f5335569324caa4e5730fcdd2cde7ad75cbf90816aa51a99fb4b16f8d94a2de6
MD5 94f7fe34f289a08758e2c608cc2e94f7
BLAKE2b-256 99b830ec57069354c55df3d9a9da218f943e3f9d18c04ecb44dd68d7c057a4e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 941998a5b10bd9dee9daeb7035628e824e069eb1e407546315ac9a07a1a11e00
MD5 51ee7412a7cd64038a3c4510b95eb6b6
BLAKE2b-256 3b4ffb640fcf4d0c5eba85587a2e19a7143a298d68d173e115048b17a1139b7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp315-cp315t-manylinux_2_28_aarch64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp315-cp315t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp315-cp315t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 299fa73a3a389d25a8a7032b92d8fc3c6fc98acae52ee6a475ee2174e48b9682
MD5 10ac5728e11b8e9e420bb23f5e04c15a
BLAKE2b-256 0f8fe7ccb3c33f1761132eb9d36208433c264d9931e59bdbbe090642b513308e

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp315-cp315t-macosx_11_0_arm64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp315-cp315t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp315-cp315t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dcecf80598058f03f7f963e5f7db4cb4c807acc47cc42086c963a946c99fd8ae
MD5 03c17ce31e0c24bc18ac7d9ddb7bbbf3
BLAKE2b-256 548096549a1e7adc147e13541044c7c06dbe0d575a8657040aa62e0f18256444

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp315-cp315t-macosx_10_12_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-win_arm64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 8290bb3a25af164c81fad8f6f5c5ddc807ce6786eb1665ee24c8ddb0b3f27fb4
MD5 32399a8af4d04d71331aca82c89f1d61
BLAKE2b-256 074403647e9cf68eef4d18001889b366ca23714eb85dadda0ff6c59a4741018b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-win_arm64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 5e675d1ab442440a9a4429c3ba24b6692eadca0d713e3b7f51ab960a39b40df5
MD5 7c9f9da98d205cc128a3e4f7aae0bd38
BLAKE2b-256 6e97a2ae7aba49b85267778f9f5b1d53103aafbfd93687458b1d9b05f3224631

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-win_amd64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 deac824397f599be1d361cd2524c14b95ec4c356835266441f17d47273eb967d
MD5 0f2eb71796b905431c80cdcc39229b54
BLAKE2b-256 8f217fcccfdb27c47a668d7ab85d05ab4840d3b1a83a47b16d910cf6e708d557

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ab57b3053558ab4164de1f1dfc422e357ca441366115f399ced21b489a955687
MD5 f113ccce401c5e56a218158f64a36c72
BLAKE2b-256 e5e6216ce69995d42ba55fab522e5f552d5735655af1f6dcabf8802ca571bb80

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-musllinux_1_2_aarch64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 83fd65d904a0387750b93e9336d34da47a139ac92644aefa05b0dc249a9bb958
MD5 a75adedf7bc0d7db022129c133dff15c
BLAKE2b-256 6ca5470df79f5f17e5bb1a5e1661d67a12bdd5879cb24d42781bd3d4f1948fd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bf0fa9bbbb48fcff98ccab5a0df516400891652327709941b303cecd6ff7467a
MD5 068d98c970ee6608474eee8d283345fb
BLAKE2b-256 6e3335111f55b2c781bb3f8938a2d4e75ec5e39d2ff197531290b0a364d18aa1

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-manylinux_2_28_aarch64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b7b8af6b91fb7a2defa2208f475e22f0daf552b8f13301f24b260e44e32a27bb
MD5 cc511c898f8d211ddd4f80c6e066b5c3
BLAKE2b-256 98cddfabbf19e5d062503ecd43a27d33f2cbdc86973d560f108aeccc3b5fc0ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp314-cp314t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp314-cp314t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 721fce6a8773fd381b1b3dee55b4a5527181fd07e2c8cc93074f44a4d96050d7
MD5 480460f7d8da36c57bec581efd26d668
BLAKE2b-256 6979a9f9f39c8092d348e2da50b9abca780e565e119d32afd0f3656c817bd826

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp314-cp314t-macosx_10_12_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-win_arm64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 e65e190d289fe6a0c7ec4ec72a082bc8582be718e58c618c5e73ca073c7aca77
MD5 87f1f232541e6fab5b55d30f34d1a97f
BLAKE2b-256 3e570b51f003a85d77384c292650bc9cbb97995f49a4f8b58b07e0ce9710a59c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-win_arm64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 311065b257c6d7a0655eb1f19ac00f66e6103458035c2719c059cca5af6611df
MD5 7bc5cc3cdc7538d78ce4ce8ca1ba3bf2
BLAKE2b-256 5b2c4b0afe2752afcd7647f8cd694fbc209aefcc8bb29f181a18f83b64b70899

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-win_amd64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a1e816c75501d7a6e7449e6ec97ac2ad1cb92e53972a0c7b047c6036b3a3bc9e
MD5 a741c26db41eda36a35084422edb498a
BLAKE2b-256 4640b3a6a90492683576868d16b7dce0b0d4668353290243a78fec14782bd87a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 af6131953ad29d198b60d06368ece87479930d45fa22d4f203bae5c3f0455dbf
MD5 9eaf2e86ca349eb73fecc9051ccf2348
BLAKE2b-256 5ba1d1c557e9e3f8014078edcbe04e0d32f5665cc0167b772a9162b017e3f821

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-musllinux_1_2_aarch64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_31_riscv64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_31_riscv64.whl
Algorithm Hash digest
SHA256 1adcb390f9ea37ad7a45817fa017621c7ba6e210de8ed35fa060432c5c68a0a9
MD5 08abc3729a710fe0d36b39d9e1b0f6d1
BLAKE2b-256 be88b2d2cb41578286aaf29aca2a4ee60b6dcd1f516b2dcd004c708fdd7a3e00

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_31_riscv64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0559a21ff200868fa4dc2bd96ff9b5ee282163f0312c844aa1215cdec07f6118
MD5 d92c315d697455e04ee06a67faa5d073
BLAKE2b-256 78242327b243bb6ab864714cf07ebd1a1098824a379a6d6190ec0ad67549f7ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 99ae9081d35114009ae8d1c8ee51e994260b3f9ee3e676a04c1c799da0b0b76f
MD5 85b6e0b21587864eb7d777972bec4e45
BLAKE2b-256 e414c358c529f13cf56f4ace7703f1267a58d77c6614b52991137fa2456da711

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-manylinux_2_28_aarch64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e90166ad654a4285617f7ea6a4e98104cddf7eda14e76e1f53bad7780a8d63f9
MD5 bdfa64d244440aea746443e2b4c0d596
BLAKE2b-256 29642c8f7f5b73e7e078f4415cfd6aa6d2ddbb52369d76bbe83af388af0e566a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tox_toml_fmt-1.10.2-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for tox_toml_fmt-1.10.2-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ef2a8e48788487d76cd476ae7548b330d62ea51cd280550df1e537a8052e8e48
MD5 ba0512745a68429df186630161720803
BLAKE2b-256 73ee95bdb66d11fb066dadd4aa971c2496ec8e56f5caf4f753f66f9b186d512c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tox_toml_fmt-1.10.2-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: tox_toml_fmt_build.yaml on tox-dev/toml-fmt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.10.3

27 files

This release

1.10.2 This release

27 files

1.10.1

27 files

1.10.0

27 files

1.9.3

28 files

1.9.2

11 files

1.9.1

11 files

1.9.0

11 files

1.8.0

11 files

1.7.2

11 files

1.7.1

11 files

1.7.0

11 files

1.6.0

11 files

1.5.4

11 files

1.5.3

11 files

1.5.2

11 files

1.5.1

11 files

1.5.0

11 files

1.4.0

11 files

1.3.0

11 files

1.2.2

16 files

1.2.1

16 files

1.2.0

16 files

1.1.0

19 files

1.0.0

22 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page