Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge from pmd/pmd #1

Merged
merged 2,470 commits into from
Nov 13, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2470 commits
Select commit Hold shift + click to select a range
d5d0837
Update changelog, refs #1314
jsotuyod Sep 23, 2018
6721e19
Merge branch 'pr-1314'
jsotuyod Sep 23, 2018
310de01
Merge branch 'master' of github.com:pmd/pmd
jsotuyod Sep 23, 2018
00651c2
Add test generation to the designer
oowekyala Sep 23, 2018
2416b88
Designer stability improvements
oowekyala Sep 23, 2018
75f2f18
Fix PR comments
oowekyala Sep 23, 2018
76b4b6e
Merge branch 'master' into kt-test-dsl
oowekyala Sep 23, 2018
6fea4eb
Remove continuous integrations link from index
Sep 24, 2018
af06c22
Create automated code review section and move Codacy
Sep 24, 2018
d70c2ba
Improve Codacy description
Sep 24, 2018
387e794
Split pmd-test to isolate kotlin dependencies
oowekyala Sep 24, 2018
80bdb7b
Remove Junit syntax
oowekyala Sep 24, 2018
51225d8
Remove manual index
Sep 25, 2018
1671046
Remove Codacy info from summary table
Sep 25, 2018
7679220
Update openjfx to version 11
adangel Sep 25, 2018
054c064
Update asm to 6.2.1
adangel Sep 25, 2018
0913608
Update release notes, refs #1357
adangel Sep 25, 2018
55e0c4b
Merge branch 'pr-1357'
adangel Sep 25, 2018
114922d
Merge pull request #1358 from adangel/update-asm-jfx
jsotuyod Sep 25, 2018
12b731f
Merge pull request #1279 from adangel/plsql-sql-statements
jsotuyod Sep 25, 2018
386e91f
Merge pull request #1346 from adangel/plsql-update-statement
jsotuyod Sep 25, 2018
a3a48e2
Merge pull request #1360 from adangel/plsql-select-function
jsotuyod Sep 25, 2018
b80b99b
Update cpd.md with information about risks
davidmichaelkarr Sep 25, 2018
a29fc09
Support DeleteStatement
adangel Sep 25, 2018
c62e4be
Merge pull request #1359 from adangel/plsql-delete-statement
jsotuyod Sep 26, 2018
3454804
Fully parse select statement in CursorForLoop.
adangel Sep 26, 2018
71e74db
Allow keywords as table alias
adangel Sep 26, 2018
11adc28
Allow keywords as identifiers for various names
adangel Sep 26, 2018
4a1a12d
ORDER is a reserved word as well
adangel Sep 27, 2018
6253370
Restore images of names and aliases
adangel Sep 27, 2018
dad6173
Update quickstart.xml
oowekyala Sep 28, 2018
99d29c7
update documentation
oowekyala Sep 29, 2018
14352a7
Update release notes, mention quickstart ruleset
adangel Sep 30, 2018
dafbb58
Merge branch 'pr-1260'
adangel Sep 30, 2018
db95f01
Update release notes, add PLSQL section
adangel Sep 30, 2018
42b4941
Update integration test to use a sample-ruleset and run once with
adangel Sep 30, 2018
5accf41
Update documentation
pmd-bot Sep 30, 2018
a55b93d
Prepare pmd release 6.8.0
adangel Sep 30, 2018
161d9cd
[maven-release-plugin] prepare release pmd_releases/6.8.0
adangel Sep 30, 2018
d858638
[maven-release-plugin] prepare for next development iteration
adangel Sep 30, 2018
97fd304
Prepare next development version
adangel Sep 30, 2018
3ed9d95
Fix old release notes
adangel Sep 30, 2018
7f876f5
Generate release notes after docs/_config.yml has been updated
adangel Sep 30, 2018
4df8122
Add more logging during release
adangel Sep 30, 2018
b61d196
Dogfood - use PMD 6.8.0
adangel Oct 1, 2018
6339cd4
[doc] Update ruby dependencies
adangel Oct 3, 2018
50b2368
release-script: create correct release notes post for pmd.github.io
adangel Oct 3, 2018
04ba93b
[docs] Add simple script to build site locally
adangel Oct 3, 2018
eb95804
Static Modifier on Interface pmd #1356
vishva007 Oct 3, 2018
33f58b3
bar spell
vishva007 Oct 3, 2018
d6d03ca
Update release notes, refs #1366, fixes #1356
adangel Oct 4, 2018
580e07c
Merge branch 'pr-1366'
adangel Oct 4, 2018
c7b93f4
Updated outdated note in the building documentation.
maikelsteneker Oct 5, 2018
39a1f87
Update changelog, refs #1368
jsotuyod Oct 5, 2018
c48ed19
Merge branch 'pr-1368'
jsotuyod Oct 5, 2018
a28657d
[test] Add a PMD specific PmdRuleTst base class for PMD's own tests.
adangel Oct 5, 2018
6d00e74
Use new base class PmdRuleTst for rule tests
adangel Oct 5, 2018
1f7c827
Merge branch 'master' into unit-test-split
adangel Oct 5, 2018
fd19cdc
[apex] Convert rule test ApexDoc
adangel Oct 5, 2018
17b6511
[java] PMD crashes with java.lang.ClassFormatError: Absent Code
adangel Oct 6, 2018
a8683e1
[ci] call pmdtester via bundler
adangel Oct 6, 2018
e58ad9e
[ci] Install bundles into vendor/bundle, fix bundle config when calli…
adangel Oct 7, 2018
b49f5d9
Simplify check for 'Test' annotation in JUnitTestsShouldIncludeAssert…
Oct 8, 2018
2acd68d
Add missing null check.
Oct 8, 2018
1dd5caa
Update PULL_REQUEST_TEMPLATE
adangel Oct 8, 2018
17bc5a8
Update release notes, refs #1375
adangel Oct 8, 2018
1ba03c1
Merge branch 'pr-1375'
adangel Oct 8, 2018
14a375a
Merge pull request #1370 from adangel/issue-1330
jsotuyod Oct 8, 2018
5b32457
Add test cases.
Oct 8, 2018
e8bfe09
Upgrading Apache Commons IO from 2.4 to 2.6
Thunderforge Oct 8, 2018
84def12
[plsql] CodeFormat Rule
adangel Oct 9, 2018
7a54afa
Remove duplicated test case
jsotuyod Oct 10, 2018
25d4f8c
Update changelog, refs #1374
jsotuyod Oct 10, 2018
4398004
Merge branch 'pr-1374'
jsotuyod Oct 10, 2018
1ed47d7
Update changelog, refs #1376
jsotuyod Oct 10, 2018
013ced3
Merge branch 'pr-1376'
jsotuyod Oct 10, 2018
fdbc448
[plsql] CodeFormat Rule
adangel Oct 10, 2018
c005141
[plsql] CodeFormat Rule
adangel Oct 10, 2018
df60fa3
Upgrading Apache Commons Lang 3 from 3.7 to 3.8.1
Thunderforge Oct 10, 2018
09dbabf
[plsql] CodeFormat Rule
adangel Oct 11, 2018
b073960
Followup on #1366
oowekyala Oct 12, 2018
8e879bd
[plsql] CodeFormat Rule
adangel Oct 12, 2018
3e309ba
[plsql] CodeFormat Rule
adangel Oct 12, 2018
3497a07
[plsql] CodeFormat Rule
adangel Oct 12, 2018
a7bb7c6
[plsql] CodeFormat Rule
adangel Oct 12, 2018
80af8f6
Update release notes, mention new rule
adangel Oct 12, 2018
cba4e87
Replacing deprecated IO methods with ones that specify a charset
Thunderforge Oct 12, 2018
240da0e
Update release notes, refs #1378
adangel Oct 13, 2018
31e6864
Merge branch 'pr-1378'
adangel Oct 13, 2018
3abb833
added new rule - NumericLiteralCovention
rajeshggwp Oct 13, 2018
8f1a440
minor changes and more test cases
rajeshggwp Oct 14, 2018
e8ac08c
Improved message for GuardLogStatement rule (Issue #1202).
fblampe Oct 14, 2018
cce3fa5
Merge branch 'pr-1282'
oowekyala Oct 14, 2018
4619fe0
Update changelog, refs #1383
jsotuyod Oct 14, 2018
03983d8
Merge branch 'pr-1383'
jsotuyod Oct 14, 2018
09d12a3
Merge remote-tracking branch 'upstream/master'
rajeshggwp Oct 14, 2018
6cdb4a1
#1232 changes required after merging with master
rajeshggwp Oct 14, 2018
d1a41ff
#1232 added xpath version property and more test cases
rajeshggwp Oct 14, 2018
56809ca
Add CPD support for antlr based grammar on Golang
Oct 14, 2018
7d65081
PR Review
Oct 14, 2018
921e004
Merge branch 'master' of github.com:pmd/pmd into generic-token-extended
Oct 14, 2018
f8158c3
Fix packages
Oct 15, 2018
94f9ba3
Update changelog, refs #1338
jsotuyod Oct 15, 2018
f4d9287
Merge branch 'pr-1338'
jsotuyod Oct 15, 2018
e1f162d
Minor improvements
jsotuyod Oct 15, 2018
6b28fb1
IUpdate changelog, refs #1386
jsotuyod Oct 15, 2018
c6e63bb
Merge branch 'pr-1386'
jsotuyod Oct 15, 2018
190e49e
Fix version test
jsotuyod Oct 15, 2018
c20bdd1
Use the current classloader
jsotuyod Oct 15, 2018
1e42887
Update changelog
jsotuyod Oct 15, 2018
5ce73a5
Add failing test case
jsotuyod Oct 15, 2018
54830cd
Fix #1369
jsotuyod Oct 15, 2018
65b3389
Update changelog, refs #1369
jsotuyod Oct 15, 2018
a0be971
Merge pull request #1364 from adangel/plsql-select-cursorforloop2
jsotuyod Oct 15, 2018
b75ca07
Allow symlinking the run script
jsotuyod Oct 15, 2018
1cbae7f
Update changelog, refs #1272
jsotuyod Oct 15, 2018
39b4bfd
Add failing test scenario for #1199
jsotuyod Oct 15, 2018
51a7435
Fix #1199
jsotuyod Oct 15, 2018
cef9a35
Update changelog, refs #1199
jsotuyod Oct 15, 2018
5b736fe
Don't depend on realpath being installed
jsotuyod Oct 15, 2018
b0b74ff
Fix the rulechain usage
jsotuyod Oct 15, 2018
dc3ccc9
Merge branch 'master' into plsql-codeformat
adangel Oct 15, 2018
3dc9eda
Port group tests
oowekyala Sep 24, 2018
5cc2c5b
Merge branch 'pr-1387'
adangel Oct 15, 2018
5faeef8
Merge branch 'pr-1391'
adangel Oct 15, 2018
53a60ee
Simplify rule
jsotuyod Oct 16, 2018
285c4c9
Replacing IOUtils.toInputStream() with StringReader
Thunderforge Oct 16, 2018
ead382b
Replacing IOUtils.toString() with readAsString()
Thunderforge Oct 16, 2018
7699fc0
Update release notes, refs #1382
adangel Oct 17, 2018
dc6b4e9
Merge branch 'pr-1382'
adangel Oct 17, 2018
5e641cd
Merge branch 'pr-1388'
adangel Oct 17, 2018
466639f
Upgrading SLF4J from 1.7.12 to 1.7.25
Thunderforge Oct 17, 2018
5693feb
Update release notes, refs #1398
adangel Oct 17, 2018
48edc26
Merge branch 'pr-1398'
adangel Oct 17, 2018
547d11b
Merge branch 'pr-1389'
adangel Oct 17, 2018
d558f52
Merge branch 'pr-1392'
adangel Oct 17, 2018
7edaf78
[java] Improve UnnecessaryModifier explanation
adangel Oct 17, 2018
91a1b5f
Fix ASTFormalComment ClassCastException
jeffhube Oct 17, 2018
ff5e213
[doc] Use https://pmd.sourceforge.io/ruleset_2_0_0.xsd as schema loca…
adangel Oct 18, 2018
73b3a0e
Fix Issue-1343: CommentDefaultAccesModifierRule now extends AbstractI…
Oct 19, 2018
81f8b9f
[apex] ClassCastException caused by Javadoc
adangel Oct 19, 2018
74378ae
Issue-1343: Add method from super class
Oct 19, 2018
377baf7
Replacing IOUtils.closeQuietly(foo) with try-with-resources statements
Thunderforge Oct 19, 2018
d3880ed
Update commons-compress to 1.18
adangel Oct 22, 2018
583c56b
Fix logging when creating cache file
oowekyala Oct 22, 2018
e4db5df
Update doc
oowekyala Oct 22, 2018
dec7f21
Deprecate rule classes of deprecated rules
oowekyala Oct 22, 2018
6b23a6d
Update release notes, refs #1403, fixes #1394
adangel Oct 23, 2018
ae4bd3a
Use normal space
adangel Oct 23, 2018
2848cfc
Merge branch 'pr-1403'
adangel Oct 23, 2018
7cf231b
#1402 ignore quoted jsp end tag
JustPRV Oct 23, 2018
3359820
Add ignore file path functionality
darakian Oct 23, 2018
b96a9f9
Add get function
darakian Oct 23, 2018
0fc6a1f
Add whitespace...
darakian Oct 23, 2018
c2c763b
Minor designer improvements
oowekyala Oct 23, 2018
c97ae83
Merge branch 'jeffhube-cce' into issue-1396
adangel Oct 24, 2018
471c96c
Use visit(AbstractApexNodeBase)
adangel Oct 24, 2018
9af7ea1
Directly delegate to visit(AbstractApexNodeBase)
adangel Oct 24, 2018
3f52ad7
Update release notes, fixes #1396
adangel Oct 24, 2018
1489b25
Merge branch 'master' into issue-1396
adangel Oct 24, 2018
b8111a5
[java] UnusedImports false positive with static ondemand import with …
adangel Oct 24, 2018
666dc36
[java] UnusedImports false positive for static import with package-pr…
adangel Oct 24, 2018
ffca2bc
Add cli reference to ignore list
darakian Oct 25, 2018
a5a189b
[jsp] JspTokenManager has a problem about jsp scriptlet
adangel Oct 25, 2018
8c7d4a4
Update release notes, refs #1406, fixes #1402
adangel Oct 25, 2018
c35c2a0
Merge branch 'pr-1406'
adangel Oct 25, 2018
38640cd
Changing to log an error, rather than printStackTrace()
Thunderforge Oct 25, 2018
0d9080a
Extracting ternary statement into private method
Thunderforge Oct 25, 2018
3cd41d7
Changing printStackTrace() into throwing a RuntimeException
Thunderforge Oct 25, 2018
ca8101c
Fix broken link. Fixes #1412
johanhammar Oct 26, 2018
0d63925
Update release notes, refs #1401
adangel Oct 26, 2018
1d48c49
Merge branch 'pr-1401'
adangel Oct 26, 2018
58f32d0
Update release notes, fixes #1412, refs #1414
adangel Oct 26, 2018
de0fd96
Merge branch 'pr-1414'
adangel Oct 26, 2018
db5115a
[core] Add unit test for ignorelist CLI option
adangel Oct 26, 2018
60bab8f
[doc] Update doc for new CLI option -ignorelist
adangel Oct 26, 2018
2c05bfe
Update release notes, refs #1411, fixes #649
adangel Oct 26, 2018
063c906
Merge branch 'pr-1411'
adangel Oct 26, 2018
ae97d9f
Issue-1343: Remove unnecessary method call.
CrazyUnderdog Oct 27, 2018
39f87ca
Update schema location in rulesets
oowekyala Oct 27, 2018
2dd0033
Fix checkstyle
adangel Oct 27, 2018
ada6d83
[java] CommentDefaultAccessModifier: add test case for ignoredAnnotat…
adangel Oct 27, 2018
faa9fe9
Update release notes, fixes #1343, refs #1400
adangel Oct 27, 2018
741f204
Merge branch 'pr-1400'
adangel Oct 27, 2018
c4e7117
[java] CommentDefaultAccessModifierRule
adangel Oct 27, 2018
b62b216
Merge branch 'pr-1399'
oowekyala Oct 27, 2018
2f5cba1
Merge remote-tracking branch 'origin/master'
adangel Oct 27, 2018
8772a01
Rewrite doc
oowekyala Oct 27, 2018
c5f958d
Merge branch 'master' into pr-1361
oowekyala Oct 27, 2018
f3e0841
Update release notes, refs #1349
oowekyala Oct 27, 2018
04fb6af
Merge branch 'pr-1361'
oowekyala Oct 27, 2018
a822dea
Merge branch 'master' into pr-1410
oowekyala Oct 27, 2018
db979ec
Merge branch 'master' into pr-1409
oowekyala Oct 27, 2018
6ef7ec8
Followup on #1399
oowekyala Oct 27, 2018
6aa6c31
Remove duplicate line from changelog
jsotuyod Oct 28, 2018
673a846
Merge branch 'pr-1408'
jsotuyod Oct 28, 2018
77d392c
Followup on #1399
adangel Oct 28, 2018
74e3a01
Update documentation
pmd-bot Oct 28, 2018
658eb13
Merge branch 'pr-1381'
adangel Oct 28, 2018
4371615
Update documentation
pmd-bot Oct 28, 2018
14f9e8d
Prepare pmd release 6.9.0
adangel Oct 28, 2018
7e4e859
[maven-release-plugin] prepare release pmd_releases/6.9.0
adangel Oct 28, 2018
3c50db2
[maven-release-plugin] prepare for next development iteration
adangel Oct 28, 2018
84d1519
Prepare next development version
adangel Oct 28, 2018
18fd24c
[ci] release script
adangel Oct 28, 2018
e31919f
Upgrade pmd
adangel Oct 28, 2018
6595588
fix scm/tag
adangel Oct 28, 2018
6e3ee3c
Tag XPath implementation as private API
oowekyala Oct 27, 2018
544c819
[test] Kotlin DSL to ease test writing
adangel Oct 29, 2018
8563c80
update release notes
oowekyala Oct 29, 2018
a033b27
Add pmd 7.0.0 dev page to docs
oowekyala Oct 29, 2018
0112bd9
#1341 change and tests
Nov 1, 2018
f50ea15
Update release notes, refs #1424, fixes #1341
adangel Nov 1, 2018
f6dd182
Merge branch 'pr-1424'
adangel Nov 1, 2018
117e9a4
Update documentation
pmd-bot Nov 1, 2018
679eaeb
Deprecate Initializer and functions
oowekyala Nov 2, 2018
e1b5717
Fix #1372
oowekyala Nov 2, 2018
08950c9
Upgrading JCommander from 1.48 to 1.72
Thunderforge Nov 2, 2018
ddf1347
Who really knows regex?
dpilafian Nov 4, 2018
39d340f
Update release notes, refs #1430
oowekyala Nov 4, 2018
81e19a1
Update changelog, refs #1427
jsotuyod Nov 5, 2018
1d9a412
Merge branch 'pr-1427'
jsotuyod Nov 5, 2018
4180fe1
Update documentation
pmd-bot Nov 5, 2018
9d9dc13
Update release notes, refs #1428
adangel Nov 5, 2018
0c1afc4
Merge branch 'pr-1428'
adangel Nov 5, 2018
4fadb1a
[old] added support for different bases, exponent, serialVersionUID.
rajeshggwp Nov 7, 2018
411ca67
Rule name and release version changed
rajeshggwp Nov 7, 2018
415b07c
Merge branch 'master' of https://github.com/pmd/pmd
rajeshggwp Nov 8, 2018
2ccfe15
added acceptable length property
rajeshggwp Nov 8, 2018
c330cfb
Revert "added acceptable length property"
rajeshggwp Nov 8, 2018
fd145e3
added acceptable length property
rajeshggwp Nov 8, 2018
9b6b1a4
minor changes
rajeshggwp Nov 9, 2018
750381c
minor regex change
rajeshggwp Nov 10, 2018
9c17923
Add new rules to release sourceset
jsotuyod Nov 10, 2018
85c82c3
Update release notes, refs #1384
jsotuyod Nov 10, 2018
06d72bd
Merge branch 'pr-1384'
jsotuyod Nov 10, 2018
3f92b9d
[doc] Mention PmdRuleTst class in "Testing your rules"
adangel Nov 10, 2018
2e3866f
[doc] Update gems
adangel Nov 10, 2018
1aa1d1f
[ui] make the language dependencies optional
adangel Nov 10, 2018
2aae4b0
Update release notes, use rule tag
adangel Nov 10, 2018
b0518c9
Format UseUnderscoresInNumericLiterals xpath
oowekyala Nov 11, 2018
1cfc477
Update documentation
pmd-bot Nov 11, 2018
2fecd9e
Merge pull request #1449 from adangel/pmd-ui-optional-deps
jsotuyod Nov 11, 2018
331e29e
Merge pull request #1448 from adangel/docs-test-framework
jsotuyod Nov 11, 2018
a463312
Update README.md
oowekyala Nov 12, 2018
a472a79
Formatting
adangel Nov 12, 2018
a4f8cbb
Merge branch 'pr-1419'
adangel Nov 12, 2018
0e90269
Update release notes, fixes #1284
adangel Nov 12, 2018
4c1a014
Update release docu
adangel Nov 12, 2018
1d652fc
Merge branch 'pr-1423'
adangel Nov 12, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 6 additions & 2 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
Please, prefix the report title with the language it applies to within brackets, such as *[java]* or *[apex]*. If not specific to a language, you can use *[core]*
<!-- Please, prefix the report title with the language it applies to within brackets, such as [java] or [apex].
If not specific to a language, you can use [core]. -->

**Rule Set:**
**Affects PMD Version:**

**Rule:**

**Description:**

Expand All @@ -12,3 +15,4 @@ Please, prefix the report title with the language it applies to within brackets,

**Running PMD through:** *[CLI | Ant | Maven | Gradle | Designer | Other]*

<!-- If relevant, also include your JDK and OS information, e.g. for ClassNotFoundException, LinkageError, reflection failures, etc. -->
5 changes: 3 additions & 2 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
<!--
Please, prefix the PR title with the language it applies to within brackets, such as *[java]* or *[apex]*. If not specific to a language, you can use *[core]*
-->

Before submitting a PR, please check that:
- [ ] The PR is submitted against `master`. The PMD team will merge back to support branches as needed.
- [ ] `mvn test` passes.
- [ ] `mvn checkstyle:check` passes. [Check this for more info](https://github.com/pmd/pmd/blob/master/CONTRIBUTING.md#code-style)
- [ ] `./mvnw clean verify` passes. This will [build](https://github.com/pmd/pmd/blob/master/BUILDING.md) and test PMD, execute PMD and checkstyle rules. [Check this for more info](https://github.com/pmd/pmd/blob/master/CONTRIBUTING.md#code-style)

**PR Description:**

3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,6 @@ bin/
.idea
*.patch
*/src/site/site.xml
pmd-core/dependency-reduced-pom.xml
.bundle
vendor
Binary file modified .mvn/wrapper/maven-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion .mvn/wrapper/maven-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1 +1 @@
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.0/apache-maven-3.5.0-bin.zip
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.4/apache-maven-3.5.4-bin.zip
67 changes: 47 additions & 20 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,39 +1,58 @@
dist: trusty
sudo: false
addons:
apt:
packages:
- oracle-java8-installer
ssh_known_hosts:
- web.sourceforge.net

language: java

jdk: oraclejdk8

env:
global:
- secure: KBEuB6U1p5RQXSYe157AwydFr/zpXQPA0IChVCgZV+X1mMyy9ZtrjH1J1AXuviseDDXDbaT25sRnsvpl82rfRw2xOkMGXHy4N95/ylTSr8DjHxTao71BhXsvFycNobFva5y2EGNWqDvpS8I2oSZo7Qk4la3yep3rcJQvcy6RDbbhpDTbL1QMFyadunIBm0WtqbunrMqtjSqaoPsXz8TiQuxHvX4vEXzVbaxV1QQt79Vi+daa6wAV3mRQAugnx+UffsC8JqMxgm06usWeJgCJzxgm8E7clZCLmf53B2TL8dK6bIYbqyvOY3uFxitsTG0d8Z0GOJwXBgZNgbniTRO8ZJSty5eZP8LBybbjVLSL25DNTWtCjADUL/uySnXIEidlMt2N/3QmH7zrGAfAk/tIwKpdRca2GLLydeXf6PSkiahnPEkIY/QupcsOLELhdifpdOjb8QW1OenA+vUbNM9dccLwKnX6Fj9cu4VQG601AcYDr2eyhq8WYkr3wYdw/6KdUa3hmplowTBs+qguppP+eOSgGuEsy38KLtqnvm6WlHy6tcLmcVYKG3DmR1b7TWXsOXC6/VMH8BHBkvsF1QdRg9+Cgx07vX3Hw7roPiYzmaO9Ajs20ATsUfRskMuWCTeTSK5pN8X27veRCZlhFjeKQMDdmfVwzpAfRgKsl3TEn1I=
- secure: U1DfAv6acUUWe+dao/ZSDUX64JRadNJY16rITsdrM4ZNAJSuXpEY3p/LWcYjN7D49YmyutbXH9+L3KKQUQGrGXj9QTarfYvd8ZsKt4FK8yv7AFy+RQNIbAjNEHBzHx15p+srMheTaetl7aLwY0qhF+D/RtGapxHKyY4dBHrb0lp8VGyiCiL7Aop8GGskosi1mtirPBp/BStPZ2bEyxG0QzU5SsVWkJWwV9aWLPVAR/n7Xgx/6Gjl6Fed2c/WSrWi4vchm3Ny8pfTweOax3PGYYjBVxIfuX0mqmwuJsY7gNfXCfN3dPiPKGJPFy1pC+LGyGkklO5ReKFLd4O1ME6fU0dlIGfD6n+Q4H6/w9FHXegcKTfWIJm/MFa6vA/tJM5R6zJQuiTQJboHm/UmS/iQj76z0p6sK15Xp5vFId+/dHKqa8xY+Bt6HiXy6z401HOc8QcYBAf7TqhqUt/ZE7HN4be46uR90KmzIrWz6wEoDW7HfwQ9ZMbs55zoOXrvekyE9/gXskypO0p2JT3Y0vlvO27KQvIrSwI480kOVOrlyrYA+LZqlcKaayOuCuZh4lITQUYinUoZZict5joYthH+Cyh2zovoBpxsntDJdMnaZNLtSC7hlhpbMBYaT2y1O6vZH5Yix0mxuDvs/x6ogP5CNBeUYlXhaL+g4GnwKyr0ZA0=
- secure: "ElWjttpoMwqezP2zyHkx7CiPON/mRLUW7SsSlEqdlTUYRIaSaL7sShUORJUzj58U/Nnfi/eY4Rweo0CtVu20sG16s9B4adnmPS44LAitztybPR/co93gN9qb8jiIl41nVcOJq+Rut2Z4nr8AGRhVCG9Drg4+DreCqQ4DE5ZD6J99GN0IFGrREt59HQUlBlT9jD0AndK/1GQ6kWAenuSREE2P5ih59rf6FrrfddQO5iqyFFoaHek3JiOmpaLK+z7i4EvMKsAJEooFNuGhHVuyaJJRRZHAncGiQ+uW/yL7G5rY51G6YSNJczzEtfrRg+YrIUbokUPmifSIbnXO/AIZRAq1dMhA8exRc5n+75RB1X164qm4a+yggdybFBh0L59xu606PJQJAuWy+x10nled7FAVXiotxbB0r2bhlVmWFEN+FWPqXg2rVkHvw6+5PM67rG5g1LCgjKzb9I6JWPiVI+EMn8Pw8gryL2Sdqtl08Da0Ypbl2ZK/afU4CEPEKnrDc9ecXKjacehTYwGS48V213XvArcmoEpsyZDRSMTrvK3/e29GEaxoK/ZzWJylpeOtsICEEFYEBEiDsiIW4C50MIUPT2xHV6MaPQzhkuwrbQ6QFYzHzihBaiQuMmXUQ4DMb3fOPkNZAQHQo8CgJ78IcbCABAoGv9mu/fo2KoLo11U="
- secure: "gxI7W4V4fUPQLMCvecXXdet1/mCh6m0RIQMtErVVOnwxEEjeDmko/3rHSl+wk6IeFaaQKcmHJJSJEj+e5TgWRH1uuzCnbFHZhuH28ce/H0EqLJ3GTXeDEgFLzhh//T3ySOZChZELgJ67cKxZJNFMhBVOR2/QIGjZjdzvl36ugsu80Ak3XJb8HCm8D2P8Vuezz/OlCkSOGXaiqZXfflV/cuaLWuueGfQGW9x/UyDTNsuBdB7YnEcxOWt8RgB4JrcPGV7/etxLHXTw9IMEeUhQ/RsxLZHKNYt9cx/QOZkpXemhdT9L2pAIi77eO98x+yAfB1qV6T6IeDd/OiABUzfb7asNBwE+bYRuVkCiWLo3x3hs8FcgsPe4L10guxfRMJPxax9E7uYb9TFxtvc42dDWNyp1BVCtEtmjErO4CJeW97ukhgkUkPhzUZgQ2Gj5Tn4VRjQOQyzh/S/YsHyfxoAQrscc/3bq5PBmtdowyGQd5dsvShdpE6glf+HnBZ8TCw5BaxQuTjapQWjsGuJVCVsrNDtwOFy5UTfxK9OeTUsjwfO5JjkoIeqGyLHPnTMWyZ6EYa//nWPOU1KgVE6Hrzfr3zxEzL1nN/TYahzhKOxXE701W9YhTmhCVljMlSYioTUfTaXHgGLpojvSWlhsTbc3r0gj4NglqakIy7MKgQLgES8="
- secure: "otZkFNhApMofp2Jl2baZdpNEPcTa79Xc9wyOw1gl1+ubCLtOGr32FDUSr0HQWKrGXcYZR4bc0A80hx0/ykZ/twJaRAabcNYtjwRMDKKrp3plvp8RTZlB1QW85nsdmk3qmHACzc94wKnmcaDohM5FPxnWspZG5Y4ejYX4HEK6r1fwL4FjMPSLd5QW8yCaAc7dpBSm2UyIXuuDjkekXblJFe8ydbf9aF97WKJMCwqIs9Zo5oJa2pnWCw47ixwjVdkaH5x5727I+YmFqn5rjdEideUFEAlggqMaxuOtfYhuG/8k5W3Q/+WX+G7rEPTcemjmaosbbpoOUE0YUHV3Wi3R5D66NuWIpQwX6kw4rTwL0YIh//0aNb8jv4Z8KwkiTMrYuj0we5tXzARp3yYn56P0JBAm6BihNhfEBv06655Tg5LUsWqUTZCl3KJhwtO1N+OuOkE5qoZm59knq6DeZOsYWAVb3MpzklP06kXGYTjb44PVMUc6ynuuZjgPJDv/0906feA3REHBJVxd3PvJp1c8VvQSeW3ndghEz0akJHY/jxV1rJZAZC1ZeshYUpBNmh0sFDty/UE43IvIB4EInypQHyTtQvMc6LuLjTeu2E5ZMsA3udj66EMrYm4Y2eheJycSfttDqzhsKXIVJ4LmA/xtDR01cp1jsqbbZBhVI67rA40="
- secure: "mmHRnK/8CHfgtwaTN3MgjFD1R8EVQhIb/a0Aag3gPaHWW52Ex6xWG7GsF4kRcdzHdIdrQxHZTiDa2oVMWbnQ16CAu4dZJadwTxhBW4JmE1tsi2C6i+uwMBPvnKBXHwt+QOAqNB0L/ByYwWLkucSLoyRs6qU0i7sJ3ZC/EPCuLI8VfBlFUVegSbp2WmclmFnxOi5MKr15Zwd8BGgyWUsvd1OHxhvO3Xr/ZPO4R+1kIgyojloTMu6oGM/shYgsrUXgmI/WvZRTq+25SRCjUmATJtuDXXgVeJtYabi/+Zju5Z7K06oaKvFYM+BgZWPmGQkVCxKVjSlug0rx6+qgRKIf/B/cPxmQDS0ZZVDmDcbxeibBL9JhRqIDwDb0XS9t1qBXvIJ5E4ZmdX/XuvLCnC4xJptu/vHyKl1wbRM3dcXEBk8J0knJc4JvY2yupF3LS32sfEHftLwzr63U3/0dOQvsCSJRBy5zgI8ieABUZAeZmmaQ6RCGOTEYrGO2G4CCF2uVq4YdrCOsfmrb0DzH8llNMkXKzXlITRvmkuBlTRRKxGnPzS3vf0iicdAkmTiU5u7lArFFc7IKcW4ypO+RKDTUpq74K+UZBI9eBjV7Po368EO8epJ5aIx32a2kyS/hYWkS/dZh7I0fNZa2qBUceZO/KZGRjH4dQFW9t0J9Q7LLXJY="
- secure: "geOU/7VR83KYTOCR5XkgFqnHJEnXeB6hNDE7UFcN4ZsL9uVLhxlDVWV3ujJ87nyBzggG1KfSnUx11UwOQrbBl0K6sEXo/B2q5ytOsWoSLi7+0qm/uhhw/DTBOq57p8TIDKFM7rDhO7uajSn7Y86LeZkh9wIs5265Fh1yhCkiPbczDUMsX4P0GGg2qgkIKSBw4DZf6sPDc4xjJq/4/cLnjXo/K0ZYAIoSLqDfe1gmkzMtQlad+1t8Lwv/gOJ4BNRF4a5aEvGF6kbFovFoeFWCQTKlkn6VJtY+BETGKW2RH9efGeMs7JbBbNm+nnpoNsbJ0gdmGlhSbWT8enIm72/P0ThTBJWVcLJ30tUd0UeYD9C49wbJ3RHSxsoUKP9YhHJ+XKNx+8irkJ8LPCkNMQEFE153gEVvU7tCgah9Uq6laYZv9cQE0dWzNt3//Ymls8BzY38Ha4PbrIIJqEuWwnAX6ZgTgzVtXx1AJjkDFG9KFKPhN7NfNMbh7rn5C84a1h5zrIydm+6RcIBC+xTLDEiN7djiquf3PcNtyGLcO8dNN4Uv8iU0Jw8ch3+w0PJO53v5py+IS1V8pwwYaYF2iVPOoziS0tP8MsgYVGwpTZhvz3v8x0ge8r6KJE4zdvoPtCRNr2Oo3sJGYqkt86Hu6agKFiljP5AgJNx7iQD5GQn6J3w="
- secure: "gqyPF3d75JuwZptnQQQKO6rGUILXGO09y9dZhShdX8qq5Mexa2ISk77Y/b0yyAdhJMgEglls5cWlbHkwCAB0i4yL25RE5CtQUe4er+CIKwBIs0M56ghbcOwWAFB/cXeyyWmXDHBVnVUeKm7IJ34txsEclnMzQSR/DInSzsCFMUQok8HEaWZNssMjyRgo6goKGdG5vNWGfLLY7mKGMe/6PpYJD0G8k+Na08aX06ZWph38He8O3imUAngoQrxiSp0UYmnHDkigbV7S2LdZOsj7kMxkiyigzK/P1eygHVbFAhohLroaqS9B4CBK7QeOyup2vxVKqJVzFwOCylD0786CImvaG2ZYMtvJkapvaEE0mdMlyYpHgdIkmHZu28aMW7hXEhxHyBAxKuPcj5eGCGziO+ztCvfYIA9CGs1uA4KLrED7SahvB0oXnt3KTFdRc857cWcpp2NmRKihLzVdgHlmT8zcYaec3zP1VdMoa2bmLHoaZtAwvMTcAG56FcET1p7f9v+uiU88ZeptEjTJfpAWlq34tpwZXNyIQi5IROocSHM+PKTgLAsAMP5klGascr8E0sEzREl7tg8hqEwXKym/sVKyT+HMptA3UZcrZZhm07/cmQ0pUVvbV9QDb0MzU3O2wF7vT3U7R7Fb1u0LxMjblPyEazTp8ldabVRJREwlsDc="
- secure: "JIhuqaI0i+zvuqqXiQBHpuKr7AQ8jfk6Gbr8Qgiq4yJtdEWXZGxnAT9BmlbjkgT7ABXvLgxf2CIdUOMo1yYfBlxQL/y5+e89jaVpYF3tvNAzYQ1e12VzQRsd/jDb7qvm7tw3rDHEn3dSEot7Q6KbPcL6WzWJINVMCCmOgvq9gKHgE6Y5q5EgZ5rxiXyuO27ndzcbxaor4PIaiSzHO9+AJQ7p2zDLP+kG4nKVTBX0l9VoKiYFhIpIhpbigi3jyLDMDRiWpwTWZC6P8/RXfZg/lc5ADOuM2DM8oXPpZuqOa/g31LWQOSCuEnQ1G16vbLgipSPpgAc7jYWD5cywhG9dLkiKaZDh5x0meLM2RoAgz6eAnQfTTqJ68OM9o9yXjubEedsNpNRAr9/DXMd+fbh10W2vbvL5HCNB3lic3anehhR9le7PLuEKxg654wXt3KM2PZGVWbotIyBK0CvGzqGkppvwT23QdDDqSdkWuGQIhGQ0xBOdYkwebycxP5wwPUmObG+mymQ1Be2BXvmghttsiJdKlt4CVSYOJUMus6kU32G95hdTgKblsX4J1Of2i1nYsjyMKh3k945tqXwQrIsxOOQug0oIkz24zlLaOaQcorWtJ6Y1HPaZKpVIFUEF0y8Uq/O4oB2bOYC6WDUQfpj7nRG6xbi+BeBS84m1ttCEk4g="
matrix:
- BUILD=deploy
- BUILD=doc
- BUILD=sonar
- BUILD=coveralls
- secure: "VezxV+VdmbmtrQYT8AZIyg41WBROxuxpumerkcubADF7V4wV6lwx9Rd2G6yAr0VuHCNUUhS4m+gPFIsuiQbAhyupiEkwhzUYqk1tF+LITlLLPegLypjiLmhJMwGUNuDSSsih1Icmg9FzrP4VyzgGn9pBjoG9QYj1civBZeGwg++e/XDYlHMXrpd/UEfMKVB71JwB0tle4fKJZSvblIqP62yvbBaKHx6A4+ZWzJV5Vps0DoIeNtKCNmNNloKZVHfjbsvqSjnMYUJzkOzyPkM822q41N/D+3IAufO16+jH/W0vAZeN0e4GXiN5W+CVkr2Gbh0FwkVQcI3bekaOIn45XLUMLKdf+JsWDPKz9RraHelR9YxL5GoJ7ntwvmucxw0p8EVyJ/xLk/pBCP8iHq0Jb8//js25XHgxzzAWI37MErPAAGgTKZAVdAN0mGXbe63tWmwaBlEbK8h2A8di6abW5x6YHTkTo2BRlHUSTU8dE3VqTnpSkne5n1SlEa4g1Bci3J45M0/pLmHV6yCxCM5BrVXS5ByaB61py/umSbpmdIBFV6TM1MaKK3lAucQrR+8To/vCbm8XqPyujJdOR+ENIuuDgEU/Yh5Hv5SAODekUYaCp4pjfGzFADHQWVNDxIOXrwBN4OfSiAvRc1x6HXndOmNI4QtOxheuCRFFthq8VZI="

matrix:
fast_finish: true
include:
- name: "linux - mvn deploy"
os: linux
dist: trusty
sudo: false
env: BUILD=deploy
- name: "linux - build documentation"
os: linux
dist: trusty
sudo: false
env: BUILD=doc
- name: "linux - run sonar"
os: linux
dist: trusty
sudo: false
env: BUILD=sonar
- name: "linux - run coveralls"
os: linux
dist: trusty
sudo: false
env: BUILD=coveralls
- name: "macosx - mvn verify"
os: osx
env: BUILD=deploy

before_install:
- wget https://github.com/sormuras/bach/raw/master/install-jdk.sh
- bash .travis/setup-secrets.sh
- bash .travis/configure-maven.sh
install: true
- rvm install 2.4.1
- rvm use 2.4.1
# Install OpenJDK 11 - see https://sormuras.github.io/blog/2018-03-20-jdk-matrix.html
install:
- . ./install-jdk.sh -F 11 -L GPL -W $HOME/jdk
- gem install bundler
- bundle install --with=release_notes_preprocessing --path=vendor/bundle
before_script: true
script: source .travis/build-$BUILD.sh
after_success: true
Expand All @@ -46,24 +65,33 @@ deploy:
file_glob: true
file:
- pmd-dist/target/pmd-*.zip
- target/pmd-doc-*.zip
- docs/pmd-doc-*.zip
skip_cleanup: true
on:
tags: true
repo: pmd/pmd
condition: "${TRAVIS_SECURE_ENV_VARS} = true && ${BUILD} != sonar"
condition: "${TRAVIS_SECURE_ENV_VARS} = true && ${BUILD} != sonar && ${BUILD} != coveralls"
after_deploy: bash .travis/release.sh

notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/0e6dd310db54b96c2653
- https://webhooks.gitter.im/e/65efc1ea65175ad23ab6
on_success: always # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: never # options: [always|never|change] default: always
email:
recipients:
- andreas.dangel@adangel.org
on_success: always
on_success: change
on_failure: always
cache:
directories:
- "$HOME/.m2"

- vendor/bundle
- "$HOME/jdk"
- "$HOME/.rvm/"

# Secure Keys, that need to be set for snapshot builds
#
Expand All @@ -75,7 +103,6 @@ cache:
# PMD_SF_USER - the sourceforge user, which is used to upload created binaries to sf files section. Note: an ssh key is
# required. See "before_install".
#
#
# Secure Keys, that need to be set for releases:
#
# PMD_SF_APIKEY - used to make the new release the default file in the files section. See https://sourceforge.net/auth/preferences/
Expand Down
18 changes: 18 additions & 0 deletions .travis/all-java.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0"?>

<ruleset name="All Java Rules"
xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 https://pmd.sourceforge.io/ruleset_2_0_0.xsd">
<description>Every java rule in PMD which is used for the regression tests with pmdtester</description>

<rule ref="category/java/bestpractices.xml" />
<rule ref="category/java/codestyle.xml" />
<rule ref="category/java/design.xml" />
<rule ref="category/java/documentation.xml" />
<rule ref="category/java/errorprone.xml" />
<rule ref="category/java/multithreading.xml" />
<rule ref="category/java/performance.xml" />
<rule ref="category/java/security.xml" />

</ruleset>
18 changes: 15 additions & 3 deletions .travis/build-coveralls.sh
Original file line number Diff line number Diff line change
@@ -1,16 +1,28 @@
#!/bin/bash
set -e

source .travis/logger.sh
source .travis/common-functions.sh

VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.5.0:exec | tail -1)
echo "Building PMD Coveralls.io report ${VERSION} on branch ${TRAVIS_BRANCH}"
VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.5.0:exec)
log_info "Building PMD Coveralls.io report ${VERSION} on branch ${TRAVIS_BRANCH}"

if ! travis_isPush; then
echo "Not proceeding, since this is not a push!"
exit 0
fi

(
# disable fast fail, exit immediately, in this subshell
set +e

travis_wait ./mvnw -q clean test jacoco:report coveralls:report -Pcoveralls
./mvnw clean install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
./mvnw package jacoco:report coveralls:report -Pcoveralls -B -V

if [ $? -ne 0 ]; then
log_error "Error creating coveralls report"
else
log_success "New coveralls result: https://coveralls.io/github/pmd/pmd"
fi
true
)
122 changes: 101 additions & 21 deletions .travis/build-deploy.sh
Original file line number Diff line number Diff line change
@@ -1,57 +1,137 @@
#!/bin/bash
set -e

source .travis/logger.sh
source .travis/common-functions.sh

function push_docs() {
if git diff --quiet docs; then
echo "No changes in docs..."
log_info "No changes in docs..."
else
echo "Found changes in docs..."
log_info "Found changes in docs..."

if [ "$TRAVIS_BRANCH" == "master" ]; then
git config user.name "Travis CI (pmd-bot)"
git config user.email "andreas.dangel+pmd-bot@adangel.org"
git add -A docs
git commit -m "Update documentation"
MSG="Update documentation

TRAVIS_JOB_NUMBER=${TRAVIS_JOB_NUMBER}
TRAVIS_COMMIT_RANGE=${TRAVIS_COMMIT_RANGE}"
git commit -m "$MSG"
git push git@github.com:pmd/pmd.git HEAD:master
log_success "Successfully pushed docs update"
else
echo "Not on master branch, won't commit+push"
log_info "Not on master branch, won't commit+push"
fi
fi
}

function upload_baseline() {
log_info "Generating and uploading baseline for pmdtester..."
cd ..
bundle config --local gemfile pmd/Gemfile
bundle exec pmdtester -m single -r ./pmd -p ${TRAVIS_BRANCH} -pc ./pmd/.travis/all-java.xml -l ./pmd/.travis/project-list.xml -f
cd target/reports
BRANCH_FILENAME="${TRAVIS_BRANCH/\//_}"
zip -q -r ${BRANCH_FILENAME}-baseline.zip ${BRANCH_FILENAME}/
rsync -avh ${BRANCH_FILENAME}-baseline.zip ${PMD_SF_USER}@web.sourceforge.net:/home/frs/project/pmd/pmd-regression-tester/
if [ $? -ne 0 ]; then
log_error "Error while uploading ${BRANCH_FILENAME}-baseline.zip to sourceforge!"
log_error "Please upload manually: https://sourceforge.net/projects/pmd/files/pmd-regression-tester/"
else
log_success "Successfully uploaded ${BRANCH_FILENAME}-baseline.zip to sourceforge"
fi
}

VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.5.0:exec)
log_info "Building PMD ${VERSION} on branch ${TRAVIS_BRANCH}"

