Fantomas 4.0.0
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.
See the version list below for details.
Install-Package Fantomas -Version 4.0.0
dotnet add package Fantomas --version 4.0.0
<PackageReference Include="Fantomas" Version="4.0.0" />
paket add Fantomas --version 4.0.0
Release Notes
Add initial support of String Interpolation. [#998](https://github.com/fsprojects/fantomas/issues/998)
Extract FakeHelpers and EditorConfig to Fantomas.Extras project [#986](https://github.com/fsprojects/fantomas/issues/986)
Update FCS to 37. [#996](https://github.com/fsprojects/fantomas/pull/996)
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 Comments in match statements are sometimes deleted. [#1010](https://github.com/fsprojects/fantomas/issues/1010)
Fix Comments on members with get/set are deleted. [#1009](https://github.com/fsprojects/fantomas/issues/1009)
Fix Hexadecimal numbers in enums are output as decimal numbers. [#1006](https://github.com/fsprojects/fantomas/issues/1006)
Fix List indentation issue. [#999](https://github.com/fsprojects/fantomas/issues/999)
Fix Hexadecimal numbers in match arms are output as decimal numbers. [#995](https://github.com/fsprojects/fantomas/issues/995)
Fix Removes the first comment above the member of the list. [#990](https://github.com/fsprojects/fantomas/issues/990)
Fix Brackets increased every time Fantomas is run. [#989](https://github.com/fsprojects/fantomas/issues/989)
Fix Bug: Hash directive in computation expression. [#977](https://github.com/fsprojects/fantomas/issues/977)
Fix Bug with hash directives inside a match statement. [#976](https://github.com/fsprojects/fantomas/issues/976)
Fix Bug with defines in record member assignment. [#968](https://github.com/fsprojects/fantomas/issues/968)
Fix Backquotes are stripped down from ``checked``. [#937](https://github.com/fsprojects/fantomas/issues/937)
Fix Fantomas wraps extra set of parenthesis around parenthesis. [#921](https://github.com/fsprojects/fantomas/issues/921)
Fix Remove indent setting from CLI tool. [#888](https://github.com/fsprojects/fantomas/issues/888)
Fix Fantomas generating invalid F# when trying to format a list created with yields. [#882](https://github.com/fsprojects/fantomas/issues/882)
Fix Invalid unit test ``method call on multiple lines``. [#862](https://github.com/fsprojects/fantomas/issues/862)
Fix Invalid unit test ``should break on . operator and keep indentation``. [#860](https://github.com/fsprojects/fantomas/issues/860)
Fix Multi-line arguments to chained method calls produce invalid code. [#702](https://github.com/fsprojects/fantomas/issues/702)
Fix Line comment displaced from commented #-directive. [#638](https://github.com/fsprojects/fantomas/issues/638)
Fix #if'd argument types are lost. [#633](https://github.com/fsprojects/fantomas/issues/633)
Fix #if'd attributes moved to wrong column. [#631](https://github.com/fsprojects/fantomas/issues/631)
Fix Assembly attributes create over-long lines. [#629](https://github.com/fsprojects/fantomas/issues/629)
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)
Dependencies
-
.NETStandard 2.0
- FSharp.Compiler.Service (>= 37.0.0)
- FSharp.Core (>= 4.7.2)
Used By
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 |