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.

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
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.
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.
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.4.0-alpha-008 29 1/15/2021
4.4.0-alpha-007 622 12/26/2020
4.4.0-alpha-006 124 12/25/2020
4.4.0-alpha-005 144 12/23/2020
4.4.0-alpha-004 240 12/22/2020
4.4.0-alpha-003 202 12/18/2020
4.4.0-alpha-002 150 12/17/2020
4.4.0-alpha-001 62 12/17/2020
4.3.0 530 12/17/2020
4.3.0-beta-002 158 12/11/2020
4.3.0-beta-001 88 12/7/2020
4.3.0-alpha-007 160 11/21/2020
4.3.0-alpha-006 86 11/20/2020
4.3.0-alpha-005 81 11/16/2020
4.3.0-alpha-004 574 11/12/2020
4.3.0-alpha-003 101 11/10/2020
4.3.0-alpha-002 122 10/26/2020
4.3.0-alpha-001 141 10/23/2020
4.2.0 2,416 9/25/2020
4.2.0-alpha-004 302 9/23/2020
4.2.0-alpha-003 115 9/21/2020
4.2.0-alpha-002 158 9/19/2020
4.2.0-alpha-001 210 9/18/2020
4.1.1 316 9/17/2020
4.1.0 583 9/10/2020
4.1.0-beta-004 269 9/5/2020
4.1.0-beta-003 157 9/4/2020
4.1.0-beta-002 547 9/4/2020
4.1.0-beta-001 146 9/3/2020
4.1.0-alpha-001 127 9/1/2020
4.0.0 762 8/27/2020
4.0.0-beta-003 171 8/21/2020
4.0.0-beta-002 245 8/7/2020
4.0.0-beta-001 589 7/20/2020
4.0.0-alpha-014 433 7/14/2020
4.0.0-alpha-013 189 7/11/2020
4.0.0-alpha-012 238 7/6/2020
4.0.0-alpha-011 97 6/25/2020
4.0.0-alpha-010 482 6/18/2020
4.0.0-alpha-009 111 6/12/2020
4.0.0-alpha-008 253 6/2/2020
4.0.0-alpha-007 108 6/1/2020
4.0.0-alpha-006 598 5/23/2020
4.0.0-alpha-005 535 5/16/2020
4.0.0-alpha-004 545 5/4/2020
4.0.0-alpha-003 186 5/3/2020
4.0.0-alpha-002 216 4/26/2020
4.0.0-alpha-001 128 4/20/2020
3.3.0 7,913 2/28/2020
3.3.0-beta-002 1,069 2/21/2020
3.3.0-beta-001 227 2/18/2020
3.2.0 11,928 2/3/2020
3.2.0-beta-002 834 1/7/2020
3.2.0-beta-001 375 12/26/2019
3.1.0 9,268 11/27/2019
3.0.0 3,759 10/11/2019
3.0.0-beta-006 951 10/2/2019
3.0.0-beta-005 156 9/27/2019
3.0.0-beta-004 479 9/18/2019
3.0.0-beta-003 230 9/13/2019
3.0.0-beta-002 11,863 7/20/2019
3.0.0-beta-001 4,773 7/12/2019
2.9.2 19,642 2/2/2019
2.9.1 2,702 11/20/2018
2.9.0 6,515 10/17/2018
2.8.1 812 9/12/2018
2.8.0 4,031 7/7/2018
2.7.1 2,985 5/2/2018
2.7.0 606 5/2/2018
2.6.1 44,004 4/22/2017
2.5.0 1,505 2/19/2017
2.4.0 1,595 10/24/2016
2.3.0 1,276 7/9/2016
2.2.0 803 4/24/2016
2.1.0 915 4/1/2016
2.0.2 7,565 11/15/2015
1.11.0 1,410 9/12/2015
1.10.0 805 8/29/2015
1.9.0 819 8/10/2015
1.8.0-beta 747 7/19/2015
1.7.0 969 6/10/2015
1.6.0 1,795 10/25/2014
1.5.0 1,211 9/18/2014
1.4.0 1,545 7/1/2014
1.3.0 1,125 5/17/2014
1.2.0 899 4/21/2014
1.1.0 891 3/29/2014
1.0.7 945 3/12/2014
1.0.5.1 1,003 1/15/2014
1.0.5 782 1/7/2014
1.0.4 808 11/16/2013
1.0.3 858 10/6/2013
1.0.2 824 8/16/2013
1.0.1 912 7/22/2013
1.0.0 957 7/16/2013
0.9.9.2 954 7/2/2013
0.9.9.1 852 6/22/2013
0.9.8 882 6/14/2013
0.9.7 876 6/7/2013
0.9.6 840 5/31/2013
0.9.5 960 5/23/2013
0.9.4 850 5/19/2013
0.9.3 857 5/9/2013
0.9.2 859 5/3/2013
0.9.1 1,129 4/26/2013
0.9.0 908 4/19/2013
0.8.9 919 4/12/2013
0.8.8 865 4/11/2013
0.8.7 856 4/9/2013
0.8.6 857 4/4/2013
0.8.5 943 4/2/2013
0.8.4 878 4/1/2013
0.8.3 892 4/1/2013
0.8.2 842 4/1/2013
0.8.1 915 3/31/2013
0.8.0 895 3/31/2013
Show less