MVN_BUILD_FLAGS="-B -V"

VERSION=$(./mvnw -q -Dexec.executable="echo" -Dexec.args='${project.version}' --non-recursive org.codehaus.mojo:exec-maven-plugin:1.5.0:exec | tail -1)
echo "Building PMD ${VERSION} on branch ${TRAVIS_BRANCH}"
if travis_isOSX; then

if travis_isPullRequest; then
log_info "The build is running on OSX"
./mvnw verify $MVN_BUILD_FLAGS

echo "This is a pull-request build"
./mvnw verify -B -V
elif travis_isPullRequest; then

log_info "This is a pull-request build"
./mvnw verify $MVN_BUILD_FLAGS
(
set +e
log_info "Running danger"
bundle exec danger --verbose
)

elif travis_isPush; then

if [[ "$VERSION" != *-SNAPSHOT && "$TRAVIS_TAG" != "" ]]; then
echo "This is a release build for tag $TRAVIS_TAG"
./mvnw deploy -Possrh,pmd-release -B -V
elif [[ "$VERSION" == *-SNAPSHOT ]]; then
echo "This is a snapshot build"
./mvnw deploy -Possrh -B -V
if [[ "${VERSION}" != *-SNAPSHOT && "${TRAVIS_TAG}" != "" ]]; then
echo -e "\n\n"
log_info "This is a release build for tag ${TRAVIS_TAG}"
echo -e "\n\n"
./mvnw deploy -Possrh,pmd-release $MVN_BUILD_FLAGS
elif [[ "${VERSION}" == *-SNAPSHOT ]]; then
log_info "This is a snapshot build"
./mvnw deploy -Possrh $MVN_BUILD_FLAGS
push_docs
else
# other build. Can happen during release: the commit with a non snapshot version is built, but not from the tag.
echo "This is some other build, probably during release: commit with a non-snapshot version on branch master..."
./mvnw verify -Possrh -B -V
log_info "This is some other build, probably during release: commit with a non-snapshot version on branch master..."
./mvnw verify $MVN_BUILD_FLAGS
# we stop here - no need to execute further steps
exit 0
fi

