v3.8.3
Features
- ScalafmtConfig: set line endings with git autoCRLF (#4114) @kitbellew
- Scalafmt: move line ending choice to FormatWriter (#4097) @kitbellew
- FormatWriter: prepare for configurable line ending (#4091) @kitbellew
- Documentation: describe
lineEndings
(#4090) @kitbellew
- Spaces: add
aroundSymbolicInfixOperators
params (#4103) @kitbellew - FormatWriter: check topLevelStatBlanks blank gaps (#4083) @kitbellew
- Router: use
spaces.afterColonInMatchPattern
(#4070) @kitbellew - Router: use
indent.{binPackXxx,afterInfix}Site
(#4057) @kitbellew
Bug fixes
- RedundantBraces: don't rewrite
try { (a, b) }
(#4111) @kitbellew - TokenOps: backquoted tokens don't "end" in symbol (#4107) @kitbellew
- Router: src=keep force NL only for matching
else
(#4105) @kitbellew - RedundantParens: handle parens around type as well (#4078) @kitbellew
- RedundantParens: allow any Ref, not just Name (#4077) @kitbellew
- RedundantParens: make body check more permissive (#4076) @kitbellew
- Add test with parens around types (#4075) @kitbellew
- FormatOps: in folded ctrl body, use
adjustedBody
(#4073) @kitbellew - Router: increase NL penalty within interpolation (#4068) @kitbellew
- FormatOps: treat assignment infix as non-infix rhs (#4065) @kitbellew
- RewriteTrailingCommas: handle optional braces case (#4059) @kitbellew
- Router: end
src=fold
single-line pastyield
(#4054) @kitbellew
Miscellaneous
- ScalafmtReflectConfig: add
withTarget
method (#4113) @kitbellew - Scalafmt: remove special case of space-only code (#4096) @kitbellew
- Scalafmt: remove special case of shebang prefix (#4095) @kitbellew
- FormatTokens: method to report token lookup error (#4088) @kitbellew
- FormatTokens: define a token hash builder (#4087) @kitbellew
- Token.LF: replace all references with Token.AtEOL (#4086) @kitbellew
- FormatWriter: use
HashMap.updateWith
(#4082) @kitbellew - Remove scala-2.11 specializations, no longer used (#4081) @kitbellew
- TreeOps: use common base in colonDeclType (#4080) @kitbellew
- RedundantBraces: refactor body checking (#4079) @kitbellew
- Modification: consistency, rename isNewline->isNL (#4074) @kitbellew
- Issue template: emphasize providing small example (#4069) @kitbellew
- TreeExtractors: use tree extns for assign/lt assoc (#4064) @kitbellew
- Router: support all enumerators, including
case
(#4063) @kitbellew - FormatOps: use Infix.isAssignment to skip indent (#4062) @kitbellew
- FormatOps: move ExtractFromMeta to companion obj (#4060) @kitbellew
- FormatOps: add InfixSplits.isAfterOp flag (#4061) @kitbellew
- Add no-indent infix test for right-assoc operator (#4056) @kitbellew
- Documentation: fix links to
binPack.xxxSite
(#4055) @kitbellew - Router: refactor single-line block logic (#4053) @kitbellew
- Split: allow ignoring withOptimalAt, relax check (#4052) @kitbellew
Dependency updates
- Scalameta: upgrade to v4.9.9 (#4115) @kitbellew
- Update mdoc, mdoc-parser, sbt-mdoc to 2.5.4 (#4110) @scalameta-bot
- FilterMatcher: turn into metaconfig-parsable type (#4102) @kitbellew
- FormatOps: slight refactor in
insideInfixSplit
(#4100) @kitbellew - Scalameta: upgrade to v4.9.8 (#4094) @kitbellew
- EmptyFileTest: use explicit
expected
(#4092) @kitbellew - Formatted: define Try[_]/Throwable ctors (#4093) @kitbellew
- Bump docker/build-push-action from 5 to 6 (#4085) @dependabot
- Update mdoc, mdoc-parser, sbt-mdoc to 2.5.3 (#4071) @scalameta-bot
- Update scalafmt-core to 3.8.2 (#4072) @scalameta-bot
- Scalameta: upgrade to v4.9.7 (#4066) @kitbellew