fantomas-tool 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-tool.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet tool install --global fantomas-tool --version 4.0.0-beta-001
This package contains a .NET Core Global Tool you can call from the shell/command line.

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)

Dependencies

This package has no dependencies.

Version History

Version Downloads Last updated
4.0.0-beta-002 44 8/7/2020
4.0.0-beta-001 123 7/20/2020
4.0.0-alpha-014 100 7/14/2020
4.0.0-alpha-013 46 7/11/2020
4.0.0-alpha-012 116 7/6/2020
4.0.0-alpha-011 59 6/25/2020
4.0.0-alpha-010 60 6/18/2020
4.0.0-alpha-009 60 6/12/2020
4.0.0-alpha-008 90 6/2/2020
4.0.0-alpha-007 56 6/1/2020
4.0.0-alpha-006 128 5/23/2020
4.0.0-alpha-005 273 5/16/2020
4.0.0-alpha-004 591 5/4/2020
4.0.0-alpha-003 128 5/3/2020
4.0.0-alpha-002 67 4/26/2020
4.0.0-alpha-001 67 4/20/2020
3.3.0 3,307 2/28/2020
3.3.0-beta-002 672 2/21/2020
3.3.0-beta-001 167 2/18/2020
3.2.0 703 2/3/2020
3.2.0-beta-002 352 1/7/2020
3.2.0-beta-001 140 12/26/2019
3.1.0 6,391 11/27/2019
3.0.0 480 10/11/2019
3.0.0-beta-006 106 10/2/2019
3.0.0-beta-005 103 9/27/2019
3.0.0-beta-004 109 9/18/2019
3.0.0-beta-003 118 9/13/2019
3.0.0-beta-002 445 7/20/2019
3.0.0-beta-001 157 7/12/2019
2.9.2 5,369 2/2/2019
2.9.1 766 11/20/2018
2.9.0 394 10/17/2018
2.8.1 330 9/12/2018
2.8.0 380 7/7/2018