scalastyle.xml (96 lines of code) (raw):

<?xml version="1.0" encoding="UTF-8"?> <!-- ~ Licensed to the Apache Software Foundation (ASF) under one or more ~ contributor license agreements. See the NOTICE file distributed with ~ this work for additional information regarding copyright ownership. ~ The ASF licenses this file to You under the Apache License, Version 2.0 ~ (the "License"); you may not use this file except in compliance with ~ the License. You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, software ~ distributed under the License is distributed on an "AS IS" BASIS, ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ~ See the License for the specific language governing permissions and ~ limitations under the License. --> <scalastyle> <check level="error" class="org.scalastyle.file.HeaderMatchesChecker" enabled="true"> <parameters> <parameter name="header"><![CDATA[{{COPYRIGHT_HEADER}}]]></parameter> </parameters> </check> <check level="error" class="org.scalastyle.file.FileTabChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.SpacesAfterPlusChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.SpacesBeforePlusChecker" enabled="true"></check> <check level="error" class="org.scalastyle.file.WhitespaceEndOfLineChecker" enabled="true"></check> <check level="error" class="org.scalastyle.file.FileLineLengthChecker" enabled="true"> <parameters> <parameter name="maxLineLength">100</parameter> <parameter name="tabSize">2</parameter> <parameter name="ignoreImports">true</parameter> </parameters> </check> <!-- We should enable these but there are some current violations that might not be trivially fixed. <check level="error" class="org.scalastyle.scalariform.ClassNamesChecker" enabled="true"> <parameters><parameter name="regex"><![CDATA[[A-Z][A-Za-z]*]]></parameter></parameters> </check> <check level="error" class="org.scalastyle.scalariform.ObjectNamesChecker" enabled="true"> <parameters><parameter name="regex"><![CDATA[[A-Z][A-Za-z]*]]></parameter></parameters> </check> <check level="error" class="org.scalastyle.scalariform.PackageObjectNamesChecker" enabled="true"> <parameters><parameter name="regex"><![CDATA[^[a-z][A-Za-z]*$]]></parameter></parameters> </check> --> <check level="error" class="org.scalastyle.scalariform.ParameterNumberChecker" enabled="true"> <parameters> <parameter name="maxParameters"><![CDATA[12]]></parameter> </parameters> </check> <check level="error" class="org.scalastyle.scalariform.NoFinalizeChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.CovariantEqualsChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.StructuralTypeChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.UppercaseLChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.IfBraceChecker" enabled="true"> <parameters> <parameter name="singleLineAllowed"><![CDATA[true]]></parameter> <parameter name="doubleLineAllowed"><![CDATA[true]]></parameter> </parameters> </check> <check level="error" class="org.scalastyle.scalariform.PublicMethodsHaveTypeChecker" enabled="true"></check> <check level="error" class="org.scalastyle.file.NewLineAtEofChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.NonASCIICharacterChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.SpaceAfterCommentStartChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.EnsureSingleSpaceBeforeTokenChecker" enabled="true"> <parameters> <parameter name="tokens">ARROW, EQUALS, ELSE, TRY, CATCH, FINALLY, LARROW, RARROW</parameter> </parameters> </check> <check level="error" class="org.scalastyle.scalariform.EnsureSingleSpaceAfterTokenChecker" enabled="true"> <parameters> <parameter name="tokens">ARROW, EQUALS, COMMA, COLON, IF, ELSE, DO, WHILE, FOR, MATCH, TRY, CATCH, FINALLY, LARROW, RARROW</parameter> </parameters> </check> <!-- ??? usually shouldn't be checked into the code base. --> <check level="error" class="org.scalastyle.scalariform.NotImplementedErrorUsage" enabled="true"></check> <check customId="println" level="error" class="org.scalastyle.scalariform.TokenChecker" enabled="true"> <parameters> <parameter name="regex">^println$</parameter> </parameters> <customMessage><![CDATA[Are you sure you want to println? If yes, wrap the code block with // scalastyle:off println println(...) // scalastyle:on println]]></customMessage> </check> <check customId="javaconversions" level="error" class="org.scalastyle.scalariform.TokenChecker" enabled="true"> <parameters> <parameter name="regex">JavaConversions</parameter> </parameters> <customMessage>Instead of importing implicits in scala.collection.JavaConversions._, import scala.collection.JavaConverters._ and use .asScala / .asJava methods</customMessage> </check> <check level="error" class="org.scalastyle.scalariform.ImportOrderChecker" enabled="true"> <parameters> <parameter name="groups">java,scala,3rdParty,livy</parameter> <parameter name="group.java">javax?\..*</parameter> <parameter name="group.scala">scala\..*</parameter> <parameter name="group.3rdParty">(?!org\.apache.livy\.).*</parameter> <parameter name="group.livy">org\.apache\.livy\..*</parameter> </parameters> </check> <check level="error" class="org.scalastyle.scalariform.DisallowSpaceBeforeTokenChecker" enabled="true"> <parameters> <parameter name="tokens">COMMA</parameter> </parameters> </check> <check level="error" class="org.scalastyle.scalariform.EqualsHashCodeChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.NoWhitespaceBeforeLeftBracketChecker" enabled="true"></check> <check level="error" class="org.scalastyle.scalariform.NoWhitespaceAfterLeftBracketChecker" enabled="true"></check> </scalastyle>