<a id="1.9.3"></a>

## 1.9.3 - 2026-05-05

- ✨ feat(build): support free-threaded Python wheels by [@gaborbernat](https://github.com/gaborbernat) in
  [#307](https://github.com/tox-dev/toml-fmt/pull/307)
- 🐛 fix(common): skip empty tables in Tables::get by [@gaborbernat](https://github.com/gaborbernat) in
  [#304](https://github.com/tox-dev/toml-fmt/pull/304)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#301](https://github.com/tox-dev/toml-fmt/pull/301)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#295](https://github.com/tox-dev/toml-fmt/pull/295)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#296](https://github.com/tox-dev/toml-fmt/pull/296) <a id="1.9.2"></a>

## 1.9.2 - 2026-04-13

- 🐛 fix(pyproject-fmt): produce valid TOML when sorting arrays with value on bracket line by
  [@gaborbernat](https://github.com/gaborbernat) in [#293](https://github.com/tox-dev/toml-fmt/pull/293)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#287](https://github.com/tox-dev/toml-fmt/pull/287)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#286](https://github.com/tox-dev/toml-fmt/pull/286)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#269](https://github.com/tox-dev/toml-fmt/pull/269)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#270](https://github.com/tox-dev/toml-fmt/pull/270) <a id="1.9.1"></a>

## 1.9.1 - 2026-03-11

- 🐛 fix(tox-toml-fmt): skip normalization for paths and substitutions in deps by
  [@gaborbernat](https://github.com/gaborbernat) in [#268](https://github.com/tox-dev/toml-fmt/pull/268)
- 🐛 fix(common): panic on non-array nodes in array ops by [@gaborbernat](https://github.com/gaborbernat) in
  [#266](https://github.com/tox-dev/toml-fmt/pull/266) <a id="1.9.0"></a>

## 1.9.0 - 2026-03-03

- ✨ feat(tox-toml-fmt): add inline table key reordering by [@gaborbernat](https://github.com/gaborbernat) in
  [#264](https://github.com/tox-dev/toml-fmt/pull/264) <a id="1.8.0"></a>

## 1.8.0 - 2026-03-01

- ✨ feat(tox-toml-fmt): reorder inline table keys and add missing env keys by
  [@gaborbernat](https://github.com/gaborbernat) in [#264](https://github.com/tox-dev/toml-fmt/pull/264)
- ✨ feat(common): add shared config file support by [@gaborbernat](https://github.com/gaborbernat) in
  [#258](https://github.com/tox-dev/toml-fmt/pull/258)
- 🐛 fix(parser): adapt to tombi v0.8.0 AST changes by [@gaborbernat](https://github.com/gaborbernat) in
  [#259](https://github.com/tox-dev/toml-fmt/pull/259)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#257](https://github.com/tox-dev/toml-fmt/pull/257)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#248](https://github.com/tox-dev/toml-fmt/pull/248)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#247](https://github.com/tox-dev/toml-fmt/pull/247)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#245](https://github.com/tox-dev/toml-fmt/pull/245)
- ⬆️ build(deps): update Rust and Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#243](https://github.com/tox-dev/toml-fmt/pull/243)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#240](https://github.com/tox-dev/toml-fmt/pull/240)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#238](https://github.com/tox-dev/toml-fmt/pull/238)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#236](https://github.com/tox-dev/toml-fmt/pull/236)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#235](https://github.com/tox-dev/toml-fmt/pull/235) <a id="1.7.2"></a>

## 1.7.2 - 2026-02-18

- 🐛 fix(tox-toml-fmt): handle quoted keys with dots in env tables by [@gaborbernat](https://github.com/gaborbernat) in
  [#234](https://github.com/tox-dev/toml-fmt/pull/234)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#232](https://github.com/tox-dev/toml-fmt/pull/232) <a id="1.7.1"></a>

## 1.7.1 - 2026-02-18

- 🐛 fix(tox-toml-fmt): keep env tables as separate sections by [@gaborbernat](https://github.com/gaborbernat) in
  [#231](https://github.com/tox-dev/toml-fmt/pull/231) <a id="1.7.0"></a>

## 1.7.0 - 2026-02-18

- ✨ feat(tox-toml-fmt): add semantic formatting matching tox-ini-fmt by [@gaborbernat](https://github.com/gaborbernat)
  in [#230](https://github.com/tox-dev/toml-fmt/pull/230)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#227](https://github.com/tox-dev/toml-fmt/pull/227)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#226](https://github.com/tox-dev/toml-fmt/pull/226)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#225](https://github.com/tox-dev/toml-fmt/pull/225)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#224](https://github.com/tox-dev/toml-fmt/pull/224)
- 📝🐛 docs(config): document column_width string wrapping by [@gaborbernat](https://github.com/gaborbernat) in
  [#223](https://github.com/tox-dev/toml-fmt/pull/223)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#221](https://github.com/tox-dev/toml-fmt/pull/221) <a id="1.6.0"></a>

## 1.6.0 - 2026-02-12

- 🐛 fix(key): normalize literal key quotes to basic (#217) by [@gaborbernat](https://github.com/gaborbernat) in
  [#219](https://github.com/tox-dev/toml-fmt/pull/219)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#218](https://github.com/tox-dev/toml-fmt/pull/218)
- ✨ feat(string): add skip_wrap_for_keys config to preserve specific strings by
  [@gaborbernat](https://github.com/gaborbernat) in [#216](https://github.com/tox-dev/toml-fmt/pull/216)
- 🐛 fix(table): normalize quote styles in key sorting by [@gaborbernat](https://github.com/gaborbernat) in
  [#215](https://github.com/tox-dev/toml-fmt/pull/215)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#210](https://github.com/tox-dev/toml-fmt/pull/210)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#209](https://github.com/tox-dev/toml-fmt/pull/209) <a id="1.5.4"></a>

## 1.5.4 - 2026-02-11

- 🐛 fix(array): preserve trailing comments during sort by [@gaborbernat](https://github.com/gaborbernat) in
  [#208](https://github.com/tox-dev/toml-fmt/pull/208)
- 🐛 fix(array): preserve single-line arrays with trailing comments by [@gaborbernat](https://github.com/gaborbernat) in
  [#204](https://github.com/tox-dev/toml-fmt/pull/204)
- 🐛 fix(table): preserve empty tables as inline empty tables by [@gaborbernat](https://github.com/gaborbernat) in
  [#203](https://github.com/tox-dev/toml-fmt/pull/203) <a id="1.5.3"></a>

## 1.5.3 - 2026-02-09

- 🐛 fix(table): preserve comments when collapsing array of tables by [@gaborbernat](https://github.com/gaborbernat) in
  [#198](https://github.com/tox-dev/toml-fmt/pull/198)
- 🐛 fix(changelog): stop at release commits for orphaned tags by [@gaborbernat](https://github.com/gaborbernat) in
  [#200](https://github.com/tox-dev/toml-fmt/pull/200) <a id="1.5.2"></a>

## 1.5.2 - 2026-02-09

- Release tox-toml-fmt 1.5.2 [skip ci] by [@gaborbernat](https://github.com/gaborbernat)
- 🧪 test(coverage): increase coverage to 98% and fix bugs by [@gaborbernat](https://github.com/gaborbernat) in
  [#194](https://github.com/tox-dev/toml-fmt/pull/194)

<a id="1.5.1"></a>

## 1.5.1 - 2026-02-08

- 🐛 fix(table): preserve table headers and reduce duplication by [@gaborbernat](https://github.com/gaborbernat) in
  [#192](https://github.com/tox-dev/toml-fmt/pull/192)
- 🐛 fix(array): preserve comments with strings by [@gaborbernat](https://github.com/gaborbernat) in
  [#191](https://github.com/tox-dev/toml-fmt/pull/191)
- 🧪 test: add idempotency tests for string wrapping by [@gaborbernat](https://github.com/gaborbernat) in
  [#190](https://github.com/tox-dev/toml-fmt/pull/190)
- 🐛 fix(parser): handle comments with double quotes in arrays by [@gaborbernat](https://github.com/gaborbernat) in
  [#189](https://github.com/tox-dev/toml-fmt/pull/189)
- 🐛 fix(array): sort by value not comment for entries with leading comments by
  [@gaborbernat](https://github.com/gaborbernat) in [#188](https://github.com/tox-dev/toml-fmt/pull/188)
- Update Rust dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#183](https://github.com/tox-dev/toml-fmt/pull/183)
- Update Python dependencies by [@gaborbernat](https://github.com/gaborbernat) in
  [#178](https://github.com/tox-dev/toml-fmt/pull/178)
- ✨ feat(workspace): internalize toml-fmt-common as workspace member by [@gaborbernat](https://github.com/gaborbernat)
  in [#170](https://github.com/tox-dev/toml-fmt/pull/170)

<a id="1.5.0"></a>

## 1.5.0 - 2026-02-08

- ✨ feat(changelog): add --regenerate flag for full changelog rebuild by [@gaborbernat](https://github.com/gaborbernat)
  in [#166](https://github.com/tox-dev/toml-fmt/pull/166)
- 🐛 fix(readme): use explicit UTF-8 encoding for file operations by [@gaborbernat](https://github.com/gaborbernat) in
  [#165](https://github.com/tox-dev/toml-fmt/pull/165)
- 📝 docs(formatting): restructure docs and fix array formatting behavior by
  [@gaborbernat](https://github.com/gaborbernat) in [#164](https://github.com/tox-dev/toml-fmt/pull/164)
- ♻️ refactor(parser): migrate from taplo to tombi by [@gaborbernat](https://github.com/gaborbernat) in
  [#159](https://github.com/tox-dev/toml-fmt/pull/159)
- Fix expand_tables setting for deeply nested tables (#146) by [@gaborbernat](https://github.com/gaborbernat) in
  [#160](https://github.com/tox-dev/toml-fmt/pull/160)
- Prefer double quotes, use single quotes to avoid escaping by [@gaborbernat](https://github.com/gaborbernat) in
  [#162](https://github.com/tox-dev/toml-fmt/pull/162)
- Fix comment before table moving incorrectly when table has comments by [@gaborbernat](https://github.com/gaborbernat)
  in [#158](https://github.com/tox-dev/toml-fmt/pull/158)
- Add tests to improve coverage for edge cases by [@gaborbernat](https://github.com/gaborbernat) in
  [#155](https://github.com/tox-dev/toml-fmt/pull/155)
- Fix expand_tables setting for specific sub-tables by [@gaborbernat](https://github.com/gaborbernat) in
  [#148](https://github.com/tox-dev/toml-fmt/pull/148)
- Use RELEASE_TOKEN to bypass branch protection for releases by [@gaborbernat](https://github.com/gaborbernat) in
  [#147](https://github.com/tox-dev/toml-fmt/pull/147)

<a id="1.3.0"></a>

## 1.3.0 - 2026-01-30

- Generate README.rst dynamically from docs at build time by [@gaborbernat](https://github.com/gaborbernat) in
  [#145](https://github.com/tox-dev/toml-fmt/pull/145)
- 📚 Document formatting principles and normalizations by [@gaborbernat](https://github.com/gaborbernat) in
  [#144](https://github.com/tox-dev/toml-fmt/pull/144)
- Improve maintainalibility by [@gaborbernat](https://github.com/gaborbernat) in
  [#143](https://github.com/tox-dev/toml-fmt/pull/143)
- Add configurable table formatting to pyproject-fmt and order tox env tables by env_list by
  [@gaborbernat](https://github.com/gaborbernat) in [#142](https://github.com/tox-dev/toml-fmt/pull/142)
- Order tox env tables according to env_list and add codecov token by [@gaborbernat](https://github.com/gaborbernat) in
  [#141](https://github.com/tox-dev/toml-fmt/pull/141)
- Fix comments before table headers staying with correct table by [@gaborbernat](https://github.com/gaborbernat) in
  [#140](https://github.com/tox-dev/toml-fmt/pull/140)
- Sort subtables alphabetically within the same tool by [@gaborbernat](https://github.com/gaborbernat) in
  [#139](https://github.com/tox-dev/toml-fmt/pull/139)
- Collapse \[[project.authors]\] array of tables to inline format by [@gaborbernat](https://github.com/gaborbernat) in
  [#137](https://github.com/tox-dev/toml-fmt/pull/137)
- Bump toml-fmt-common to 1.2 by [@gaborbernat](https://github.com/gaborbernat) in
  [#138](https://github.com/tox-dev/toml-fmt/pull/138)
- Add keyword and classifier deduplication by [@gaborbernat](https://github.com/gaborbernat) in
  [#133](https://github.com/tox-dev/toml-fmt/pull/133)
- Fix crash on multi-line strings with line continuation by [@gaborbernat](https://github.com/gaborbernat) in
  [#132](https://github.com/tox-dev/toml-fmt/pull/132)
- Add PEP 794 private dependency support by [@gaborbernat](https://github.com/gaborbernat) in
  [#131](https://github.com/tox-dev/toml-fmt/pull/131)
- Fix literal strings with invalid escapes being corrupted by [@gaborbernat](https://github.com/gaborbernat) in
  [#130](https://github.com/tox-dev/toml-fmt/pull/130)
- Remove testpaths config to fix sdist warning (#120) by [@gaborbernat](https://github.com/gaborbernat) in
  [#129](https://github.com/tox-dev/toml-fmt/pull/129)
- Fix build requirements with duplicate package names being removed (#2) by
  [@gaborbernat](https://github.com/gaborbernat) in [#127](https://github.com/tox-dev/toml-fmt/pull/127)
- Improve CI: add Rust coverage thresholds and prek parallel hooks by [@gaborbernat](https://github.com/gaborbernat) in
  [#126](https://github.com/tox-dev/toml-fmt/pull/126)
- Improve GitHub Actions workflows by [@gaborbernat](https://github.com/gaborbernat) in
  [#125](https://github.com/tox-dev/toml-fmt/pull/125)

<a id="1.2.2"></a>

## 1.2.2 - 2026-01-07

- Fix parsing of versions in parentheses by [@jamesbursa](https://github.com/jamesbursa) in
  [#122](https://github.com/tox-dev/toml-fmt/pull/122)

<a id="1.2.1"></a>

## 1.2.1 - 2025-11-12

- Fix tool names in documentation. by [@jorisboeye](https://github.com/jorisboeye) in
  [#106](https://github.com/tox-dev/toml-fmt/pull/106)
- Fix documentation links and bump deps by [@gaborbernat](https://github.com/gaborbernat) in
  [#105](https://github.com/tox-dev/toml-fmt/pull/105)
- Fix too aggressive parsing suffix versions by [@gaborbernat](https://github.com/gaborbernat) in
  [#101](https://github.com/tox-dev/toml-fmt/pull/101)

<a id="1.2.0"></a>

## 1.2.0 - 2025-10-08

- Drop 3.9 and add 3.14 by [@gaborbernat](https://github.com/gaborbernat) in
  [#96](https://github.com/tox-dev/toml-fmt/pull/96)
- Fix parsing of version pre labels by [@adamchainz](https://github.com/adamchainz) in
  [#89](https://github.com/tox-dev/toml-fmt/pull/89)

<a id="1.1.0"></a>

## 1.1.0 - 2025-10-01

- Replace upstream pep508 that's deprecated with our own by [@gaborbernat](https://github.com/gaborbernat) in
  [#84](https://github.com/tox-dev/toml-fmt/pull/84)
- Fix empty lines placed within a sorted table by [@ddeepwell](https://github.com/ddeepwell) in
  [#63](https://github.com/tox-dev/toml-fmt/pull/63)
- Use abi3-py39 by [@gaborbernat](https://github.com/gaborbernat) in [#58](https://github.com/tox-dev/toml-fmt/pull/58)
- Bump rust and versions by [@gaborbernat](https://github.com/gaborbernat) in
  [#56](https://github.com/tox-dev/toml-fmt/pull/56)
- Include all ident parts in keys by [@adamchainz](https://github.com/adamchainz) in
  [#31](https://github.com/tox-dev/toml-fmt/pull/31)

<a id="1.0.0"></a>

## 1.0.0 - 2024-10-31

- Update Cargo.toml by [@gaborbernat](https://github.com/gaborbernat)
- Add tox-toml-fmt by [@gaborbernat](https://github.com/gaborbernat) in
  [#18](https://github.com/tox-dev/toml-fmt/pull/18)
- Add support for PEP 735 dependency-groups by [@browniebroke](https://github.com/browniebroke) in
  [#16](https://github.com/tox-dev/toml-fmt/pull/16)
- Extract common Python code to toml-fmt-common by [@gaborbernat](https://github.com/gaborbernat) in
  [#12](https://github.com/tox-dev/toml-fmt/pull/12)
- Create first version by [@gaborbernat](https://github.com/gaborbernat) in
  [#1](https://github.com/tox-dev/toml-fmt/pull/1)