# Uploading pmd distribution to sourceforge
rsync -avh pmd-dist/target/pmd-*-${VERSION}.zip ${PMD_SF_USER}@web.sourceforge.net:/home/frs/project/pmd/pmd/${VERSION}/
rsync -avh docs/pages/release_notes.md ${PMD_SF_USER}@web.sourceforge.net:/home/frs/project/pmd/pmd/${VERSION}/ReadMe.md
(
# disable fast fail, exit immediately, in this subshell
set +e

echo -e "\n\n"
log_info "Uploading pmd distribution to sourceforge..."
rsync -avh pmd-dist/target/pmd-*-${VERSION}.zip ${PMD_SF_USER}@web.sourceforge.net:/home/frs/project/pmd/pmd/${VERSION}/
if [ $? -ne 0 ]; then
log_error "Error while uploading pmd-*-${VERSION}.zip to sourceforge!"
log_error "Please upload manually: https://sourceforge.net/projects/pmd/files/pmd/"
else
log_success "Successfully uploaded pmd-*-${VERSION}.zip to sourceforge"
fi

)

( # UPLOAD RELEASE NOTES TO SOURCEFORGE

# This handler is called if any command fails
function release_notes_fail() {
log_error "Error while uploading release_notes.md as ReadMe.md to sourceforge!"
log_error "Please upload manually: https://sourceforge.net/projects/pmd/files/pmd/"
}

# exit subshell after trap
set -e
trap release_notes_fail ERR

RELEASE_NOTES_TMP=$(mktemp -t)

.travis/render_release_notes.rb docs/pages/release_notes.md | tail -n +6 > "$RELEASE_NOTES_TMP"

rsync -avh "$RELEASE_NOTES_TMP" ${PMD_SF_USER}@web.sourceforge.net:/home/frs/project/pmd/pmd/${VERSION}/ReadMe.md

log_success "Successfully uploaded release_notes.md as ReadMe.md to sourceforge"

)


(
# disable fast fail, exit immediately, in this subshell
set +e

upload_baseline

true
)

else
echo "This is neither a pull request nor a push!"
log_info "This is neither a pull request nor a push. Not executing any build."
exit 1
fi
Loading