diff --git a/dev-support/.scalafmt.conf b/dev-support/.scalafmt.conf new file mode 100644 index 00000000..0b8ff0e7 --- /dev/null +++ b/dev-support/.scalafmt.conf @@ -0,0 +1,33 @@ +# +# 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. +# + +# Template based off apache spark: https://github.com/apache/spark/blob/master/dev/.scalafmt.conf +align = none +align.openParenDefnSite = false +align.openParenCallSite = false +align.tokens = [] +importSelectors = "singleLine" +optIn = { + configStyleArguments = false +} +danglingParentheses.preset = false +docstrings.style = Asterisk +# See https://github.com/scalameta/scalafmt/issues/1387 +docstrings.wrap = no +maxColumn = 100 +runner.dialect = scala212 +version = 3.7.12 diff --git a/dev-support/eclipse.importorder b/dev-support/eclipse.importorder new file mode 100644 index 00000000..68f4e8b2 --- /dev/null +++ b/dev-support/eclipse.importorder @@ -0,0 +1,19 @@ +# 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. +#Organize Import Order +3=org.apache.hadoop.hbase.shaded +2=org.apache.hbase.thirdparty +1= +0=\# diff --git a/dev-support/hbase_eclipse_formatter.xml b/dev-support/hbase_eclipse_formatter.xml new file mode 100644 index 00000000..99000a62 --- /dev/null +++ b/dev-support/hbase_eclipse_formatter.xml @@ -0,0 +1,418 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev-support/license-header b/dev-support/license-header new file mode 100644 index 00000000..2379ddac --- /dev/null +++ b/dev-support/license-header @@ -0,0 +1,17 @@ +/* + * 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. + */ diff --git a/pom.xml b/pom.xml index f06c147e..56b2c30e 100644 --- a/pom.xml +++ b/pom.xml @@ -151,6 +151,7 @@ 1.2.17 1.2.25 8.45.1 + 2.27.2 3.2.1 2.5.0 3.0.0 @@ -674,6 +675,130 @@ + + com.diffplug.spotless + spotless-maven-plugin + ${spotless.version} + + + + + **/generated/* + **/package-info.java + + + + Remove unhelpful javadoc stubs + (?m)^ *\* *@(?:param|throws|return) *\w* *\n + + + + + Purge single returns tag multi line + (?m)^ */\*\*\n *\* *@return *(.*) *\n *\*/$ + /** Returns $1 */ + + + Purge single returns tag single line + ^ */\*\* *@return *(.*) *\*/$ + /** Returns $1 */ + + + + ${session.executionRootDirectory}/dev-support/hbase_eclipse_formatter.xml + + + ${session.executionRootDirectory}/dev-support/eclipse.importorder + + + + + + + + + src/main/scala/**/*.scala + src/test/scala/**/*.scala + src/main/scala/**/*.sc + src/test/scala/**/*.sc + + + + 3.7.12 + ${session.executionRootDirectory}/dev-support/.scalafmt.conf + + + + + false + + + + + + + + **/*.xml + **/*.sh + **/*.py + **/Jenkinsfile* + **/*.md + *.md + **/*.txt + *.txt + + + **/target/** + **/dependency-reduced-pom.xml + + + + + + + + + src/main/java/**/*.java + src/test/java/**/*.java + src/main/scala/**/*.scala + src/test/scala/**/*.scala + src/main/scala/**/*.sc + src/test/scala/**/*.sc + + + **/generated/* + **/package-info.java + + + ${session.executionRootDirectory}/dev-support/license-header + package + + + + +