fantomas 8.0.4
dotnet tool install --global fantomas --version 8.0.4
dotnet new tool-manifest
dotnet tool install --local fantomas --version 8.0.4
#tool dotnet:?package=fantomas&version=8.0.4
nuke :add-package fantomas --version 8.0.4
Fantomas

An opinionated F# source code formatter.
dotnet tool install fantomas
Documentation is available at https://fsprojects.github.io/fantomas/docs/index.html
If you point a coding agent at Fantomas, give it llms.txt for an index of the documentation, or llms-full.txt for all of it in one file.
Reporting a bug
Report bugs through the online tool, which opens an issue with everything needed to reproduce it.
With a coding agent, the fantomas-report skill shrinks the file Fantomas failed on to a minimal sample and opens the same issue form for you to review:
npx skills add fsprojects/fantomas --skill fantomas-report -g
See Reporting a bug for more.
Contributing Guidelines
See the Contribution Guidelines and our contributors documentation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 8.0.4 | 92 | 9/23/2026 |
| 8.0.3 | 75 | 9/23/2026 |
| 8.0.2 | 636 | 9/22/2026 |
| 8.0.1 | 1,034 | 9/21/2026 |
| 8.0.0 | 13,816 | 9/15/2026 |
| 8.0.0-beta-003 | 955 | 9/12/2026 |
| 8.0.0-beta-002 | 304 | 9/8/2026 |
| 8.0.0-beta-001 | 788 | 9/1/2026 |
| 8.0.0-alpha-026 | 336 | 8/29/2026 |
| 8.0.0-alpha-025 | 222 | 8/28/2026 |
| 8.0.0-alpha-024 | 121 | 8/28/2026 |
| 8.0.0-alpha-023 | 125 | 8/28/2026 |
| 8.0.0-alpha-022 | 344 | 8/27/2026 |
| 8.0.0-alpha-021 | 110 | 8/27/2026 |
| 8.0.0-alpha-020 | 125 | 8/27/2026 |
| 8.0.0-alpha-019 | 455 | 8/26/2026 |
| 8.0.0-alpha-018 | 115 | 8/26/2026 |
| 8.0.0-alpha-017 | 3,043 | 8/25/2026 |
| 8.0.0-alpha-016 | 486 | 8/25/2026 |
| 8.0.0-alpha-015 | 256 | 8/24/2026 |
### Fixed
- Infix operator with a computation expression on the right-hand side produces invalid code. `x := { ... }` was read as a computation expression named `(:=) x` and printed as `:= x { ... }`, which does not compile. It is now an infix application and printed as written. [#3494](https://github.com/fsprojects/fantomas/pull/3494)
- Comment after a parameter of an extern binding with attributes is lost. The range of such a binding stopped at its name, so a comment after one of its parameters was not attached to anything. The binding now spans up to its closing parenthesis. [#3494](https://github.com/fsprojects/fantomas/pull/3494)
- Comment after a parameter of a multiline extern binding gets two spaces in front of it. The comma at the end of the line kept its trailing space, and the comment added its own. [#3494](https://github.com/fsprojects/fantomas/pull/3494)
- `in` keyword of `let!` moves to the last `and!` binding. The parser keeps one `in` for a `let!` and its `and!` bindings, and it always went to the last one. It now stays after the binding it followed. [#3494](https://github.com/fsprojects/fantomas/pull/3494)