Commit 033bdef2 authored by Dennis Hendriks's avatar Dennis Hendriks
Browse files

Merge branch 'develop' into 'master'

#12 Release milestone v0.1-M1

See merge request !10
parents 79426223 ae501942
Pipeline #61 passed with stage
in 0 seconds
......@@ -16,7 +16,7 @@
</natures>
<filteredResources>
<filter>
<id>1579099775841</id>
<id>1611684471976</id>
<name></name>
<type>10</type>
<matcher>
......@@ -25,7 +25,7 @@
</matcher>
</filter>
<filter>
<id>1579099775841</id>
<id>1611684472031</id>
<name></name>
<type>10</type>
<matcher>
......@@ -34,7 +34,7 @@
</matcher>
</filter>
<filter>
<id>1579099775857</id>
<id>1611684472034</id>
<name></name>
<type>10</type>
<matcher>
......@@ -43,7 +43,7 @@
</matcher>
</filter>
<filter>
<id>1579099775857</id>
<id>1611684472036</id>
<name></name>
<type>10</type>
<matcher>
......@@ -52,7 +52,7 @@
</matcher>
</filter>
<filter>
<id>1579099775873</id>
<id>1611684472038</id>
<name></name>
<type>10</type>
<matcher>
......@@ -61,7 +61,7 @@
</matcher>
</filter>
<filter>
<id>1579099775873</id>
<id>1611684472041</id>
<name></name>
<type>10</type>
<matcher>
......@@ -70,7 +70,16 @@
</matcher>
</filter>
<filter>
<id>1579099775888</id>
<id>1611684472043</id>
<name></name>
<type>10</type>
<matcher>
<id>org.eclipse.ui.ide.multiFilter</id>
<arguments>1.0-name-matches-false-false-thirdparty</arguments>
</matcher>
</filter>
<filter>
<id>1611684472045</id>
<name></name>
<type>10</type>
<matcher>
......
......@@ -28,19 +28,23 @@ developer environment, coding standards, how to contribute, and more, see:
The project maintains the following source code repositories:
* https://git.eclipse.org/c/escet/escet.git
* https://gitlab.eclipse.org/eclipse/escet/escet.git
This project uses Bugzilla to track ongoing development and issues:
These can also be accessed via a web interface:
* Search for issues: https://bugs.eclipse.org/bugs/buglist.cgi?product=ESCET
* Create a new report: https://bugs.eclipse.org/bugs/enter_bug.cgi?product=ESCET
* https://gitlab.eclipse.org/eclipse/escet/escet
This project uses GitLab to track ongoing development and issues:
* https://gitlab.eclipse.org/eclipse/escet/escet/-/milestones
* https://gitlab.eclipse.org/eclipse/escet/escet/-/issues
Be sure to search for existing issues before you create another one. Remember
that contributions are always welcome!
To contribute source code (e.g. patches), please use Gerrit:
To contribute source code (e.g. patches), please use GitLab:
* https://git.eclipse.org/r/#/q/project:escet/escet
* https://gitlab.eclipse.org/eclipse/escet/escet/-/merge_requests
## Eclipse Contributor Agreement
......
//////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation
//
// See the NOTICE file(s) distributed with this work for additional
// information regarding copyright ownership.
//
// This program and the accompanying materials are made available
// under the terms of the MIT License which is available at
// https://opensource.org/licenses/MIT
//
// SPDX-License-Identifier: MIT
//////////////////////////////////////////////////////////////////////////////
pipeline {
agent {
// The 'centos-7' pod template allows UI tests.
kubernetes {
label 'centos-7'
}
}
tools {
jdk 'oracle-jdk8-latest'
maven 'apache-maven-3.6.3'
}
options {
buildDiscarder(logRotator(numToKeepStr: '5'))
timeout(time: 1, unit: 'HOURS')
timestamps()
}
stages {
stage('Build & Test') {
steps {
wrap([$class: 'Xvnc', takeScreenshot: false, useXauthority: true]) {
sh '''
java -version
mvn -version
printenv
BUILD_ARGS=
if [[ "$GIT_BRANCH" == "master" || "$TAG_NAME" =~ ^v[0-9]+\\.[0-9]+.*$ ]]; then
# Sign releases, based on release version tag name.
# Sign 'master' branch, to allow checking release signing before deployment.
BUILD_ARGS="-Psign"
fi
./build.sh "$BUILD_ARGS"
'''
}
}
post {
success {
// Documentation/websites.
archiveArtifacts '*/org.eclipse.escet.*documentation/target/*-website.zip'
// Update site.
archiveArtifacts 'products/org.eclipse.escet.product/target/*.zip'
// Product.
archiveArtifacts 'products/org.eclipse.escet.product/target/products/*.tar.gz'
archiveArtifacts 'products/org.eclipse.escet.product/target/products/*.zip'
}
}
}
stage('Deploy') {
when {
tag pattern: "v\\d+\\.\\d+.*", comparator: "REGEXP"
}
environment {
DOWNLOADS_PATH = "/home/data/httpd/download.eclipse.org/escet"
DOWNLOADS_URL = "genie.escet@projects-storage.eclipse.org:${DOWNLOADS_PATH}"
WEBSITE_GIT_URL = "ssh://genie.escet@git.eclipse.org:29418/www.eclipse.org/escet.git"
RELEASE_VERSION = "${TAG_NAME}"
}
steps {
// Deploy downloads.
sh '''
mkdir -p deploy/update-site/
unzip -q products/org.eclipse.escet.product/target/*.zip -d deploy/update-site/
'''
sshagent (['projects-storage.eclipse.org-bot-ssh']) {
// Remove any existing directory for this release.
sh 'ssh genie.escet@projects-storage.eclipse.org rm -rf ${DOWNLOADS_PATH}/${RELEASE_VERSION}/'
// Create directory for this release.
sh 'ssh genie.escet@projects-storage.eclipse.org mkdir -p ${DOWNLOADS_PATH}/${RELEASE_VERSION}/'
// Documentation/websites.
// NOTE: for these artifacts the qualifier is 'SNAPSHOT' rather than the actual version qualifier.
sh 'ssh genie.escet@projects-storage.eclipse.org mkdir -p ${DOWNLOADS_PATH}/${RELEASE_VERSION}/websites/'
sh 'scp -r */org.eclipse.escet.*documentation/target/*-website.zip ${DOWNLOADS_URL}/${RELEASE_VERSION}/websites/'
// Update site (archive).
sh 'scp -r products/org.eclipse.escet.product/target/*.zip ${DOWNLOADS_URL}/${RELEASE_VERSION}/'
// Update site (extracted).
sh 'ssh genie.escet@projects-storage.eclipse.org mkdir -p ${DOWNLOADS_PATH}/${RELEASE_VERSION}/update-site/'
sh 'scp -r deploy/update-site/* ${DOWNLOADS_URL}/${RELEASE_VERSION}/update-site/'
// Product.
sh 'scp -r products/org.eclipse.escet.product/target/products/*.tar.gz ${DOWNLOADS_URL}/${RELEASE_VERSION}/'
sh 'scp -r products/org.eclipse.escet.product/target/products/*.zip ${DOWNLOADS_URL}/${RELEASE_VERSION}/'
}
// Deploy websites.
sshagent(['git.eclipse.org-bot-ssh']) {
sh '''
mkdir -p deploy/www
git clone ${WEBSITE_GIT_URL} deploy/www
rm -rf deploy/www/${RELEASE_VERSION}
mkdir -p deploy/www/${RELEASE_VERSION}
cp releng/website/index.html deploy/www/${RELEASE_VERSION}
sed -i -e "s/@VERSION@/${RELEASE_VERSION}/g" deploy/www/${RELEASE_VERSION}/index.html
unzip -q products/org.eclipse.escet.documentation/target/*-website.zip -d deploy/www/${RELEASE_VERSION}/escet/
unzip -q chi/org.eclipse.escet.chi.documentation/target/*-website.zip -d deploy/www/${RELEASE_VERSION}/chi/
unzip -q cif/org.eclipse.escet.cif.documentation/target/*-website.zip -d deploy/www/${RELEASE_VERSION}/cif/
unzip -q setext/org.eclipse.escet.setext.documentation/target/*-website.zip -d deploy/www/${RELEASE_VERSION}/setext/
unzip -q tooldef/org.eclipse.escet.tooldef.documentation/target/*-website.zip -d deploy/www/${RELEASE_VERSION}/tooldef/
'''
dir('deploy/www') {
sh '''
git config user.email "escet-bot@eclipse.org"
git config user.name "genie.escet"
git config push.default simple # Required to silence Git push warning.
git add -A
git commit -q -m "Website release ${RELEASE_VERSION}." -m "Generated from commit ${GIT_COMMIT}"
git push
'''
}
}
}
}
}
post {
// Send an e-mail on unsuccessful builds (unstable, failure, aborted).
unsuccessful {
emailext subject: 'Build $BUILD_STATUS $PROJECT_NAME #$BUILD_NUMBER!',
body: '''Check console output at $BUILD_URL to view the results.''',
recipientProviders: [culprits(), requestor()]
}
// Send an e-mail on fixed builds (back to normal).
fixed {
emailext subject: 'Build $BUILD_STATUS $PROJECT_NAME #$BUILD_NUMBER!',
body: '''Check console output at $BUILD_URL to view the results.''',
recipientProviders: [culprits(), requestor()]
}
}
}
......@@ -5,17 +5,20 @@ Engineering Toolkit (Eclipse ESCET) project.
* Project home: https://projects.eclipse.org/projects/technology.escet
* Website: https://eclipse.org/escet
* Issue tracker: https://bugs.eclipse.org/bugs/describecomponents.cgi?product=escet
* Issue tracker: https://gitlab.eclipse.org/eclipse/escet/escet/-/issues
* Downloads: https://download.eclipse.org/escet
* Archived downloads: https://archive.eclipse.org/escet
* Forum: https://www.eclipse.org/forums/index.php/f/527/
* Developers mailing list: https://accounts.eclipse.org/mailing-list/escet-dev
* GitLab development server: https://gitlab.eclipse.org/eclipse/escet/escet
* Jenkins build server: https://ci.eclipse.org/escet/
## Trademarks
Eclipse ESCET and ESCET are trademarks of the Eclipse Foundation. Eclipse,
and the Eclipse Logo are registered trademarks of the Eclipse Foundation.
Other names may be trademarks of their respective owners.
## Copyright
......@@ -38,16 +41,14 @@ SPDX-License-Identifier: MIT
The project maintains the following source code repositories:
* https://git.eclipse.org/c/escet/escet.git
* https://gitlab.eclipse.org/eclipse/escet/escet.git
These can also be accessed via a web interface:
## Third-party Content
* https://gitlab.eclipse.org/eclipse/escet/escet
com.github.difflib
* Project: https://github.com/java-diff-utils/java-diff-utils
* Source: https://github.com/java-diff-utils/java-diff-utils
* License: Apache License 2.0
## Third-party Content
com.github.javabdd
......@@ -55,6 +56,12 @@ com.github.javabdd
* Source: https://github.com/com-github-javabdd/com.github.javabdd
* License: GNU Library General Public License v2 (LGPLv2) or later
io.github.java-diff-utils
* Project: https://github.com/java-diff-utils/java-diff-utils
* Source: https://github.com/java-diff-utils/java-diff-utils
* License: Apache License 2.0
javax.inject
* License: Apache License 2.0
......
......@@ -6,7 +6,7 @@
<booleanAttribute key="M2_OFFLINE" value="false"/>
<stringAttribute key="M2_PROFILES" value=""/>
<listAttribute key="M2_PROPERTIES">
<listEntry value="tycho.pomless.aggregator.names=releng,chi,cif,common,setext,tooldef,products"/>
<listEntry value="tycho.pomless.aggregator.names=releng,chi,cif,common,setext,thirdparty,tooldef,products"/>
</listAttribute>
<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
......
......@@ -12,4 +12,4 @@
:: SPDX-License-Identifier: MIT
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
.\mvn_escet.cmd clean verify
.\mvn_escet.cmd clean verify %*
......@@ -6,7 +6,7 @@
<booleanAttribute key="M2_OFFLINE" value="false"/>
<stringAttribute key="M2_PROFILES" value=""/>
<listAttribute key="M2_PROPERTIES">
<listEntry value="tycho.pomless.aggregator.names=releng,chi,cif,common,setext,tooldef,products"/>
<listEntry value="tycho.pomless.aggregator.names=releng,chi,cif,common,setext,thirdparty,tooldef,products"/>
</listAttribute>
<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
......
......@@ -12,4 +12,4 @@
# SPDX-License-Identifier: MIT
################################################################################
./mvn_escet.sh clean verify
./mvn_escet.sh clean verify $*
<?xml version="1.0" encoding="UTF-8"?>
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
<local-check-config name="Eclipse ESCET Checkstyle" location=".settings/checkstyle.xml" type="project" description="Eclipse ESCET Checkstyle.&#10;&#10;Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation&#10;&#10;See the NOTICE file(s) distributed with this work for additional&#10;information regarding copyright ownership.&#10;&#10;This program and the accompanying materials are made available under the terms&#10;of the MIT License which is available at https://opensource.org/licenses/MIT&#10;&#10;SPDX-License-Identifier: MIT">
<local-check-config name="Eclipse ESCET Checkstyle" location="/org.eclipse.escet.configuration/checkstyle.xml" type="project" description="Eclipse ESCET Checkstyle.&#10;&#10;Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation&#10;&#10;See the NOTICE file(s) distributed with this work for additional&#10;information regarding copyright ownership.&#10;&#10;This program and the accompanying materials are made available under the terms&#10;of the MIT License which is available at https://opensource.org/licenses/MIT&#10;&#10;SPDX-License-Identifier: MIT">
<additional-data name="protect-config-file" value="false"/>
</local-check-config>
<fileset name="all" enabled="true" check-config-name="Eclipse ESCET Checkstyle" local="true">
......
<?xml version="1.0" encoding="UTF-8"?>
<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
<local-check-config name="Eclipse ESCET Checkstyle" location=".settings/checkstyle.xml" type="project" description="Eclipse ESCET Checkstyle.&#10;&#10;Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation&#10;&#10;See the NOTICE file(s) distributed with this work for additional&#10;information regarding copyright ownership.&#10;&#10;This program and the accompanying materials are made available under the terms&#10;of the MIT License which is available at https://opensource.org/licenses/MIT&#10;&#10;SPDX-License-Identifier: MIT">
<local-check-config name="Eclipse ESCET Checkstyle" location="/org.eclipse.escet.configuration/checkstyle.xml" type="project" description="Eclipse ESCET Checkstyle.&#10;&#10;Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation&#10;&#10;See the NOTICE file(s) distributed with this work for additional&#10;information regarding copyright ownership.&#10;&#10;This program and the accompanying materials are made available under the terms&#10;of the MIT License which is available at https://opensource.org/licenses/MIT&#10;&#10;SPDX-License-Identifier: MIT">
<additional-data name="protect-config-file" value="false"/>
</local-check-config>
<fileset name="all" enabled="true" check-config-name="Eclipse ESCET Checkstyle" local="true">
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN" "https://checkstyle.org/dtds/configuration_1_3.dtd">
<!--
This configuration file was written by the eclipse-cs plugin configuration editor
-->
<!--
Checkstyle-Configuration: Eclipse ESCET Checkstyle
Description:
Eclipse ESCET Checkstyle.
Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation
See the NOTICE file(s) distributed with this work for additional
information regarding copyright ownership.
This program and the accompanying materials are made available under the terms
of the MIT License which is available at https://opensource.org/licenses/MIT
SPDX-License-Identifier: MIT
-->
<module name="Checker">
<property name="severity" value="warning"/>
<module name="TreeWalker">
<module name="AnnotationUseStyle"/>
<module name="MissingOverride"/>
<module name="AnnotationLocation">
<property name="allowSamelineSingleParameterlessAnnotation" value="false"/>
</module>
<module name="AtclauseOrder"/>
<module name="JavadocStyle">
<property name="scope" value="anoninner"/>
<property name="checkEmptyJavadoc" value="true"/>
<property name="endOfSentenceFormat" value="([.?!:][ \t\n\r\f&lt;])|([.?!:]$)|(\{@inheritDoc\})"/>
<message key="javadoc.noperiod" value="First sentence should end with a period, question mark, exclamation mark, colon, or '{@inheritDoc}'."/>
</module>
<module name="NonEmptyAtclauseDescription"/>
<module name="JavadocTagContinuationIndentation">
<message key="tag.continuation.indent" value="Line continuation has incorrect indentation level, expected level should be {0} spaces more than previous line."/>
</module>
<module name="JavadocParagraph">
<message key="javadoc.paragraph.line.before" value="&lt;p&gt; tag should be preceded an with empty line."/>
</module>
<module name="ConstantName">
<message key="name.invalidPattern" value="Constant name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="LocalVariableName">
<property name="format" value="^_?[a-z][a-zA-Z0-9]*_?$"/>
<message key="name.invalidPattern" value="Local variable name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="LocalFinalVariableName">
<property name="format" value="^([A-Z][A-Z0-9]*(_[A-Z0-9]+)*)|(^_?[a-z][a-zA-Z0-9]*_?$)$"/>
<message key="name.invalidPattern" value="Local final variable name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MemberName">
<message key="name.invalidPattern" value="Member name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MethodName">
<message key="name.invalidPattern" value="Method name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="PackageName">
<property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$"/>
<message key="name.invalidPattern" value="Package name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ParameterName">
<property name="format" value="^_?[a-z][a-zA-Z0-9]*_?$"/>
<property name="accessModifiers" value="private"/>
</module>
<module name="StaticVariableName">
<message key="name.invalidPattern" value="Static variable name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="TypeName">
<metadata name="net.sf.eclipsecs.core.comment" value="General type name"/>
<message key="name.invalidPattern" value="Type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ClassTypeParameterName">
<property name="format" value="^[A-Z][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern" value="Class type parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MethodTypeParameterName">
<property name="format" value="^[A-Z][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern" value="Method type parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="InterfaceTypeParameterName">
<property name="format" value="^[A-Z][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern" value="Interface type parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="AvoidStarImport"/>
<module name="IllegalImport"/>
<module name="RedundantImport"/>
<module name="UnusedImports"/>
<module name="GenericWhitespace">
<message key="ws.notPreceded" value="''{0}'' is not preceded with whitespace. (generics whitespace check)"/>
<message key="ws.followed" value="''{0}'' is followed by whitespace. (generics whitespace check)"/>
<message key="ws.illegalFollow" value="''{0}'' is followed by an illegal character. (generics whitespace check)"/>
<message key="ws.preceded" value="''{0}'' is preceded with whitespace. (generics whitespace check)"/>
</module>
<module name="EmptyForInitializerPad">
<message key="ws.notPreceded" value="''{0}'' is not preceded with whitespace, for empty 'for' initializer."/>
<message key="ws.preceded" value="''{0}'' is preceded with whitespace, for empty 'for' initializer."/>
</module>
<module name="EmptyForIteratorPad">
<message key="ws.notFollowed" value="''{0}'' is not followed by whitespace, for empty 'for' iterator."/>
<message key="ws.followed" value="''{0}'' is followed by whitespace, for empty 'for' iterator."/>
</module>
<module name="NoWhitespaceAfter">
<metadata name="net.sf.eclipsecs.core.comment" value="no line breaks"/>
<property name="allowLineBreaks" value="false"/>
<property name="tokens" value="BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS"/>
<message key="ws.followed" value="''{0}'' is followed by whitespace. (no whitespace after check)"/>
</module>
<module name="NoWhitespaceBefore">
<metadata name="net.sf.eclipsecs.core.comment" value="no line breaks"/>
<property name="tokens" value="POST_DEC,POST_INC"/>
<message key="ws.preceded" value="''{0}'' is preceded with whitespace. (no whitespace before check)"/>
</module>
<module name="MethodParamPad">
<message key="line.previous" value="''{0}'' should be on the previous line. (method parameter padding check)"/>
<message key="ws.notPreceded" value="''{0}'' is not preceded with whitespace. (method parameter padding check)"/>
<message key="ws.preceded" value="''{0}'' is preceded with whitespace. (method parameter padding check)"/>
</module>
<module name="TypecastParenPad">
<message key="ws.notPreceded" value="''{0}'' is not preceded with whitespace. (typecast parenthesis padding check)"/>
<message key="ws.notFollowed" value="''{0}'' is not followed by whitespace. (typecast parenthesis padding check)"/>
<message key="ws.followed" value="''{0}'' is followed by whitespace. (typecast parenthesis padding check)"/>
<message key="ws.preceded" value="''{0}'' is preceded with whitespace. (typecast parenthesis padding check)"/>
</module>
<module name="WhitespaceAfter">
<property name="tokens" value="COMMA,SEMI"/>
<message key="ws.notFollowed" value="''{0}'' is not followed by whitespace. (whitespace after check)"/>
</module>
<module name="WhitespaceAround">
<property name="tokens" value="ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,DO_WHILE,EQUAL,GE,GT,LAND,LCURLY,LE,LITERAL_ASSERT,LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,LITERAL_RETURN,LITERAL_SYNCHRONIZED,LITERAL_TRY,LITERAL_WHILE,LOR,LT,MINUS,MINUS_ASSIGN,MOD,MOD_ASSIGN,NOT_EQUAL,PLUS,PLUS_ASSIGN,QUESTION,RCURLY,SL,SLIST,SL_ASSIGN,SR,SR_ASSIGN,STAR,STAR_ASSIGN,TYPE_EXTENSION_AND"/>
<message key="ws.notPreceded" value="''{0}'' is not preceded with whitespace. (whitespace around check)"/>
<message key="ws.notFollowed" value="''{0}'' is not followed by whitespace. (whitespace around check)"/>
</module>
<module name="EmptyLineSeparator">
<property name="allowNoEmptyLineBetweenFields" value="true"/>
</module>
<module name="SeparatorWrap">
<metadata name="net.sf.eclipsecs.core.comment" value="separator at end of the line"/>
<property name="tokens" value="COMMA,SEMI,ARRAY_DECLARATOR,RBRACK"/>
<message key="line.previous" value="''{0}'' separator should be on the previous line."/>
<message key="line.new" value="''{0}'' separator should be on a new line."/>
</module>
<module name="SeparatorWrap">
<metadata name="net.sf.eclipsecs.core.comment" value="separator on new line"/>
<property name="option" value="nl"/>
<property name="tokens" value="DOT"/>
<message key="line.previous" value="''{0}'' separator should be on the previous line."/>
<message key="line.new" value="''{0}'' separator should be on a new line."/>
</module>
<module name="NoWhitespaceBefore">
<metadata name="net.sf.eclipsecs.core.comment" value="allow line breaks"/>
<property name="allowLineBreaks" value="true"/>
<property name="tokens" value="SEMI,DOT"/>
<message key="ws.preceded" value="''{0}'' is preceded with whitespace. (no whitespace before check)"/>
</module>
<module name="NoWhitespaceAfter">
<metadata name="net.sf.eclipsecs.core.comment" value="allow line breaks"/>
<property name="tokens" value="TYPECAST"/>
<message key="ws.followed" value="''{0}'' is followed by whitespace. (no whitespace after check)"/>
</module>
<module name="ModifierOrder"/>
<module name="NeedBraces">
<property name="tokens" value="LITERAL_DO,LITERAL_ELSE,LITERAL_IF,LITERAL_FOR,LITERAL_WHILE"/>
</module>
<module name="LeftCurly">
<property name="option" value="nlow"/>
<message key="line.previous" value="Block start curly brace ''{0}'' should be on the previous line."/>
<message key="line.new" value="Block start curly brace ''{0}'' should be on a new line."/>
</module>
<module name="RightCurly">
<metadata name="net.sf.eclipsecs.core.comment" value="same line"/>
<message key="line.alone" value="Block end curly brace ''{0}'' should be alone on a line."/>
<message key="line.new" value="Block end curly brace ''{0}'' should be on a new line."/>
<message key="line.same" value="Block end curly brace ''{0}'' should be on the same line."/>
</module>
<module name="RightCurly">
<metadata name="net.sf.eclipsecs.core.comment" value="alone on line"/>
<property name="option" value="alone_or_singleline"/>
<property name="tokens" value="CLASS_DEF,METHOD_DEF,CTOR_DEF,LITERAL_FOR,LITERAL_WHILE,STATIC_INIT,INSTANCE_INIT"/>
<message key="line.alone" value="Block end curly brace ''{0}'' should be alone on a line."/>
<message key="line.new" value="Block end curly brace ''{0}'' should be on a new line."/>
<message key="line.same" value="Block end curly brace ''{0}'' should be on the same line."/>
</module>
<module name="CovariantEquals">
<message key="covariant.equals" value="Covariant equals without overriding equals(java.lang.Object)."/>
</module>
<module name="DefaultComesLast"/>
<module name="InnerAssignment">
<metadata name="net.sf.eclipsecs.core.comment" value="Detects more than Eclipse JDT check."/>
<message key="assignment.inner.avoid" value="Assignment in expression (inner assignment) should be avoided."/>
</module>
<module name="ModifiedControlVariable">
<property name="skipEnhancedForLoopVariable" value="true"/>
</module>
<module name="NoClone"/>
<module name="NoFinalizer"/>
<module name="PackageDeclaration">
<message key="missing.package.declaration" value="Avoid the default package."/>
</module>
<module name="SimplifyBooleanExpression">
<message key="simplify.expression" value="Boolean expression can be simplified."/>
</module>
<module name="StringLiteralEquality"/>
<module name="SuperClone"/>
<module name="SuperFinalize"/>
<module name="HideUtilityClassConstructor"/>
<module name="MutableException"/>
<module name="OneTopLevelClass"/>
<module name="ArrayTypeStyle">
<message key="array.type.style" value="Use Java style for arrays (brackets with the type) not C style (brackets with the name)."/>
</module>
<module name="UpperEll">
<message key="upperEll" value="Should use uppercase ''L'' for long numbers, not lowercase &quot;l&quot;."/>
</module>
<module name="RegexpSinglelineJava">
<metadata name="net.sf.eclipsecs.core.comment" value="Wrong indentation for lines starting with '{' or '}'."/>
<property name="format" value="^(\s{4})*(\s|\s\s|\s\s\s)[{}]$"/>
<property name="message" value="Wrong indentation. Must be a multiple of 4 spaces."/>
</module>
<module name="SuppressWithNearbyCommentFilter">
<metadata name="net.sf.eclipsecs.core.comment" value="'ignore checkstyle' comment prefix on same line"/>
<property name="commentFormat" value="ignore checkstyle (\w+)"/>
<property name="checkFormat" value="$1"/>
</module>
<module name="ImportOrder">
<property name="option" value="top"/>
<property name="groups" value="/^java\./,javax,org,com"/>
<property name="separated" value="true"/>
<property name="separatedStaticGroups" value="true"/>
<property name="sortStaticImportsAlphabetically" value="true"/>
<property name="useContainerOrderingForStatic" value="true"/>
</module>
<module name="TypeName">
<metadata name="net.sf.eclipsecs.core.comment" value="Test classes must end with 'Test', not 'Tests' to be picked up by Tycho"/>
<property name="format" value="^.*(?&lt;!Tests)$"/>
</module>
<module name="SingleSpaceSeparator"/>
</module>
<module name="RegexpSingleline">
<metadata name="net.sf.eclipsecs.core.comment" value="XXX -- Could be improved if Checkstyle issue #976 is fixed."/>
<property name="format" value="XXX"/>
<property name="message" value="Found XXX."/>
<property name="fileExtensions" value="java,xml,MF,properties,txt"/>
</module>
<module name="FileTabCharacter">
<property name="fileExtensions" value="java,xml,MF,properties,txt"/>
</module>