Skip to content

Commit b6eca2e

Browse files
committed
v0.52.0
2 parents 0866efb + 679838c commit b6eca2e

File tree

765 files changed

+9535
-23145
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

765 files changed

+9535
-23145
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ deps/
77
erl_crash.dump
88
target/
99
xtend-gen/
10-
!xtend-gen/.keep
10+
!**/.keep
1111

1212
.vagrant
1313
*.class

CHANGELOG.md

Lines changed: 1152 additions & 17 deletions
Large diffs are not rendered by default.

CHANGES

Lines changed: 0 additions & 1230 deletions
This file was deleted.

CONTRIBUTORS

Lines changed: 0 additions & 15 deletions
This file was deleted.

CONTRIBUTORS.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
Core team:
2+
3+
* Vlad Dumitrescu <[email protected]>
4+
* Jakob Cederlund <[email protected]>
5+
6+
Warm thanks to (in alphabetical order):
7+
8+
* Alain O'Dea <[email protected]>
9+
* Aleksandra Lipiec <[email protected]>
10+
11+
* Dzmitry Pamakha <[email protected]>
12+
* György Orosz <[email protected]>
13+
* Huiqing <[email protected]>
14+
* Johannes Weißl <[email protected]>
15+
* Krzysztof Goj <[email protected]>
16+
* Piotr Dorobisz <[email protected]>
17+
* Tomas Daarstadt <[email protected]>
18+
* Zsolt Laky <[email protected]>

Jenkinsfile

Lines changed: 92 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,94 @@
11
#!groovy
22

