Fantomas 4.0.0-beta-001

This library aims at formatting F# source files based on a given configuration.
Fantomas will ensure correct indentation and consistent spacing between elements in the source files.
Some common use cases include
(1) Reformatting a code base to conform a universal page width
(2) Converting legacy code from verbose syntax to light syntax
(3) Formatting auto-generated F# signatures.

This is a prerelease version of Fantomas.
There is a newer version of this package available.
See the version list below for details.
Install-Package Fantomas -Version 4.0.0-beta-001
dotnet add package Fantomas --version 4.0.0-beta-001
<PackageReference Include="Fantomas" Version="4.0.0-beta-001" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Fantomas --version 4.0.0-beta-001
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Fantomas, 4.0.0-beta-001"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Fantomas as a Cake Addin
#addin nuget:?package=Fantomas&version=4.0.0-beta-001&prerelease

// Install Fantomas as a Cake Tool
#tool nuget:?package=Fantomas&version=4.0.0-beta-001&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

Update FCS to 36. [#899](https://github.com/fsprojects/fantomas/pull/899) [#961](https://github.com/fsprojects/fantomas/pull/961)
Replaced json configuration with .editorconfig. [#650](https://github.com/fsprojects/fantomas/issues/650)
Sunset setting ReorderOpenDeclaration. [#645](https://github.com/fsprojects/fantomas/issues/645)
Sunset setting KeepNewlineAfter. [#737](https://github.com/fsprojects/fantomas/issues/737)
Renamed setting IndentSpaceNum to IndentSize. [#940](https://github.com/fsprojects/fantomas/pull/940)
Renamed setting PageWidth to MaxLineLength. [#940](https://github.com/fsprojects/fantomas/pull/940)
Removed all style configuration options from CLI tool. [#704](https://github.com/fsprojects/fantomas/issues/704)
Added [Benchmarks](https://fsprojects.github.io/fantomas/). [#867](https://github.com/fsprojects/fantomas/issues/867)
Split up setting SpaceBeforeArgument to multiple settings. [#649](https://github.com/fsprojects/fantomas/pull/649)
- SpaceBeforeParameter
- SpaceBeforeLowercaseInvocation
- SpaceBeforeUppercaseInvocation
- SpaceBeforeClassConstructor
- SpaceBeforeMember
Increase control over length of certain code constructs. [#697](https://github.com/fsprojects/fantomas/issues/697)
- MaxRecordWidth
- MaxArrayOrListWidth
- MaxValueBindingWidth
- MaxFunctionBindingWidth
- MaxElmishWidth
Better support for Elmish inspired code. [#922](https://github.com/fsprojects/fantomas/pull/922)
Feature SingleArgumentWebMode. [#927](https://github.com/fsprojects/fantomas/issues/927)
Feature AlignFunctionSignatureToIndentation. [#946](https://github.com/fsprojects/fantomas/issues/946)
Feature AlternativeLongMemberDefinitions. [#913](https://github.com/fsprojects/fantomas/issues/913)
Feature MultilineBlockBracketsOnSameColumn. [#453](https://github.com/fsprojects/fantomas/issues/453)
Feature NewlineBetweenTypeDefinitionAndMembers. [#752](https://github.com/fsprojects/fantomas/issues/752)
Feature KeepIfThenInSameLine. [#825](https://github.com/fsprojects/fantomas/issues/825)
Fix List expression can get combined to a single line with different semantics. [#931](https://github.com/fsprojects/fantomas/issues/931)
Fix Additional new line inserted around attributes. [#949](https://github.com/fsprojects/fantomas/issues/949)
Fix `with get` removal in FSI invalid. [#945](https://github.com/fsprojects/fantomas/issues/945)
Fix FSI file has "abstract" stripped. [#944](https://github.com/fsprojects/fantomas/issues/944)
Fix Insertion of space before function application can break dot-chaining. [#943](https://github.com/fsprojects/fantomas/issues/943)
Fix Concatenation of lines can break operator precedence. [#942](https://github.com/fsprojects/fantomas/issues/942)
Fix Extra spaces inserted in record definition. [#941](https://github.com/fsprojects/fantomas/issues/941)
Fix Comments at the end of async blocks are deleted automatically. [#936](https://github.com/fsprojects/fantomas/issues/936)
Fix Newline between comments should lead to individual comments. [#920](https://github.com/fsprojects/fantomas/issues/920)
Fix VS Code | Extra white space added to record definition. [#910](https://github.com/fsprojects/fantomas/issues/910)
Fix When cutting off function invocations should place each param in its own line (or align them to the 1st param). [#907](https://github.com/fsprojects/fantomas/issues/907)
Fix Try online link points to old location. [#890](https://github.com/fsprojects/fantomas/issues/890)
Fix Leading `|` in single-case union type with access modifier. [#889](https://github.com/fsprojects/fantomas/issues/889)
Fix Type constraint on a type definition causes a loss of the type definition. [#887](https://github.com/fsprojects/fantomas/issues/887)
Fix Fantomas removes the 'and' if there are multiple member constraints on a function declaration. [#886](https://github.com/fsprojects/fantomas/issues/886)
Fix Comments inside a type definition can cause issues. [#885](https://github.com/fsprojects/fantomas/issues/885)
Fix Long function signature should align with equal sign. [#883](https://github.com/fsprojects/fantomas/issues/883)
Fix Newline not preserved between let and let bang. [#879](https://github.com/fsprojects/fantomas/issues/879)
Fix Stackoverflow problem with let bang in match. [#876](https://github.com/fsprojects/fantomas/issues/876)
Fix Incorrect formatting for chained class members using Websharper. [#871](https://github.com/fsprojects/fantomas/issues/871)
Fix Pipe before and inside lambda leads to wrong indent of following lambda. [#870](https://github.com/fsprojects/fantomas/issues/870)
Fix Formatting Program.fs with `--check` fails. [#869](https://github.com/fsprojects/fantomas/issues/869)
Fix Possible wrong indentation for functions with parameters over multiple lines. [#868](https://github.com/fsprojects/fantomas/issues/868)
Fix Invalid unit test ``different attributes according to defines``. [#864](https://github.com/fsprojects/fantomas/issues/864)
Fix Invalid unit test ``record instance with inherit keyword``. [#861](https://github.com/fsprojects/fantomas/issues/861)
Fix Invalid unit test ``should add space before type provider params``. [#859](https://github.com/fsprojects/fantomas/issues/859)
Fix Incorrect end of line added after "(" which makes the code not to compile. [#856](https://github.com/fsprojects/fantomas/issues/856)
Fix Incorrect end of line added after "(". [#855](https://github.com/fsprojects/fantomas/issues/855)
Fix SpaceBeforeUppercaseInvocation applied in the middle of a invocation chain. [#853](https://github.com/fsprojects/fantomas/issues/853)
Fix MultilineBlockBracketsOnSameColumn not working properly when calling base constructors. [#852](https://github.com/fsprojects/fantomas/issues/852)
Fix PageWidth not respected for member with one long parameter. [#850](https://github.com/fsprojects/fantomas/issues/850)
Fix Wrong indentation in member definition. [#844](https://github.com/fsprojects/fantomas/issues/844)
Fix Class type with long variable names results in invalid formatted F# code. [#841](https://github.com/fsprojects/fantomas/issues/841)
Fix Multiline let bang should have newline before. [#838](https://github.com/fsprojects/fantomas/issues/838)
Fix complex computation expression identifier looks off. [#835](https://github.com/fsprojects/fantomas/issues/835)
Fix keyword before type declaration leads to invalid F# code. [#830](https://github.com/fsprojects/fantomas/issues/830)
Fix Inconsistent if-then-else cut. [#825](https://github.com/fsprojects/fantomas/issues/825)
Fix MultilineBlockBracketsOnSameColumn=true not working on records with short names. [#823](https://github.com/fsprojects/fantomas/issues/823)
Fix --config fantomas-config.json gives error. [#821](https://github.com/fsprojects/fantomas/issues/821)
Fix multiline let bang should have a newline. [#819](https://github.com/fsprojects/fantomas/issues/819)
Fix Updated value not indented correctly. [#817](https://github.com/fsprojects/fantomas/issues/817)
Fix Comment removed in multi-case pattern matching. [#813](https://github.com/fsprojects/fantomas/issues/813)
Fix Wrong handling multi lines comment at the end of file after function application. [#810](https://github.com/fsprojects/fantomas/issues/810)
Fix Opening brace for test missing. [#806](https://github.com/fsprojects/fantomas/issues/806)
Fix Return attribute deleted on reformatting. [#800](https://github.com/fsprojects/fantomas/issues/800)
Fix Fantomas crash with evaluation of array member. [#798](https://github.com/fsprojects/fantomas/issues/798)
Fix Type restrictions in FSI files. [#797](https://github.com/fsprojects/fantomas/issues/797)
Fix AssemblyInfo.fs attributes get squashed together. [#796](https://github.com/fsprojects/fantomas/issues/796)
Fix Byte-order mark is stripped. [#795](https://github.com/fsprojects/fantomas/issues/795)
Fix Fantomas replaces "abstract" in fsi leading to compile errors. [#794](https://github.com/fsprojects/fantomas/issues/794)
Fix Broken links in Readme.md. [#791](https://github.com/fsprojects/fantomas/issues/791)
Fix Multiline first member should not introduce initial newline. [#789](https://github.com/fsprojects/fantomas/issues/789)
Fix Newline added before let binding with attribute in class. [#786](https://github.com/fsprojects/fantomas/issues/786)
Fix Some floating-point numbers are changed. [#785](https://github.com/fsprojects/fantomas/issues/785)
Fix Adding newline before first comment in module. [#784](https://github.com/fsprojects/fantomas/issues/784)
Fix Parameter after multiline string parameter. [#783](https://github.com/fsprojects/fantomas/issues/783)
Fix Modulo operator misplaced. [#780](https://github.com/fsprojects/fantomas/issues/780)
Fix double-backtick identifier is formatted wrong when starts with non-alphanum character. [#776](https://github.com/fsprojects/fantomas/issues/776)
Fix Line comment after record not printed. [#774](https://github.com/fsprojects/fantomas/issues/774)
Fix Additional blank lines inserted after formatting. [#772](https://github.com/fsprojects/fantomas/issues/772)
Fix Error while formatting Fantomas unit test with compiler define. [#761](https://github.com/fsprojects/fantomas/issues/761)
Fix AbstractSlot with line comment is consider multi line. [#757](https://github.com/fsprojects/fantomas/issues/757)
Fix Missing space after multiline string. [#754](https://github.com/fsprojects/fantomas/issues/754)
Fix Cannot determine upper or lowercase. [#753](https://github.com/fsprojects/fantomas/issues/753)
Fix Feature: Add blank line between type definition and members. [#752](https://github.com/fsprojects/fantomas/issues/752)
Fix Default member implementation changed to member during formatting. [#742](https://github.com/fsprojects/fantomas/issues/742)
Fix Long function definition should put equals and body on a newline. [#740](https://github.com/fsprojects/fantomas/issues/740)
Fix Add extra space between prefix operator and string. [#736](https://github.com/fsprojects/fantomas/issues/736)
Fix MaxIfThenElseShortWidth is not respected. [#734](https://github.com/fsprojects/fantomas/issues/734)
Fix Shouldn't remove getters. [#733](https://github.com/fsprojects/fantomas/issues/733)
Fix Comment after `then` keyword gets removed. [#730](https://github.com/fsprojects/fantomas/issues/730)
Fix Determine if DotGet expression is upper- or lowercase. [#729](https://github.com/fsprojects/fantomas/issues/729)
Fix Check for Trivia content before the equals sign in let bindings. [#728](https://github.com/fsprojects/fantomas/issues/728)
Fix When advising user to file a bug should mention the file it was trying to format. [#726](https://github.com/fsprojects/fantomas/issues/726)
Fix space removed from parameters passed to inherited class. [#720](https://github.com/fsprojects/fantomas/issues/720)
Fix Place parameters on a new line for very long member definitions. [#719](https://github.com/fsprojects/fantomas/issues/719)
Fix Exception: Unexpected scenario when formatting else if / elif. [#713](https://github.com/fsprojects/fantomas/issues/713)
Fix Fantomas keeps adding newlines every time you format. [#709](https://github.com/fsprojects/fantomas/issues/709)
Fix Duplicate spaces and lost of linecomment. [#687](https://github.com/fsprojects/fantomas/issues/687)
Fix Formatting of array literals of BigInteger. [#682](https://github.com/fsprojects/fantomas/issues/682)
Fix Hash directive not between namespace and module. [#681](https://github.com/fsprojects/fantomas/issues/681)
Fix Comment above static member is wrongly placed. [#680](https://github.com/fsprojects/fantomas/issues/680)
Fix Do not remove property setters. [#664](https://github.com/fsprojects/fantomas/issues/664)
Fix StringConstant printed twice. [#646](https://github.com/fsprojects/fantomas/issues/646)
Fix Newline after "bang" keywords in computation expressions. [#615](https://github.com/fsprojects/fantomas/issues/615)
Fix Incorrect indentation when folding a record update expression. [#536](https://github.com/fsprojects/fantomas/issues/536)
Fix Preserve comments after record. [#516](https://github.com/fsprojects/fantomas/issues/516)
Fix Long function signature broken into two lines. [#492](https://github.com/fsprojects/fantomas/issues/492)
Fix "Better" support for nesting complex expressions in async { } blocks. [#386](https://github.com/fsprojects/fantomas/issues/386)

NuGet packages (6)

Showing the top 5 NuGet packages that depend on Fantomas:

Package Downloads
Fantomas.Extras
This library aims at formatting F# source files based on a given configuration. Fantomas will ensure correct indentation and consistent spacing between elements in the source files. Some common use cases include (1) Reformatting a code base to conform a universal page width (2) Converting legacy code from verbose syntax to light syntax (3) Formatting auto-generated F# signatures.
dotnet-fantomas
This library aims at formatting F# source files based on a given configuration. Fantomas will ensure correct indentation and consistent spacing between elements in the source files. Some common use cases include (1) Reformatting a code base to conform a universal page width (2) Converting legacy code from verbose syntax to light syntax (3) Formatting auto-generated F# signatures.
Falanx.Machinery
Package Description
Myriad.Core
Core Myriad library used for developing plugins
GiraffeGenerator.Core
Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
4.5.0-alpha-017 44 5/15/2021
4.5.0-alpha-016 28 5/9/2021
4.5.0-alpha-015 27 5/8/2021
4.5.0-alpha-014 69 4/30/2021
4.5.0-alpha-013 50 4/27/2021
4.5.0-alpha-012 36 4/23/2021
4.5.0-alpha-011 102 4/20/2021
4.5.0-alpha-010 46 4/14/2021
4.5.0-alpha-009 43 4/11/2021
4.5.0-alpha-008 54 4/8/2021
4.5.0-alpha-007 55 4/8/2021
4.5.0-alpha-006 44 4/5/2021
4.5.0-alpha-005 55 4/3/2021
4.5.0-alpha-004 57 4/2/2021
4.5.0-alpha-003 72 3/28/2021
4.5.0-alpha-002 49 3/22/2021
4.5.0-alpha-001 1,332 2/26/2021
4.4.0 1,860 2/25/2021
4.4.0-beta-008 100 2/19/2021
4.4.0-beta-007 90 2/12/2021
4.4.0-beta-006 64 2/12/2021
4.4.0-beta-005 58 2/9/2021
4.4.0-beta-004 79 2/5/2021
4.4.0-beta-003 512 1/30/2021
4.4.0-beta-002 73 1/23/2021
4.4.0-beta-001 485 1/22/2021
4.4.0-alpha-008 297 1/15/2021
4.4.0-alpha-007 812 12/26/2020
4.4.0-alpha-006 180 12/25/2020
4.4.0-alpha-005 246 12/23/2020
4.4.0-alpha-004 301 12/22/2020
4.4.0-alpha-003 268 12/18/2020
4.4.0-alpha-002 210 12/17/2020
4.4.0-alpha-001 123 12/17/2020
4.3.0 2,069 12/17/2020
4.3.0-beta-002 229 12/11/2020
4.3.0-beta-001 164 12/7/2020
4.3.0-alpha-007 220 11/21/2020
4.3.0-alpha-006 163 11/20/2020
4.3.0-alpha-005 154 11/16/2020
4.3.0-alpha-004 628 11/12/2020
4.3.0-alpha-003 163 11/10/2020
4.3.0-alpha-002 181 10/26/2020
4.3.0-alpha-001 210 10/23/2020
4.2.0 2,786 9/25/2020
4.2.0-alpha-004 359 9/23/2020
4.2.0-alpha-003 176 9/21/2020
4.2.0-alpha-002 213 9/19/2020
4.2.0-alpha-001 267 9/18/2020
4.1.1 381 9/17/2020
4.1.0 645 9/10/2020
4.1.0-beta-004 329 9/5/2020
4.1.0-beta-003 223 9/4/2020
4.1.0-beta-002 605 9/4/2020
4.1.0-beta-001 202 9/3/2020
4.1.0-alpha-001 191 9/1/2020
4.0.0 1,510 8/27/2020
4.0.0-beta-003 223 8/21/2020
4.0.0-beta-002 303 8/7/2020
4.0.0-beta-001 649 7/20/2020
4.0.0-alpha-014 500 7/14/2020
4.0.0-alpha-013 249 7/11/2020
4.0.0-alpha-012 319 7/6/2020
4.0.0-alpha-011 156 6/25/2020
4.0.0-alpha-010 539 6/18/2020
4.0.0-alpha-009 171 6/12/2020
4.0.0-alpha-008 315 6/2/2020
4.0.0-alpha-007 167 6/1/2020
4.0.0-alpha-006 695 5/23/2020
4.0.0-alpha-005 634 5/16/2020
4.0.0-alpha-004 604 5/4/2020
4.0.0-alpha-003 246 5/3/2020
4.0.0-alpha-002 275 4/26/2020
4.0.0-alpha-001 184 4/20/2020
3.3.0 8,831 2/28/2020
3.3.0-beta-002 1,127 2/21/2020
3.3.0-beta-001 287 2/18/2020
3.2.0 15,764 2/3/2020
3.2.0-beta-002 897 1/7/2020
3.2.0-beta-001 428 12/26/2019
3.1.0 9,395 11/27/2019
3.0.0 3,832 10/11/2019
3.0.0-beta-006 1,008 10/2/2019
3.0.0-beta-005 212 9/27/2019
3.0.0-beta-004 608 9/18/2019
3.0.0-beta-003 294 9/13/2019
3.0.0-beta-002 12,615 7/20/2019
3.0.0-beta-001 4,850 7/12/2019
2.9.2 20,334 2/2/2019
2.9.1 2,872 11/20/2018
2.9.0 6,718 10/17/2018
2.8.1 961 9/12/2018
2.8.0 4,214 7/7/2018
2.7.1 3,150 5/2/2018
2.7.0 744 5/2/2018
2.6.1 44,206 4/22/2017
2.5.0 1,645 2/19/2017
2.4.0 1,752 10/24/2016
2.3.0 1,411 7/9/2016
2.2.0 944 4/24/2016
2.1.0 1,046 4/1/2016
2.0.2 7,710 11/15/2015
1.11.0 1,568 9/12/2015
1.10.0 950 8/29/2015
1.9.0 956 8/10/2015
1.8.0-beta 877 7/19/2015
1.7.0 1,102 6/10/2015
1.6.0 1,940 10/25/2014
1.5.0 1,350 9/18/2014
1.4.0 1,691 7/1/2014
1.3.0 1,274 5/17/2014
1.2.0 1,044 4/21/2014
1.1.0 1,031 3/29/2014
1.0.7 1,088 3/12/2014
1.0.5.1 1,141 1/15/2014
1.0.5 936 1/7/2014
1.0.4 961 11/16/2013
1.0.3 997 10/6/2013
1.0.2 971 8/16/2013
1.0.1 1,062 7/22/2013
1.0.0 1,112 7/16/2013
0.9.9.2 1,096 7/2/2013
0.9.9.1 1,000 6/22/2013
0.9.8 1,021 6/14/2013
0.9.7 1,019 6/7/2013
0.9.6 979 5/31/2013
0.9.5 1,105 5/23/2013
0.9.4 996 5/19/2013
0.9.3 1,003 5/9/2013
0.9.2 1,007 5/3/2013
0.9.1 1,274 4/26/2013
0.9.0 1,055 4/19/2013
0.8.9 1,064 4/12/2013
0.8.8 1,016 4/11/2013
0.8.7 999 4/9/2013
0.8.6 1,002 4/4/2013
0.8.5 1,080 4/2/2013
0.8.4 1,021 4/1/2013
0.8.3 1,040 4/1/2013
0.8.2 987 4/1/2013
0.8.1 1,057 3/31/2013
0.8.0 1,038 3/31/2013
Show less