fantomas 8.0.0-alpha-021
See the version list below for details.
dotnet tool install --global fantomas --version 8.0.0-alpha-021
dotnet new tool-manifest
dotnet tool install --local fantomas --version 8.0.0-alpha-021
#tool dotnet:?package=fantomas&version=8.0.0-alpha-021&prerelease
nuke :add-package fantomas --version 8.0.0-alpha-021
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.
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.0-alpha-026 | 0 | 8/29/2026 |
| 8.0.0-alpha-025 | 63 | 8/28/2026 |
| 8.0.0-alpha-024 | 37 | 8/28/2026 |
| 8.0.0-alpha-023 | 48 | 8/28/2026 |
| 8.0.0-alpha-022 | 271 | 8/27/2026 |
| 8.0.0-alpha-021 | 37 | 8/27/2026 |
| 8.0.0-alpha-020 | 53 | 8/27/2026 |
| 8.0.0-alpha-019 | 377 | 8/26/2026 |
| 8.0.0-alpha-018 | 40 | 8/26/2026 |
| 8.0.0-alpha-017 | 276 | 8/25/2026 |
| 8.0.0-alpha-016 | 440 | 8/25/2026 |
| 8.0.0-alpha-015 | 220 | 8/24/2026 |
| 8.0.0-alpha-014 | 125 | 8/20/2026 |
| 8.0.0-alpha-013 | 114 | 8/19/2026 |
| 8.0.0-alpha-012 | 7,120 | 4/16/2026 |
| 8.0.0-alpha-011 | 175 | 4/15/2026 |
| 8.0.0-alpha-010 | 171 | 4/15/2026 |
| 8.0.0-alpha-009 | 337 | 4/3/2026 |
| 8.0.0-alpha-008 | 178 | 3/25/2026 |
| 7.0.6 | 4,538 | 8/19/2026 |
### Fixed
- A call in the middle of a chain keeps its parenthesis against the member name when its lambda argument no longer fits, and breaks behind it instead. Up to now the whole argument moved down a line, `(` and all, which is what the last call of a chain does, but for an earlier one it changes what the code means: `a.Foo (x).Bar()` passes `(x).Bar()` to `Foo` rather than calling `Bar` on the result. With a call behind it the compiler rejected the result with "This argument expression needs parentheses"; with a plain member behind it, such as `.Value`, nothing warned at all and the member quietly became part of the argument. Hanging the parameters under `(fun` would keep the parenthesis in place too, and the F# style guide rules that out, because the column they hang from is the length of the member name. The closing `)` answers to `fsharp_multi_line_lambda_closing_newline` as it did before, and the last call of a chain is untouched, since nothing follows it to be swallowed. [#3432](https://github.com/fsprojects/fantomas/issues/3432)