3-
stage 'Checkout'
4-
node {
5-
wrap([$class: 'TimestamperBuildWrapper']) {
6-
checkout()
3+
pipeline {
4+
agent any
5+
options {
6+
disableConcurrentBuilds()
7+
timestamps()
8+
skipDefaultCheckout()
9+
buildDiscarder(logRotator(numToKeepStr: '10'))
710
}
8-
}
11+
stages {
12+
stage('Checkout') {
13+
steps{
14+
retry(3) {
15+
timeout(time: 30, unit: 'SECONDS') {
16+
script {
17+
checkout()
18+
}
19+
}
20+
}
21+
}
22+
}
923

10-
stage 'Compile'
11-
node {
12-
wrap([$class: 'TimestamperBuildWrapper']) {
13-
compile()
14-
}
15-
}
24+
stage('Compile') {
25+
steps{
26+
script {
27+
compile()
28+
analyze()
29+
}
30+
}
31+
}
1632

17-
//stage 'Tests'
18-
// runTests()
33+
stage('Archive') {
34+
steps{
35+
script {
36+
archive = archive()
37+
}
38+
}
39+
}
1940

20-
stage 'Analyze'
21-
node {
22-
wrap([$class: 'TimestamperBuildWrapper']) {
23-
analyze()
41+
stage('Publish') {
42+
steps{
43+
script {
44+
publish(archive)
45+
publishRelease(archive)
46+
}
47+
}
48+
}
2449
}
25-
}
26-
27-
stage 'Archive'
28-
node {
29-
wrap([$class: 'TimestamperBuildWrapper']) {
30-
archive = archive()
50+
post {
51+
always {
52+
deleteDir()
53+
}
3154
}
32-
}
3355

34-
stage 'Publish'
35-
node {
36-
wrap([$class: 'TimestamperBuildWrapper']) {
37-
publish(archive)
38-
publishRelease(archive)
39-
}
56+
4057
}
4158

4259
///////////////////////////////////
4360

4461
def checkout() {
4562
deleteDir()
46-
if(env.BRANCH_NAME != null) { // multi branch
47-
checkout scm
48-
git_branch = env.BRANCH_NAME
49-
} else {
50-
git url: '[email protected]:vladdu/erlide_eclipse.git', branch: 'pu'
51-
sh 'git symbolic-ref --short HEAD > GIT_BRANCH'
52-
git_branch=readFile('GIT_BRANCH').trim()
53-
}
63+
checkout([
64+
$class: 'GitSCM',
65+
branches: scm.branches,
66+
extensions: scm.extensions + [[$class: 'CleanCheckout'], [$class: 'CloneOption', depth: 10, noTags: true, reference: '', shallow: true]],
67+
userRemoteConfigs: scm.userRemoteConfigs
68+
])
69+
5470
sh('git rev-parse HEAD > GIT_COMMIT')
5571
git_commit=readFile('GIT_COMMIT')
56-
short_commit=git_commit.take(6)
72+
def short_commit=git_commit.take(6)
5773

5874
//currentBuild.setName("${short_commit}__${env.BUILD_NUMBER}")
59-
currentBuild.setDescription("${git_branch} - ${short_commit}")
75+
currentBuild.setDescription("${env.BRANCH_NAME} - ${short_commit}")
6076
}
6177

6278
def compile() {
63-
wrap([$class: 'Xvfb', displayNameOffset: 100, installationName: 'xvfb', screen: '1024x768x24']) {
64-
dir('org.erlide.parent') {
65-
sh "chmod u+x mvnw"
66-
sh "./mvnw -B -U clean verify -P help -Dmaven.test.failure.ignore=true"
79+
dir('org.erlide.parent') {
80+
sh "chmod u+x mvnw"
81+
def product
82+
if(env.BRANCH_NAME=="master")
83+
product=",build-product"
84+
else
85+
product=""
86+
profiles="help${product}"
87+
wrap([$class: 'Xvfb', displayNameOffset: 100, installationName: 'xvfb', screen: '1024x768x24']) {
88+
sh "PATH=$PATH:~jenkins/erlide_tools && ./mvnw -B -U clean verify -P ${profiles} -Dmaven.test.failure.ignore=true -X"
89+
}
90+
if(env.BRANCH_NAME=="master") {
91+
// TODO rename product artifacts
6792
}
6893
}
6994
}
@@ -72,17 +97,10 @@ def analyze() {
7297
step([$class: 'WarningsPublisher', canComputeNew: false, canResolveRelativePaths: false,
7398
consoleParsers: [[parserName: 'Java Compiler (Eclipse)']],
7499
excludePattern: '', healthy: '', includePattern: '', messagesPattern: '', unHealthy: ''])
75-
76100
step([$class: 'TasksPublisher', canComputeNew: false, excludePattern: '', healthy: '', high: 'FIXME,XXX', low: '', normal: 'TODO', pattern: '**/*.java,**/*.?rl,**/*.xtend', unHealthy: ''])
77-
78101
step([$class: 'AnalysisPublisher', canComputeNew: false, healthy: '', unHealthy: ''])
79-
80102
step([$class: 'JUnitResultArchiver', allowEmptyResults: true, testResults: '**/target/surefire-reports/TEST-*.xml'])
81-
82-
// locks
83-
84-
// jacoco
85-
103+
step([$class: 'JacocoPublisher', exclusionPattern: '**/*Test*.class,org/erlide/wrangler/**/*,org/erlide/cover/**/*,org/erlide/tracing/**/*,org/incava/**/*,org/fishwife/**/*,com/ericsson/**/*,nl/kii/**/*,org/erlide/annotations/**/*,org/erlide/util/CharOperation,org/erlide/util/Util', sourcePattern: '**/src/'])
86104
}
87105

88106
def archive() {
@@ -95,28 +113,42 @@ def archive() {
95113
step([$class: 'ArtifactArchiver', artifacts: archive, fingerprint: true])
96114
}
97115
}
116+
if(env.BRANCH_NAME=="master") {
117+
step([$class: 'ArtifactArchiver', artifacts: 'org.erlide.product.site/target/products/*.zip', fingerprint: true])
118+
}
98119
return archive
99120
}
100121

101122
@NonCPS
102123
def getVersion(String archive) {
103-
def m = (archive =~ /org.erlide_([0-9]+\.[0-9]+\.[0-9]+)\.(.+).zip/)
124+
def m = (archive =~ /org.erlide_([0-9]+\.[0-9]+\.[0-9]+)(\.(.+))?.zip/)
104125
return m[0]
105126
}
106127

107128
def publish(def archive) {
129+
sh "git remote get-url origin > REPO"
130+
def isMainRepo = readFile('REPO').trim().contains('github.com/erlang/')
131+
132+
if(!isMainRepo) {
133+
// only do a release if in main repo
134+
return
135+
}
136+
137+
// FIXME we can't push to https git url, needs password... Jenkins Github plugin uses https...
138+
//return
139+
108140
def v = getVersion(archive)
109141
def vsn = v[1]
110142
def ts = v[2]
111143

112144
def repo
113-
switch (git_branch) {
145+
switch (env.BRANCH_NAME) {
114146
case "release": repo = "beta"; break
115147
case "master" : repo = "releases"; break
116148
default: repo = "nightly"
117149
}
118150
def kind
119-
switch (git_branch) {
151+
switch (env.BRANCH_NAME) {
120152
case "release": kind = "B"; break
121153
case "master" : kind = "R"; break
122154
case "pu" : kind = "A"; break
@@ -165,7 +197,7 @@ def generate_version_info(def vsn, def base) {
165197
}
166198

167199
def publishRelease(def archive) {
168-
def isMaster = (git_branch=='master')
200+
def isMaster = (env.BRANCH_NAME=='master')
169201
sh "git remote get-url origin > REPO"
170202
def isMainRepo = readFile('REPO').trim().contains('github.com/erlang/')
171203
if(!isMaster || !isMainRepo) {
@@ -185,17 +217,17 @@ def publishRelease(def archive) {
185217
def git_tag = readFile('GIT_TAG').trim()
186218
if(git_tag == null || git_tag == '') {
187219
sh "git tag -a ${vvsn} -m ${vvsn}"
188-
sh "git push origin ${vvsn}"
189-
git_tag = vvsn
220+
//sh "git push origin ${vvsn}"
221+
//git_tag = vvsn
190222
}
191223
if(git_tag != vvsn) {
192224
// if there is a tag, but it's not $vvsn, skip publishing
193225
return
194226
}
195227

196228
def draft = true
197-
def body = "test"
198-
def owner = "vladdu" // "erlang"
229+
def body = ""
230+
def owner = "erlang"
199231
def repository = "erlide_eclipse"
200232
def access_token = "${env.GITHUB_TOKEN}"
201233

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
*erlide* is an Erlang IDE based on Eclipse.
22

3-
[![GitHub version](https://badge.fury.io/gh/erlide%2Ferlide.svg)](https://badge.fury.io/gh/erlide%2Ferlide)
3+
[![GitHub version](https://badge.fury.io/gh/erlide%2Ferlide.svg)](https://badge.fury.io/gh/erlang%2Ferlide_eclipse)
44

55
Documentation may be found at [the project site](http://erlide.org/articles/index.html).
66
Everyone can submit documentation changes via push requests, look for the "Edit me on

gradle/wrapper/gradle-wrapper.jar

-52.4 KB
Binary file not shown.

gradle/wrapper/gradle-wrapper.properties

Lines changed: 0 additions & 6 deletions
This file was deleted.

0 commit comments

Comments
 (0)