version = "3.9.9" runner.dialect = scala3 rewrite.scala3.convertToNewSyntax = true # Keep braces, don't use significant indentation # rewrite.scala3.removeOptionalBraces = yes rewrite.scala3.insertEndMarkerMinLines = 15 rewrite.scala3.removeEndMarkerMaxLines = 14 # Strip margin settings assumeStandardLibraryStripMargin = false align.stripMargin = true # Code Style & Formatting align.preset = more align.multiline = true align.arrowEnumeratorGenerator = true spaces.inImportCurlyBraces = false spaces.beforeContextBoundColon = Never maxColumn = 120 docstrings.style = Asterisk docstrings.wrap = yes # Method chaining newlines.beforeCurlyLambdaParams = multilineWithCaseOnly optIn.breakChainOnFirstMethodDot = true includeCurlyBraceInSelectChains = false # Advanced Scala 3 Features rewrite.scala3.countEndMarkerLines = all rewrite.redundantBraces.stringInterpolation = true rewrite.redundantBraces.parensForOneLineApply = true # Project-Specific Considerations optIn.annotationNewlines = true runner.optimizer.forceConfigStyleMinArgCount = 3 # Import sorting configuration rewrite.rules = [SortImports, RedundantBraces, RedundantParens] rewrite.imports.sort = scalastyle rewrite.imports.groups = [ ["java\\..*"], ["javax\\..*"], ["scala\\..*"], [".*"] ] rewrite.imports.contiguousGroups = only rewrite.trailingCommas.style = never