diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 8e26f129aaf..93e2eb4af41 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -1,22 +1,11 @@
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- - package-ecosystem: maven
- directory: eclipse-platform-parent
- schedule:
- interval: daily
- commit-message:
- prefix: fix
- prefix-development: chore
- include: scope
- labels:
- - dependencies
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
-
- package-ecosystem: docker
directory: /cje-production/dockerfiles/centos-gtk3-metacity/8-gtk3
schedule:
diff --git a/.github/workflows/codeQLworkflow.yml b/.github/workflows/codeQLworkflow.yml
index 308ba7db005..6920bba6cdd 100644
--- a/.github/workflows/codeQLworkflow.yml
+++ b/.github/workflows/codeQLworkflow.yml
@@ -19,7 +19,7 @@ on:
description: 'The version of Maven set up'
type: string
required: false
- default: '3.9.2'
+ default: '3.9.6'
jobs:
analyze:
@@ -54,12 +54,12 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
- uses: github/codeql-action/init@v2
+ uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
- name: Set up Java
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93 # v4.0.0
+ uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0
with:
java-version: |
8
@@ -88,6 +88,6 @@ jobs:
${{ inputs.maven-goals }}
- name: Perform CodeQL Analysis
- uses: github/codeql-action/analyze@v2
+ uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
diff --git a/.github/workflows/mavenBuild.yml b/.github/workflows/mavenBuild.yml
index ebb63c58a97..ee4f5b9d6f4 100644
--- a/.github/workflows/mavenBuild.yml
+++ b/.github/workflows/mavenBuild.yml
@@ -19,7 +19,7 @@ on:
description: 'The version of Maven set up'
type: string
required: false
- default: '3.9.2'
+ default: '3.9.6'
permissions: {}
@@ -29,7 +29,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Upload
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
+ uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
with:
name: Event File
path: ${{ github.event_path }}
@@ -50,7 +50,7 @@ jobs:
fetch-depth: 0 # required for jgit timestamp provider to work
submodules: ${{ inputs.submodules }}
- name: Set up Java
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93 # v4.0.0
+ uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0
with:
java-version: |
8
@@ -67,7 +67,7 @@ jobs:
with:
maven-version: ${{ inputs.mavenVersion }}
- name: Download the API Tools matcher
- uses: suisei-cn/actions-download-file@15306412d2c75df56b46844362b86b65235b7db1 # v1.4.0
+ uses: suisei-cn/actions-download-file@818d6b7dc8fe73f2f924b6241f2b1134ca1377d9 # v1.6.0
id: api-tools-matcher
with:
url: "https://raw.githubusercontent.com/eclipse-platform/eclipse.platform.releng.aggregator/master/.github/matcher/api-tools.json"
@@ -86,7 +86,7 @@ jobs:
${{ inputs.maven-goals }}
- name: Upload Test Results for ${{ matrix.config.name }}
if: always()
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
+ uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
with:
name: test-results-${{ matrix.config.os }}
if-no-files-found: warn
diff --git a/.github/workflows/prepareRelease.yml b/.github/workflows/prepareRelease.yml
index 31196c8593c..042695c19b7 100644
--- a/.github/workflows/prepareRelease.yml
+++ b/.github/workflows/prepareRelease.yml
@@ -17,7 +17,7 @@ jobs:
- name: Set up Maven
uses: stCarolas/setup-maven@07fbbe97d97ef44336b7382563d66743297e442f # v4.5
with:
- maven-version: 3.9.2
+ maven-version: 3.9.6
- id: get-release-name
run: |
name=$(echo ${{ github.event.milestone.due_on }} | cut -d- -f-2)
@@ -26,17 +26,17 @@ jobs:
with:
ref: master
- name: Set up JDK
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93 # v4.0.0
+ uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0
with:
java-version: '17'
distribution: 'temurin'
cache: maven
- name: Update Main Versions
- run: mvn -U -ntp -f eclipse-platform-parent org.eclipse.tycho:tycho-versions-plugin:4.0.2:set-version -DnewVersion=${{ github.event.milestone.title }}.0-SNAPSHOT -Dmodules=../eclipse.platform.releng.prereqs.sdk
+ run: mvn -U -ntp -f eclipse-platform-parent org.eclipse.tycho:tycho-versions-plugin:4.0.6:set-version -DnewVersion=${{ github.event.milestone.title }}.0-SNAPSHOT -Dmodules=../eclipse.platform.releng.prereqs.sdk
- name: Update Release Versions
- run: mvn -ntp -f eclipse-platform-parent/pom.xml --non-recursive org.eclipse.tycho:tycho-versions-plugin:4.0.2:set-property -Dproperties=releaseNumberSDK,releaseNumberPlatform,releaseName -DnewReleaseName=${{ steps.get-release-name.outputs.name }} -DnewReleaseNumberSDK=${{ github.event.milestone.title }} -DnewReleaseNumberPlatform=${{ github.event.milestone.title }}
+ run: mvn -ntp -f eclipse-platform-parent/pom.xml --non-recursive org.eclipse.tycho:tycho-versions-plugin:4.0.6:set-property -Dproperties=releaseNumberSDK,releaseNumberPlatform,releaseName -DnewReleaseName=${{ steps.get-release-name.outputs.name }} -DnewReleaseNumberSDK=${{ github.event.milestone.title }} -DnewReleaseNumberPlatform=${{ github.event.milestone.title }}
- name: Create Pull Request for Release ${{ github.event.milestone.title }}
- uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5.0.2
+ uses: peter-evans/create-pull-request@a4f52f8033a6168103c2538976c07b467e8163bc # v6.0.1
with:
commit-message: Prepare Release ${{ github.event.milestone.title }}
branch: prepare_R${{ github.event.milestone.title }}
diff --git a/.github/workflows/publishTestResults.yml b/.github/workflows/publishTestResults.yml
index a83444ecd0b..445e13195e3 100644
--- a/.github/workflows/publishTestResults.yml
+++ b/.github/workflows/publishTestResults.yml
@@ -47,7 +47,7 @@ jobs:
done
- name: Publish Test Results
- uses: EnricoMi/publish-unit-test-result-action@ca89ad036b5fcd524c1017287fb01b5139908408 # v2.11.0
+ uses: EnricoMi/publish-unit-test-result-action@f355d34d53ad4e7f506f699478db2dd71da9de5f # v2.15.1
id: test-results
with:
commit: ${{ github.event.workflow_run.head_sha }}
@@ -72,7 +72,7 @@ jobs:
- name: Create badge
if: github.ref == 'refs/heads/master' && inputs.gist-url != ''
- uses: emibcn/badge-action@4209421db54c8764d8932070ffd0f81715a629bf
+ uses: emibcn/badge-action@808173dd03e2f30c980d03ee49e181626088eee8
with:
label: Tests
status: '${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_succ }} passed, ${{ fromJSON( steps.test-results.outputs.json ).formatted.stats.tests_fail }} failed'
diff --git a/.github/workflows/updateRelease.yml b/.github/workflows/updateRelease.yml
index 2590ca36caa..45486eeb1db 100644
--- a/.github/workflows/updateRelease.yml
+++ b/.github/workflows/updateRelease.yml
@@ -14,9 +14,9 @@ jobs:
- name: Set up Maven
uses: stCarolas/setup-maven@07fbbe97d97ef44336b7382563d66743297e442f # v4.5
with:
- maven-version: 3.9.1
+ maven-version: 3.9.6
- name: Set up JDK
- uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93 # v4.0.0
+ uses: actions/setup-java@9704b39bf258b59bc04b50fa2dd55e9ed76b47a8 # v4.1.0
with:
java-version: '17'
distribution: 'temurin'
@@ -24,10 +24,10 @@ jobs:
- name: Update Versions
run: >-
mvn -U -Pbuild-individual-bundles -ntp
- org.eclipse.tycho:tycho-versions-plugin:4.0.4:set-version -DnewVersion=${{ github.event.milestone.title }}.0-SNAPSHOT
- org.eclipse.tycho:tycho-versions-plugin:4.0.4:set-parent-version -DnewParentVersion=${{ github.event.milestone.title }}.0-SNAPSHOT
+ org.eclipse.tycho:tycho-versions-plugin:4.0.6:set-version -DnewVersion=${{ github.event.milestone.title }}.0-SNAPSHOT
+ org.eclipse.tycho:tycho-versions-plugin:4.0.6:set-parent-version -DnewParentVersion=${{ github.event.milestone.title }}.0-SNAPSHOT
- name: Build and Bump Versions
- uses: Wandalen/wretry.action@a163f62ae554a8f3cbe27b23db15b60c0ae2e93c # master
+ uses: Wandalen/wretry.action@62e10cbe5cd3012bc08b3b1b451bc2dd612e341a # master
with:
attempt_delay: 120000
attempt_limit: 10
@@ -36,9 +36,9 @@ jobs:
clean verify
-DskipTests
-Dcompare-version-with-baselines.skip=false
- org.eclipse.tycho:tycho-versions-plugin:4.0.4:bump-versions -Dtycho.bump-versions.increment=100
+ org.eclipse.tycho:tycho-versions-plugin:4.0.6:bump-versions -Dtycho.bump-versions.increment=100
- name: Create Pull Request for Release ${{ github.event.milestone.title }}
- uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5.0.2
+ uses: peter-evans/create-pull-request@a4f52f8033a6168103c2538976c07b467e8163bc # v6.0.1
with:
commit-message: Update for release ${{ github.event.milestone.title }}
branch: update_R${{ github.event.milestone.title }}
diff --git a/.gitmodules b/.gitmodules
index e6d7a47bb6e..ce6633bb6cd 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -15,17 +15,14 @@
path = eclipse.jdt.ui
url = https://github.com/eclipse-jdt/eclipse.jdt.ui.git
[submodule "eclipse.pde"]
- path = eclipse.pde
- url = https://github.com/eclipse-pde/eclipse.pde.git
+ path = eclipse.pde
+ url = https://github.com/eclipse-pde/eclipse.pde.git
[submodule "eclipse.platform"]
path = eclipse.platform
url = https://github.com/eclipse-platform/eclipse.platform.git
[submodule "eclipse.platform.swt"]
path = eclipse.platform.swt
url = https://github.com/eclipse-platform/eclipse.platform.swt.git
-[submodule "eclipse.platform.swt.binaries"]
- path = eclipse.platform.swt.binaries
- url = https://github.com/eclipse-platform/eclipse.platform.swt.binaries.git
[submodule "eclipse.platform.ui"]
path = eclipse.platform.ui
url = https://github.com/eclipse-platform/eclipse.platform.ui.git
diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml
index 2cf738be41a..c9814b3b333 100644
--- a/.mvn/extensions.xml
+++ b/.mvn/extensions.xml
@@ -4,6 +4,6 @@
org.eclipse.tycho
tycho-build
- 4.0.4
+ 4.0.6
\ No newline at end of file
diff --git a/.mvn/jvm.config b/.mvn/jvm.config
new file mode 100644
index 00000000000..3682bdb860a
--- /dev/null
+++ b/.mvn/jvm.config
@@ -0,0 +1,2 @@
+-XX:+PrintFlagsFinal
+-XX:MaxRAMPercentage=35
diff --git a/JenkinsJobs/Builds/I_build.groovy b/JenkinsJobs/Builds/I_build.groovy
index 0b88dcd762b..7515172112a 100644
--- a/JenkinsJobs/Builds/I_build.groovy
+++ b/JenkinsJobs/Builds/I_build.groovy
@@ -147,21 +147,20 @@ spec:
"""
}
}
+ tools {
+ jdk 'openjdk-jdk17-latest'
+ }
environment {
MAVEN_OPTS = "-Xmx6G"
CJE_ROOT = "${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production"
PATH = "$PATH:/opt/tools/apache-maven/latest/bin"
logDir = "$CJE_ROOT/buildlogs"
}
-
stages {
stage('Clean Workspace'){
steps {
container('jnlp') {
- sh \'\'\'
- cd $WORKSPACE
- rm -rf *
- \'\'\'
+ cleanWs()
}
}
}
@@ -183,7 +182,7 @@ spec:
}
}
}
- stage('Genrerate environment variables'){
+ stage('Generate environment variables'){
steps {
container('jnlp') {
sh \'\'\'
@@ -234,8 +233,7 @@ spec:
steps {
container('jnlp') {
sshagent(['projects-storage.eclipse.org-bot-ssh']) {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
./mb020_createBaseBuilder.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb020_createBaseBuilder.sh.log
@@ -246,7 +244,6 @@ spec:
fi
\'\'\'
}
- }
}
}
}
@@ -274,7 +271,7 @@ spec:
container('jnlp') {
sshagent(['git.eclipse.org-bot-ssh', 'github-bot-ssh']) {
sh \'\'\'
- git config --global user.email "releng-bot@eclipse.org"
+ git config --global user.email "eclipse-releng-bot@eclipse.org"
git config --global user.name "Eclipse Releng Bot"
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
./mb100_cloneRepos.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb100_cloneRepos.sh.log
@@ -293,8 +290,6 @@ spec:
container('jnlp') {
sshagent (['git.eclipse.org-bot-ssh', 'github-bot-ssh', 'projects-storage.eclipse.org-bot-ssh']) {
sh \'\'\'
- git config --global user.email "eclipse-releng-bot@eclipse.org"
- git config --global user.name "Eclipse Releng Bot"
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
bash -x ./mb110_tagBuildInputs.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb110_tagBuildInputs.sh.log
if [[ ${PIPESTATUS[0]} -ne 0 ]]
@@ -310,7 +305,6 @@ spec:
stage('Create Source Bundles'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -322,7 +316,6 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
@@ -333,7 +326,6 @@ spec:
}
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -345,7 +337,6 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
@@ -356,8 +347,7 @@ spec:
}
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
bash -x ./mb300_gatherEclipseParts.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb300_gatherEclipseParts.sh.log
@@ -368,7 +358,6 @@ spec:
fi
\'\'\'
}
- }
}
}
}
@@ -379,8 +368,7 @@ spec:
}
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
./mb310_gatherEquinoxParts.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb310_gatherEquinoxParts.sh.log
@@ -391,14 +379,12 @@ spec:
fi
\'\'\'
}
- }
}
}
}
stage('Generate Repo reports'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -410,14 +396,12 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
stage('Generate API tools reports'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -429,7 +413,6 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
diff --git a/JenkinsJobs/Cleanup/Clean_ppcle_build.groovy b/JenkinsJobs/Cleanup/Clean_ppcle_build.groovy
deleted file mode 100644
index b69f72af9aa..00000000000
--- a/JenkinsJobs/Cleanup/Clean_ppcle_build.groovy
+++ /dev/null
@@ -1,36 +0,0 @@
-job('Cleanup/Clean-ppcle-build'){
- triggers {
- cron('@weekly')
- }
-
- label('ppc64le-build')
-
- logRotator {
- numToKeep(5)
- }
-
- wrappers { //adds pre/post actions
- preBuildCleanup()
- timestamps()
- }
-
- steps {
- shell('''
-#!/bin/bash -x
-
-cd ${WORKSPACE}
-
-pwd
-
-ls -al
-du -hs *
-df -h
- ''')
- }
-
- publishers {
- extendedEmail {
- recipientList("sravankumarl@in.ibm.com")
- }
- }
-}
diff --git a/JenkinsJobs/Cleanup/dailyCleanOldBuilds.groovy b/JenkinsJobs/Cleanup/dailyCleanOldBuilds.groovy
index 701471b2a03..11122643002 100644
--- a/JenkinsJobs/Cleanup/dailyCleanOldBuilds.groovy
+++ b/JenkinsJobs/Cleanup/dailyCleanOldBuilds.groovy
@@ -12,8 +12,6 @@ and other such scripts.
numToKeep(5)
}
- jdk('oracle-jdk8-latest')
-
label('centos-latest')
triggers {
@@ -55,10 +53,8 @@ epRelDir=$(ssh genie.releng@projects-storage.eclipse.org ls -d --format=single-c
ssh genie.releng@projects-storage.eclipse.org tar -C ${workspace} -xzf ${epRelDir}/eclipse-platform-*-linux-gtk-x86_64.tar.gz
ssh genie.releng@projects-storage.eclipse.org wget -O ${workspace}/dailyCleanDownloads.sh https://raw.githubusercontent.com/eclipse-platform/eclipse.platform.releng.aggregator/master/cje-production/cleaners/dailyCleanDownloads.sh
-ssh genie.releng@projects-storage.eclipse.org wget -O ${workspace}/cleanupNightlyRepo.sh https://raw.githubusercontent.com/eclipse-platform/eclipse.platform.releng.aggregator/master/cje-production/cleaners/cleanupNightlyRepo.sh
ssh genie.releng@projects-storage.eclipse.org bash -x ${workspace}/dailyCleanDownloads.sh
-ssh genie.releng@projects-storage.eclipse.org bash -x ${workspace}/cleanupNightlyRepo.sh ${workspace}
ssh genie.releng@projects-storage.eclipse.org rm -rf ${workingDir}/${JOB_NAME}*
''')
@@ -66,7 +62,7 @@ ssh genie.releng@projects-storage.eclipse.org rm -rf ${workingDir}/${JOB_NAME}*
publishers {
extendedEmail {
- recipientList("sravankumarl@in.ibm.com")
+ recipientList("rahul.mohanan@ibm.com")
}
}
}
diff --git a/JenkinsJobs/Cleanup/pruneDailyRepos.groovy b/JenkinsJobs/Cleanup/pruneDailyRepos.groovy
new file mode 100644
index 00000000000..e54f4c4fd76
--- /dev/null
+++ b/JenkinsJobs/Cleanup/pruneDailyRepos.groovy
@@ -0,0 +1,69 @@
+job('Cleanup/pruneDailyRepos'){
+ displayName('Daily Repo Pruner')
+ description('''
+This job runs several types of "cleanup" on the build machine and downloads server to remove old builds and other left overs from old build.
+It acts as a simple cron job, currently running at 16:00 every day, to execute
+.../sdk/cleaners/dailyCleanBuildMachine.sh
+and other such scripts.
+ ''')
+
+ logRotator {
+ daysToKeep(10)
+ numToKeep(5)
+ }
+
+
+ label('centos-latest')
+
+ triggers {
+ cron('''
+0 5 * * *
+0 17 * * *
+ ''')
+ }
+
+ wrappers { //adds pre/post actions
+ timestamps()
+ preBuildCleanup()
+ sshAgent('projects-storage.eclipse.org-bot-ssh')
+ timeout {
+ absolute(30)
+ }
+ }
+
+ steps {
+ shell('''
+#!/bin/bash -x
+
+epDownloadDir=/home/data/httpd/download.eclipse.org/eclipse
+dropsPath=${epDownloadDir}/downloads/drops4
+p2RepoPath=${epDownloadDir}/updates
+buildDir=${dropsPath}/${buildId}
+
+workingDir=${epDownloadDir}/workingDir
+
+workspace=${workingDir}/${JOB_NAME}-${BUILD_NUMBER}
+
+ssh genie.releng@projects-storage.eclipse.org rm -rf ${workingDir}/${JOB_NAME}*
+
+ssh genie.releng@projects-storage.eclipse.org mkdir -p ${workspace}
+ssh genie.releng@projects-storage.eclipse.org cd ${workspace}
+
+#get latest Eclipse platform product
+epRelDir=$(ssh genie.releng@projects-storage.eclipse.org ls -d --format=single-column ${dropsPath}/R-*|sort|tail -1)
+ssh genie.releng@projects-storage.eclipse.org tar -C ${workspace} -xzf ${epRelDir}/eclipse-platform-*-linux-gtk-x86_64.tar.gz
+
+ssh genie.releng@projects-storage.eclipse.org wget -O ${workspace}/cleanupNightlyRepo.sh https://raw.githubusercontent.com/eclipse-platform/eclipse.platform.releng.aggregator/master/cje-production/cleaners/cleanupNightlyRepo.sh
+
+ssh genie.releng@projects-storage.eclipse.org bash -x ${workspace}/cleanupNightlyRepo.sh ${workspace}
+
+ssh genie.releng@projects-storage.eclipse.org rm -rf ${workingDir}/${JOB_NAME}*
+ ''')
+ }
+
+ publishers {
+ extendedEmail {
+ recipientList("rahul.mohanan@ibm.com")
+ }
+ }
+}
diff --git a/JenkinsJobs/JobDSL.json b/JenkinsJobs/JobDSL.json
index 92c4697cad4..49bf45daa20 100644
--- a/JenkinsJobs/JobDSL.json
+++ b/JenkinsJobs/JobDSL.json
@@ -1,8 +1,8 @@
{
"Streams": [
- "4.31"
+ "4.32"
],
"Branches": {
- "4.31": "master"
+ "4.32": "master"
}
}
diff --git a/JenkinsJobs/Releng/deployPlatformParentPom.groovy b/JenkinsJobs/Releng/deployPlatformParentPom.groovy
index 6c13ff65b97..8d4539f049d 100644
--- a/JenkinsJobs/Releng/deployPlatformParentPom.groovy
+++ b/JenkinsJobs/Releng/deployPlatformParentPom.groovy
@@ -22,16 +22,8 @@ For this to be used by consuming projects, they must have their local maven repo
remote{
url('https://github.com/eclipse-platform/eclipse.platform.releng.aggregator.git')
}
- branch('master')
- branch('R4_7_maintenance')
- branch('R4_8_maintenance')
- branch('R4_19_maintenance')
- branch('R4_23_maintenance')
- branch('R4_26_maintenance')
- branch('R4_27_maintenance')
- branch('R4_28_maintenance')
- branch('R4_29_maintenance')
- branch('R4_30_maintenance')
+ branch('master')
+ branch('R4_31_maintenance')
}
}
diff --git a/JenkinsJobs/Releng/deploySdkPom.groovy b/JenkinsJobs/Releng/deploySdkPom.groovy
index cc405a117f8..ff8e3f22fbc 100644
--- a/JenkinsJobs/Releng/deploySdkPom.groovy
+++ b/JenkinsJobs/Releng/deploySdkPom.groovy
@@ -23,15 +23,7 @@ For this to be used by consuming projects, they must have their local maven repo
url('https://github.com/eclipse-platform/eclipse.platform.releng.aggregator.git')
}
branch('master')
- branch('R4_7_maintenance')
- branch('R4_8_maintenance')
- branch('R4_19_maintenance')
- branch('R4_23_maintenance')
- branch('R4_26_maintenance')
- branch('R4_27_maintenance')
- branch('R4_28_maintenance')
- branch('R4_29_maintenance')
- branch('R4_30_maintenance')
+ branch('R4_31_maintenance')
}
}
diff --git a/JenkinsJobs/YBuilds/P_build.groovy b/JenkinsJobs/YBuilds/P_build.groovy
index ab208074c31..cc8530fe8e1 100644
--- a/JenkinsJobs/YBuilds/P_build.groovy
+++ b/JenkinsJobs/YBuilds/P_build.groovy
@@ -121,6 +121,9 @@ spec:
"""
}
}
+ tools {
+ jdk 'openjdk-jdk17-latest'
+ }
environment {
MAVEN_OPTS = "-Xmx6G"
CJE_ROOT = "${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production"
@@ -132,17 +135,14 @@ spec:
stage('Clean Workspace'){
steps {
container('jnlp') {
- sh \'\'\'
- cd $WORKSPACE
- rm -rf *
- \'\'\'
+ cleanWs()
}
}
}
stage('Setup intial configuration'){
steps {
container('jnlp') {
- sshagent(['github-bot-ssh']) {
+ sshagent(['github-bot-ssh']) {
dir ('eclipse.platform.releng.aggregator') {
sh \'\'\'
git clone -b master git@github.com:eclipse-platform/eclipse.platform.releng.aggregator.git
@@ -157,7 +157,7 @@ spec:
}
}
}
- stage('Genrerate environment variables'){
+ stage('Generate environment variables'){
steps {
container('jnlp') {
sh \'\'\'
@@ -166,14 +166,14 @@ spec:
./mb010_createEnvfiles.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb010_createEnvfiles.sh.log
if [[ ${PIPESTATUS[0]} -ne 0 ]]
then
- echo "Failed in Genrerate environment variables stage"
+ echo "Failed in Generate environment variables stage"
exit 1
fi
\'\'\'
}
}
}
- stage('Load PGP keys'){
+ stage('Load PGP keys'){
environment {
KEYRING = credentials('secret-subkeys-releng.asc')
KEYRING_PASSPHRASE = credentials('secret-subkeys-releng.acs-passphrase')
@@ -207,7 +207,7 @@ spec:
container('jnlp') {
sshagent(['git.eclipse.org-bot-ssh', 'github-bot-ssh']) {
sh \'\'\'
- git config --global user.email "releng-bot@eclipse.org"
+ git config --global user.email "eclipse-releng-bot@eclipse.org"
git config --global user.name "Eclipse Releng Bot"
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
./mb100_cloneRepos.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb100_cloneRepos.sh.log
@@ -226,8 +226,6 @@ spec:
container('jnlp') {
sshagent (['git.eclipse.org-bot-ssh', 'github-bot-ssh', 'projects-storage.eclipse.org-bot-ssh']) {
sh \'\'\'
- git config --global user.email "releng-bot@eclipse.org"
- git config --global user.name "Eclipse Releng Bot"
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
bash -x ./mb110_tagBuildInputs.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb110_tagBuildInputs.sh.log
if [[ ${PIPESTATUS[0]} -ne 0 ]]
@@ -258,7 +256,6 @@ spec:
stage('Aggregator maven build'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -270,15 +267,13 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
stage('Gather Eclipse Parts'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
bash -x ./mb300_gatherEclipseParts.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb300_gatherEclipseParts.sh.log
@@ -289,7 +284,6 @@ spec:
fi
\'\'\'
}
- }
}
}
}
diff --git a/JenkinsJobs/YBuilds/Y_build.groovy b/JenkinsJobs/YBuilds/Y_build.groovy
index 528c12b44d2..20ef9b49fc3 100644
--- a/JenkinsJobs/YBuilds/Y_build.groovy
+++ b/JenkinsJobs/YBuilds/Y_build.groovy
@@ -141,6 +141,9 @@ spec:
"""
}
}
+ tools {
+ jdk 'openjdk-jdk17-latest'
+ }
environment {
MAVEN_OPTS = "-Xmx6G"
CJE_ROOT = "${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production"
@@ -152,10 +155,7 @@ spec:
stage('Clean Workspace'){
steps {
container('jnlp') {
- sh \'\'\'
- cd $WORKSPACE
- rm -rf *
- \'\'\'
+ cleanWs()
}
}
}
@@ -177,7 +177,7 @@ spec:
}
}
}
- stage('Genrerate environment variables'){
+ stage('Generate environment variables'){
steps {
container('jnlp') {
sh \'\'\'
@@ -229,8 +229,7 @@ spec:
steps {
container('jnlp') {
sshagent(['projects-storage.eclipse.org-bot-ssh']) {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
./mb020_createBaseBuilder.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb020_createBaseBuilder.sh.log
@@ -241,7 +240,6 @@ spec:
fi
\'\'\'
}
- }
}
}
}
@@ -287,8 +285,6 @@ spec:
container('jnlp') {
sshagent (['git.eclipse.org-bot-ssh', 'github-bot-ssh', 'projects-storage.eclipse.org-bot-ssh']) {
sh \'\'\'
- git config --global user.email "releng-bot@eclipse.org"
- git config --global user.name "Eclipse Releng Bot"
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
bash -x ./mb110_tagBuildInputs.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb110_tagBuildInputs.sh.log
if [[ ${PIPESTATUS[0]} -ne 0 ]]
@@ -317,7 +313,6 @@ spec:
stage('Create Source Bundles'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -329,7 +324,6 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
@@ -339,7 +333,6 @@ spec:
}
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -351,7 +344,6 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
@@ -362,8 +354,7 @@ spec:
}
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
bash -x ./mb300_gatherEclipseParts.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb300_gatherEclipseParts.sh.log
@@ -374,7 +365,6 @@ spec:
fi
\'\'\'
}
- }
}
}
}
@@ -385,8 +375,7 @@ spec:
}
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
- withAnt(installation: 'apache-ant-latest', jdk: 'openjdk-jdk17-latest') {
+ withAnt(installation: 'apache-ant-latest') {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
./mb310_gatherEquinoxParts.sh $CJE_ROOT/buildproperties.shsource 2>&1 | tee $logDir/mb310_gatherEquinoxParts.sh.log
@@ -397,14 +386,12 @@ spec:
fi
\'\'\'
}
- }
}
}
}
stage('Generate Repo reports'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -416,14 +403,12 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
stage('Generate API tools reports'){
steps {
container('jnlp') {
- withEnv(["JAVA_HOME=${ tool 'openjdk-jdk17-latest' }"]) {
sh \'\'\'
cd ${WORKSPACE}/eclipse.platform.releng.aggregator/eclipse.platform.releng.aggregator/cje-production/mbscripts
unset JAVA_TOOL_OPTIONS
@@ -435,7 +420,6 @@ spec:
exit 1
fi
\'\'\'
- }
}
}
}
@@ -517,6 +501,7 @@ spec:
container('jnlp') {
build job: 'YPBuilds/ep''' + MAJOR + MINOR + '''Y-unit-cen64-gtk3-java17', parameters: [string(name: 'buildId', value: "${env.BUILD_IID.trim()}")], wait: false
build job: 'YPBuilds/ep''' + MAJOR + MINOR + '''Y-unit-cen64-gtk3-java21', parameters: [string(name: 'buildId', value: "${env.BUILD_IID.trim()}")], wait: false
+ build job: 'YPBuilds/ep''' + MAJOR + MINOR + '''Y-unit-cen64-gtk3-java22', parameters: [string(name: 'buildId', value: "${env.BUILD_IID.trim()}")], wait: false
build job: 'YPBuilds/ep''' + MAJOR + MINOR + '''Y-unit-macM1-java17', parameters: [string(name: 'buildId', value: "${env.BUILD_IID.trim()}")], wait: false
build job: 'YPBuilds/ep''' + MAJOR + MINOR + '''Y-unit-mac64-java17', parameters: [string(name: 'buildId', value: "${env.BUILD_IID.trim()}")], wait: false
build job: 'Start-smoke-tests', parameters: [string(name: 'buildId', value: "${env.BUILD_IID.trim()}")], wait: false
@@ -528,13 +513,13 @@ spec:
failure {
emailext body: "Please go to ${BUILD_URL}console and check the build failure. ",
subject: "${env.BUILD_VERSION} Y-Build: ${env.BUILD_IID.trim()} - BUILD FAILED",
- to: "rahul.mohanan@ibm.com jarthana@in.ibm.com Sheena.Sheena@ibm.com alshama.m.s@ibm.com elsa.zacharia@ibm.com suby.surendran@ibm.com gpunathi@in.ibm.com sravankumarl@in.ibm.com kalyan_prasad@in.ibm.com lshanmug@in.ibm.com manoj.palat@in.ibm.com niraj.modi@in.ibm.com noopur_gupta@in.ibm.com sarika.sinha@in.ibm.com vikas.chandra@in.ibm.com akurtakov@gmail.com",
+ to: "rahul.mohanan@ibm.com jarthana@in.ibm.com alshama.m.s@ibm.com elsa.zacharia@ibm.com suby.surendran@ibm.com gpunathi@in.ibm.com sravankumarl@in.ibm.com manoj.palat@in.ibm.com noopur_gupta@in.ibm.com akurtakov@gmail.com",
from:"genie.releng@eclipse.org"
}
success {
emailext body: "Eclipse downloads: https://download.eclipse.org/eclipse/downloads/drops4/${env.BUILD_IID.trim()} Build logs and/or test results (eventually): https://download.eclipse.org/eclipse/downloads/drops4/${env.BUILD_IID.trim()}/testResults.php ${env.POM_UPDATES_BODY.trim()}${env.COMPARATOR_ERRORS_BODY.trim()}Software site repository: https://download.eclipse.org/eclipse/updates/${env.RELEASE_VER.trim()}-Y-builds Specific (simple) site repository: https://download.eclipse.org/eclipse/updates/${env.RELEASE_VER.trim()}-Y-builds/${env.BUILD_IID.trim()} Equinox downloads: https://download.eclipse.org/equinox/drops/${env.BUILD_IID.trim()} ",
subject: "${env.BUILD_VERSION} Y-Build: ${env.BUILD_IID.trim()} ${env.POM_UPDATES_SUBJECT.trim()} ${env.COMPARATOR_ERRORS_SUBJECT.trim()}",
- to: "rahul.mohanan@ibm.com jarthana@in.ibm.com Sheena.Sheena@ibm.com alshama.m.s@ibm.com elsa.zacharia@ibm.com suby.surendran@ibm.com gpunathi@in.ibm.com sravankumarl@in.ibm.com kalyan_prasad@in.ibm.com lshanmug@in.ibm.com manoj.palat@in.ibm.com niraj.modi@in.ibm.com noopur_gupta@in.ibm.com sarika.sinha@in.ibm.com vikas.chandra@in.ibm.com akurtakov@gmail.com",
+ to: "rahul.mohanan@ibm.com jarthana@in.ibm.com alshama.m.s@ibm.com elsa.zacharia@ibm.com suby.surendran@ibm.com gpunathi@in.ibm.com sravankumarl@in.ibm.com manoj.palat@in.ibm.com noopur_gupta@in.ibm.com akurtakov@gmail.com",
from:"genie.releng@eclipse.org"
}
}
diff --git a/JenkinsJobs/YBuilds/Y_unit_cen64_gtk3_java22.groovy b/JenkinsJobs/YBuilds/Y_unit_cen64_gtk3_java22.groovy
new file mode 100644
index 00000000000..a708a36c53c
--- /dev/null
+++ b/JenkinsJobs/YBuilds/Y_unit_cen64_gtk3_java22.groovy
@@ -0,0 +1,168 @@
+def config = new groovy.json.JsonSlurper().parseText(readFileFromWorkspace('JenkinsJobs/JobDSL.json'))
+def STREAMS = config.Streams
+
+for (STREAM in STREAMS){
+ def MAJOR = STREAM.split('\\.')[0]
+ def MINOR = STREAM.split('\\.')[1]
+
+ pipelineJob('YPBuilds/ep' + MAJOR + MINOR + 'Y-unit-cen64-gtk3-java22'){
+
+ logRotator {
+ numToKeep(5)
+ }
+
+ parameters {
+ stringParam('buildId', null, null)
+ stringParam('javaDownload', 'https://download.java.net/java/early_access/jdk22/26/GPL/openjdk-22-ea+26_linux-x64_bin.tar.gz', null)
+ }
+
+ definition {
+ cps {
+ sandbox()
+ script('''
+pipeline {
+ options {
+ timeout(time: 600, unit: 'MINUTES')
+ timestamps()
+ buildDiscarder(logRotator(numToKeepStr:'5'))
+ }
+ agent {
+ kubernetes {
+ label 'centos-unitpod22'
+ defaultContainer 'custom'
+ yaml """
+apiVersion: v1
+kind: Pod
+spec:
+ containers:
+ - name: "jnlp"
+ resources:
+ limits:
+ memory: "2048Mi"
+ cpu: "2000m"
+ requests:
+ memory: "512Mi"
+ cpu: "1000m"
+ - name: "custom"
+ image: "eclipse/platformreleng-centos-gtk3-metacity:8"
+ imagePullPolicy: "Always"
+ resources:
+ limits:
+ memory: "4096Mi"
+ cpu: "1000m"
+ requests:
+ # memory needs to be at least 1024Mi, see https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/2478
+ memory: "1024Mi"
+ cpu: "1000m"
+ securityContext:
+ privileged: false
+ tty: true
+ command:
+ - cat
+ volumeMounts:
+ - mountPath: "/opt/tools"
+ name: "volume-0"
+ readOnly: false
+ workingDir: "/home/jenkins/agent"
+ nodeSelector: {}
+ restartPolicy: "Never"
+ volumes:
+ - name: "volume-0"
+ persistentVolumeClaim:
+ claimName: "tools-claim-jiro-releng"
+ readOnly: true
+ - configMap:
+ name: "known-hosts"
+ name: "volume-1"
+ - emptyDir:
+ medium: ""
+ name: "workspace-volume"
+ - emptyDir:
+ medium: ""
+ name: "volume-3"
+"""
+ }
+ }
+
+ stages {
+ stage('Run tests'){
+ steps {
+ container ('custom'){
+ wrap([$class: 'Xvnc', takeScreenshot: false, useXauthority: true]) {
+ withEnv(["JAVA_HOME_NEW=${ tool 'openjdk-jdk18-latest' }"]) {
+ withAnt(installation: 'apache-ant-latest') {
+ sh \'\'\'#!/bin/bash -x
+
+ buildId=$(echo $buildId|tr -d ' ')
+ RAW_DATE_START="$(date +%s )"
+
+ export LANG=en_US.UTF-8
+ cat /etc/*release
+ echo -e "\\n\\tRAW Date Start: ${RAW_DATE_START} \\n"
+ echo -e "\\n\\t whoami: $( whoami )\\n"
+ echo -e "\\n\\t uname -a: $(uname -a)\\n"
+
+ # 0002 is often the default for shell users, but it is not when ran from
+ # a cron job, so we set it explicitly, to be sure of value, so releng group has write access to anything
+ # we create on shared area.
+ oldumask=$(umask)
+ umask 0002
+
+ echo "umask explicitly set to 0002, old value was $oldumask"
+
+ # we want java.io.tmpdir to be in $WORKSPACE, but must already exist, for Java to use it.
+ mkdir -p ${WORKSPACE}/tmp
+
+ wget -O ${WORKSPACE}/getEBuilder.xml --no-verbose --no-check-certificate https://download.eclipse.org/eclipse/relengScripts/production/testScripts/hudsonBootstrap/getEBuilder.xml 2>&1
+ wget -O ${WORKSPACE}/buildproperties.shsource --no-check-certificate https://download.eclipse.org/eclipse/downloads/drops4/${buildId}/buildproperties.shsource
+ cat ${WORKSPACE}/buildproperties.shsource
+ source ${WORKSPACE}/buildproperties.shsource
+
+ set -x
+ mkdir -p ${WORKSPACE}/java
+ pushd ${WORKSPACE}/java
+ wget -O jdk.tar.gz --no-verbose ${javaDownload}
+ tar xzf jdk.tar.gz
+ rm jdk.tar.gz
+ export JAVA_HOME_NEW=$(pwd)/$(ls)
+ popd
+ set +x
+
+ export PATH=${JAVA_HOME_NEW}/bin:${ANT_HOME}/bin:${PATH}
+
+ echo JAVA_HOME: $JAVA_HOME
+ export JAVA_HOME=$JAVA_HOME_NEW
+ echo ANT_HOME: $ANT_HOME
+ echo PATH: $PATH
+ export ANT_OPTS="${ANT_OPTS} -Djava.io.tmpdir=${WORKSPACE}/tmp -Djava.security.manager=allow"
+
+ env 1>envVars.txt 2>&1
+ ant -diagnostics 1>antDiagnostics.txt 2>&1
+ java -XshowSettings -version 1>javaSettings.txt 2>&1
+
+ ant -f getEBuilder.xml -Djava.io.tmpdir=${WORKSPACE}/tmp -DbuildId=$buildId -DeclipseStream=$STREAM -DEBUILDER_HASH=${EBUILDER_HASH} -DdownloadURL=https://download.eclipse.org/eclipse/downloads/drops4/${buildId} -Dosgi.os=linux -Dosgi.ws=gtk -Dosgi.arch=x86_64 -DtestSuite=all -Djvm=${JAVA_HOME}/bin/java
+
+ RAW_DATE_END="$(date +%s )"
+
+ echo -e "\\n\\tRAW Date End: ${RAW_DATE_END} \\n"
+
+ TOTAL_TIME=$((${RAW_DATE_END} - ${RAW_DATE_START}))
+
+ echo -e "\\n\\tTotal elapsed time: ${TOTAL_TIME} \\n"
+ \'\'\'
+ }
+ }
+ }
+ }
+ archiveArtifacts '**/eclipse-testing/results/**, **/eclipse-testing/directorLogs/**, *.properties, *.txt'
+ junit keepLongStdio: true, testResults: '**/eclipse-testing/results/xml/*.xml'
+ build job: 'YPBuilds/ep-collectYbuildResults', parameters: [string(name: 'triggeringJob', value: "${JOB_BASE_NAME}"), string(name: 'buildURL', value: "${BUILD_URL}"), string(name: 'buildID', value: "${params.buildId}")], wait: false
+ }
+ }
+ }
+}
+ ''')
+ }
+ }
+ }
+}
diff --git a/NOTICE b/NOTICE
index 54938209b80..6d93bcc788f 100644
--- a/NOTICE
+++ b/NOTICE
@@ -34,7 +34,6 @@ The project maintains the following source code repositories:
* https:/github.com/eclipse-platform/eclipse.platform.releng
* https:/github.com/eclipse-platform/eclipse.platform.resources
* https:/github.com/eclipse-platform/eclipse.platform.swt
-* https:/github.com/eclipse-platform/eclipse.platform.swt.binaries
* https:/github.com/eclipse-platform/eclipse.platform.team
* https:/github.com/eclipse-platform/eclipse.platform.text
* https:/github.com/eclipse-platform/eclipse.platform.ua
diff --git a/cje-production/P-build/buildproperties.txt b/cje-production/P-build/buildproperties.txt
index 6137aff17b6..cf1b77f7f36 100644
--- a/cje-production/P-build/buildproperties.txt
+++ b/cje-production/P-build/buildproperties.txt
@@ -17,15 +17,15 @@
# CJE build variables
BRANCH="master"
-PATCH_OR_BRANCH_LABEL="java21patch"
-PATCH_BUILD="java21patch"
-BUILD_TYPE_NAME="Beta Java 21"
+PATCH_OR_BRANCH_LABEL="java22patch"
+PATCH_BUILD="java22patch"
+BUILD_TYPE_NAME="Beta Java 22"
BUILD_TYPE="P"
TESTED_BUILD_TYPE="P"
-RELEASE_VER="4.30"
-STREAM="4.30.0"
+RELEASE_VER="4.32"
+STREAM="4.32.0"
STREAMMajor="4"
-STREAMMinor="29"
+STREAMMinor="31"
STREAMService="0"
GIT_ROOT="git@github.com:"
AGG_REPO="eclipse-platform/eclipse.platform.releng.aggregator.git"
@@ -39,8 +39,8 @@ BUILD_TO_COMPARE_SITE="ftp.osuosl.org/pub/eclipse/eclipse/updates"
LOCAL_REPO="localMavenRepo"
# Base builder parameters
-BASEBUILDER_TAG="4.28"
-API_PREV_REF_LABEL="4.28"
+BASEBUILDER_TAG="4.30"
+API_PREV_REF_LABEL="4.30"
#API_FREEZE_REF_LABEL="4.28RC1"
API_FREEZE_REF_LABEL=""
# Change to appropriate versions and uncomment when entering API freeze
@@ -48,17 +48,17 @@ API_FREEZE_REF_LABEL=""
# Otherwise set to a blank space
FREEZE_PARAMS=" "
-PREVIOUS_RELEASE_VER="4.28"
-PREVIOUS_RELEASE_REPO_ID="4.28"
+PREVIOUS_RELEASE_VER="4.30"
+PREVIOUS_RELEASE_REPO_ID="4.30"
#build id for getting repo
-BASEBUILD_ID="R-4.28-202306050440"
+BASEBUILD_ID="R-4.30-202312010110"
#release id for downloading eclipse
-PREVIOUS_RELEASE_ID="R-4.28-202306050440"
+PREVIOUS_RELEASE_ID="R-4.30-202312010110"
BUILDTOOLS_REPO="https://download.eclipse.org/eclipse/updates/buildtools/"
-WEBTOOLS_REPO="https://download.eclipse.org/webtools/downloads/drops/R3.27.0/R-3.27.0-20220829002010/repositoryunittests/"
+WEBTOOLS_REPO="https://download.eclipse.org/webtools/downloads/drops/R3.31.0/R-3.31.0-20230903090456/repositoryunittests/"
BASEBUILDER_DIR="tmp/org.eclipse.releng.basebuilder"
-ECLIPSE_RUN_REPO="https://download.eclipse.org/eclipse/updates/4.29-I-builds/"
+ECLIPSE_RUN_REPO="https://download.eclipse.org/eclipse/updates/4.31-I-builds/"
#Maven parameters
MAVEN_OPTS="-Xmx6G"
diff --git a/cje-production/P-build/mb300_gatherEclipseParts.sh b/cje-production/P-build/mb300_gatherEclipseParts.sh
index eb11c99f127..c60090b60ed 100755
--- a/cje-production/P-build/mb300_gatherEclipseParts.sh
+++ b/cje-production/P-build/mb300_gatherEclipseParts.sh
@@ -32,7 +32,7 @@ cp $CJE_ROOT/$AGG_DIR/eclipse-platform-parent/target/mavenproperties.properties
# gather repo
echo $PATCH_BUILD
-PATCH_BUILD_GENERIC=java21patch
+PATCH_BUILD_GENERIC=java22patch
REPO_DIR=$ECLIPSE_BUILDER_DIR/$PATCH_BUILD/eclipse.releng.repository.$PATCH_BUILD_GENERIC/target/repository
if [ -d $REPO_DIR ]; then
diff --git a/cje-production/Y-build/buildproperties.txt b/cje-production/Y-build/buildproperties.txt
index 46ede163060..9c532688b73 100644
--- a/cje-production/Y-build/buildproperties.txt
+++ b/cje-production/Y-build/buildproperties.txt
@@ -17,14 +17,14 @@
# CJE build variables
BRANCH="master"
-PATCH_OR_BRANCH_LABEL="java21"
-BUILD_TYPE_NAME="Beta Java 21"
+PATCH_OR_BRANCH_LABEL="java22"
+BUILD_TYPE_NAME="Beta Java 22"
BUILD_TYPE="Y"
TESTED_BUILD_TYPE="Y"
-RELEASE_VER="4.30"
-STREAM="4.31.0"
+RELEASE_VER="4.32"
+STREAM="4.32.0"
STREAMMajor="4"
-STREAMMinor="31"
+STREAMMinor="32"
STREAMService="0"
GIT_ROOT="git@github.com:"
AGG_REPO="eclipse-platform/eclipse.platform.releng.aggregator.git"
@@ -38,26 +38,26 @@ BUILD_TO_COMPARE_SITE="ftp.osuosl.org/pub/eclipse/eclipse/updates"
LOCAL_REPO="localMavenRepo"
# Base builder parameters
-BASEBUILDER_TAG="4.30"
-API_PREV_REF_LABEL="4.30"
-#API_FREEZE_REF_LABEL="4.30RC1"
+BASEBUILDER_TAG="4.31"
+API_PREV_REF_LABEL="4.31"
+#API_FREEZE_REF_LABEL="4.32RC1"
API_FREEZE_REF_LABEL=""
# Change to appropriate versions and uncomment when entering API freeze
#FREEZE_PARAMS="-DfreezeBaseURL=https://${DOWNLOAD_HOST}/eclipse/downloads/drops4/S-${API_FREEZE_REF_LABEL}-202108251800/eclipse-SDK-${API_FREEZE_REF_LABEL}-win32-x86_64.zip -DfreezeName=Eclipse-SDK-${API_FREEZE_REF_LABEL} -DfreezeFilename=eclipse-SDK-${API_FREEZE_REF_LABEL}-win32-x86_64.zip"
# Otherwise set to a blank space
FREEZE_PARAMS=" "
-PREVIOUS_RELEASE_VER="4.30"
-PREVIOUS_RELEASE_REPO_ID="4.30"
+PREVIOUS_RELEASE_VER="4.31"
+PREVIOUS_RELEASE_REPO_ID="4.31"
#build id for getting repo
-BASEBUILD_ID="R-4.30-202312010110"
+BASEBUILD_ID="R-4.31-202402290520"
#release id for downloading eclipse
-PREVIOUS_RELEASE_ID="R-4.30-202312010110"
+PREVIOUS_RELEASE_ID="R-4.31-202402290520"
BUILDTOOLS_REPO="https://download.eclipse.org/eclipse/updates/buildtools/"
-WEBTOOLS_REPO="https://download.eclipse.org/webtools/downloads/drops/R3.22.0/R-3.22.0-20210612170523/repositoryunittests/"
+WEBTOOLS_REPO="https://download.eclipse.org/webtools/downloads/drops/R3.31.0/R-3.31.0-20230903090456/repositoryunittests/"
BASEBUILDER_DIR="tmp/org.eclipse.releng.basebuilder"
-ECLIPSE_RUN_REPO="https://download.eclipse.org/eclipse/updates/4.31-I-builds/"
+ECLIPSE_RUN_REPO="https://download.eclipse.org/eclipse/updates/4.32-I-builds/"
#Maven parameters
MAVEN_OPTS="-Xmx6G"
diff --git a/cje-production/Y-build/publish.xml b/cje-production/Y-build/publish.xml
index 3c1de6d92af..88014579efd 100644
--- a/cje-production/Y-build/publish.xml
+++ b/cje-production/Y-build/publish.xml
@@ -184,7 +184,7 @@
+ value="ep${eclipseStreamMajor}${eclipseStreamMinor}${buildType}-unit-mac64-java17_macosx.cocoa.x86_64_17,ep${eclipseStreamMajor}${eclipseStreamMinor}${buildType}-unit-macM1-java17_macosx.cocoa.aarch64_17,ep${eclipseStreamMajor}${eclipseStreamMinor}${buildType}-unit-win32-java17_win32.win32.x86_64_17,ep${eclipseStreamMajor}${eclipseStreamMinor}${buildType}-unit-cen64-gtk3-java17_linux.gtk.x86_64_17,ep${eclipseStreamMajor}${eclipseStreamMinor}${buildType}-unit-cen64-gtk3-java21_linux.gtk.x86_64_21,ep${eclipseStreamMajor}${eclipseStreamMinor}${buildType}-unit-cen64-gtk3-java22_linux.gtk.x86_64_22" />
4.0.0
org.eclipse
eclipse-platform-parent
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
pom
- 2024-03
+ 2024-06
- 4.31
- 4.31
+ 4.32
+ 4.32
- 4.0.5-SNAPSHOT
+ 4.0.7-SNAPSHOT
1.4.3
- 3.2.2
+ 3.2.5
- https://download.eclipse.org/eclipse/updates/4.31-I-builds/
+ https://download.eclipse.org/eclipse/updates/4.32-I-builds/
- https://download.eclipse.org/eclipse/updates/4.31-I-builds
+ https://download.eclipse.org/eclipse/updates/4.32-I-builds
https://repo.eclipse.org/content/repositories/tycho-snapshots/
UTF-8
https://repo.eclipse.org/content/repositories/eclipse-staging/
- 3.36.0.v20231114-0937
-
-
- -warn:-deprecation,unavoidableGenericProblems,warningToken
-
-
- -warn:-deprecation,raw,unchecked,discouraged,warningToken
+ 3.37.0.v20240215-1558
17
+ false
+ false
@@ -247,14 +234,11 @@
org.eclipse.tycho
target-platform-configuration
-
org.eclipse
eclipse-sdk-prereqs
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
@@ -289,6 +273,12 @@
aarch64
+
+
+
+ true
+
+
@@ -463,7 +453,6 @@
- ${code.ignoredWarnings}
-verbose
-inlineJSR
-enableJavadoc
@@ -482,7 +471,7 @@
**/package.html
- false
+ true
@@ -534,6 +523,7 @@
true
${surefire.testArgLine} ${surefire.platformSystemProperties} ${surefire.systemProperties} ${surefire.moduleProperties}
+ true
@@ -564,7 +554,6 @@
${tycho.version}
warn
- all
${comparator.repo}
@@ -618,6 +607,7 @@
true
true
true
+ en
UTF-8
UTF-8
true
@@ -687,9 +677,34 @@
a
Implementation Requirements:
+
+ category
+ a
+ Category:
+
+
+ provisional
+ a
+ Provisional:
+
+
+ jniclass
+ a
+ JNI Class:
+
+
+ ThreadSafe
+ a
+ Thread Safe:
+
+
+ issue
+ a
+ Issue:
+
-
+
org.osgi
org.osgi.annotation.bundle
@@ -705,6 +720,22 @@
org.osgi.service.component.annotations
1.5.0
+
+ org.eclipse.pde
+ org.eclipse.pde.api.tools.annotations
+ 1.2.0
+
+
+
+ javax.inject
+ javax.inject
+ 1
+
+
+ javax.annotation
+ javax.annotation-api
+ 1.3.2
+
@@ -713,36 +744,36 @@
- java21patch
+ java22patch
- 'v'yyyyMMdd-HHmm'_BETA_JAVA21'
+ 'v'yyyyMMdd-HHmm'_BETA_JAVA22'
org.eclipse.jdt
- 3.19.200.v20230705-1800
+ 3.19.400.v20240221-1800
- [3.19.200.v20230705-1800,3.19.249.v20231213-1800)
+ [3.19.400.v20240221-1800,3.19.449.v20240612-1800)
- https://download.eclipse.org/eclipse/updates/4.30/R-4.30-202312010110/
+ https://download.eclipse.org/eclipse/updates/4.31/R-4.31-202402290520/
- eclipse-p2-repo-java21patch
- https://download.eclipse.org/eclipse/updates/4.30/R-4.30-202312010110/
+ eclipse-p2-repo-java22patch
+ https://download.eclipse.org/eclipse/updates/4.31/R-4.31-202402290520/
p2
@@ -789,7 +820,7 @@
For maintenance streams should always be "M-builds".
Ideally, this value would be provided by the environment, see bug 489789.
-->
- https://download.eclipse.org/eclipse/updates/4.31-I-builds
+ https://download.eclipse.org/eclipse/updates/4.32-I-builds
@@ -839,9 +870,6 @@
verify
-
- false
-
@@ -909,6 +937,10 @@
${skipAPIAnalysis}
+ false
+ ${project.build.directory}/compilelogs
+ true
+ ${printApiMessages}
@@ -1009,7 +1041,7 @@
com.github.spotbugs
spotbugs-maven-plugin
- 4.8.2.0
+ 4.8.3.0
${java.version}
true
@@ -1129,7 +1161,7 @@
jar
- false
+ ${failOnJavadocErrors}
true
diff --git a/eclipse-platform-sources/pom.xml b/eclipse-platform-sources/pom.xml
index 5b821794b10..3bbdc427824 100644
--- a/eclipse-platform-sources/pom.xml
+++ b/eclipse-platform-sources/pom.xml
@@ -15,7 +15,7 @@
org.eclipse
eclipse-platform-parent
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
../eclipse-platform-parent
diff --git a/eclipse-platform-sources/sources.xml b/eclipse-platform-sources/sources.xml
index cc53a8a647c..8d58d1e35e1 100644
--- a/eclipse-platform-sources/sources.xml
+++ b/eclipse-platform-sources/sources.xml
@@ -25,9 +25,9 @@
eclipse.platform/**/*.dll
eclipse.platform/**/*.jnilib
eclipse.platform/**/*.so
- eclipse.platform.swt.binaries/**/*.dll
- eclipse.platform.swt.binaries/**/*.jnilib
- eclipse.platform.swt.binaries/**/*.so
+ eclipse.platform.swt/binaries/**/*.dll
+ eclipse.platform.swt/binaries/**/*.jnilib
+ eclipse.platform.swt/binaries/**/*.so
rt.equinox.binaries/org.eclipse.equinox.executable/bin/**
rt.equinox.binaries/org.eclipse.equinox.executable/contributed/**
rt.equinox.binaries/**/*.dll
diff --git a/eclipse.jdt b/eclipse.jdt
index 607ce686424..c30e5d79c1d 160000
--- a/eclipse.jdt
+++ b/eclipse.jdt
@@ -1 +1 @@
-Subproject commit 607ce68642466d18cd7f190a4ec395ddf4306750
+Subproject commit c30e5d79c1de307a3c4bd0e1650a527acbeeefec
diff --git a/eclipse.jdt.core b/eclipse.jdt.core
index fd0e8bcef6e..b7b08711904 160000
--- a/eclipse.jdt.core
+++ b/eclipse.jdt.core
@@ -1 +1 @@
-Subproject commit fd0e8bcef6e5bc6be6b15c0e3ebea005296cbf05
+Subproject commit b7b0871190403aba78e0e0a4369e43a08ff05ef2
diff --git a/eclipse.jdt.core.binaries b/eclipse.jdt.core.binaries
index 72d3bdcfae0..79101b0c099 160000
--- a/eclipse.jdt.core.binaries
+++ b/eclipse.jdt.core.binaries
@@ -1 +1 @@
-Subproject commit 72d3bdcfae0382e7821d0bbde2296657207fd138
+Subproject commit 79101b0c09910ab0c1fc3b19446b9a176b196916
diff --git a/eclipse.jdt.debug b/eclipse.jdt.debug
index cd1b3f71ad8..fbe88c82527 160000
--- a/eclipse.jdt.debug
+++ b/eclipse.jdt.debug
@@ -1 +1 @@
-Subproject commit cd1b3f71ad8d1108ae3adae94a936c1b10a16e0f
+Subproject commit fbe88c82527a2bc54b34626e40a3c9410ba77a58
diff --git a/eclipse.jdt.ui b/eclipse.jdt.ui
index d0421bf6a90..a156877904c 160000
--- a/eclipse.jdt.ui
+++ b/eclipse.jdt.ui
@@ -1 +1 @@
-Subproject commit d0421bf6a90733dda4abae058478badaf851d804
+Subproject commit a156877904c031c279535dd199febb920eb1be1e
diff --git a/eclipse.pde b/eclipse.pde
index eb34cab3630..a6824f75205 160000
--- a/eclipse.pde
+++ b/eclipse.pde
@@ -1 +1 @@
-Subproject commit eb34cab36303cf3449d887c4852284444d66c324
+Subproject commit a6824f75205aca3e2fe3c802a406be4523c68830
diff --git a/eclipse.platform b/eclipse.platform
index 21347e8ed66..d0c6961cd8f 160000
--- a/eclipse.platform
+++ b/eclipse.platform
@@ -1 +1 @@
-Subproject commit 21347e8ed66e9fdf3efecae4b22e81a3200b1310
+Subproject commit d0c6961cd8f3740abefda73e155c25299113bd39
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/META-INF/MANIFEST.MF b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/META-INF/MANIFEST.MF
index 605f6b495dd..d3ddaadc71c 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/META-INF/MANIFEST.MF
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.jdt.doc.isv; singleton:=true
-Bundle-Version: 3.14.2300.qualifier
+Bundle-Version: 3.14.2400.qualifier
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Require-Bundle: org.eclipse.help;bundle-version="[3.2.0,4.0.0)"
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/buildDoc.xml b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/buildDoc.xml
deleted file mode 100644
index 3a35525fe51..00000000000
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/buildDoc.xml
+++ /dev/null
@@ -1,136 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${fileList}
${dirList}
-
- org.eclipse.jdt.doc.isv/buildDoc.xml - generateJavadoc:
- Using java home: ${java.home} and javadocExecutable: ${javadocExecutable}
-
-${basedir}/${replaceFile} before _* expansion:
-
-
-
-
-
-
-
-
-
-
-${basedir}/${replaceFile} after _* expansion:
-
-
-
-
- dummyForBug402392=dummyForBug402392
-
-
-
-
-${basedir}/${optionsFile} after _* expansion:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-target/doc.bin.log after javadoc execution
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/cbi_basedirs.properties b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/cbi_basedirs.properties
index e0bd6d9e31c..cdee8af58df 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/cbi_basedirs.properties
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/cbi_basedirs.properties
@@ -9,7 +9,7 @@ eclipse.platform.debug=../../../eclipse.platform/debug
eclipse.platform.platform=../../../eclipse.platform/platform
eclipse.platform.resources.bundles=../../../eclipse.platform/resources/bundles
eclipse.platform.runtime.bundles=../../../eclipse.platform/runtime/bundles
-eclipse.platform.swt.binaries=../../../eclipse.platform.swt.binaries/bundles
+eclipse.platform.swt.binaries=../../../eclipse.platform.swt/binaries
eclipse.platform.swt.bundles=../../../eclipse.platform.swt/bundles
eclipse.platform.team.bundles=../../../eclipse.platform/team/bundles
eclipse.platform.ua=../../../eclipse.platform/ua
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/pom.xml b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/pom.xml
index 2958657de2f..3cdfe8a5401 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/pom.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/pom.xml
@@ -14,12 +14,12 @@
eclipse.platform.common
eclipse.platform.common
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
../../
org.eclipse.jdt
org.eclipse.jdt.doc.isv
- 3.14.2300-SNAPSHOT
+ 3.14.2400-SNAPSHOT
eclipse-plugin
@@ -45,16 +45,6 @@
org.eclipse.platform.doc.isv
0.0.0
-
- eclipse-plugin
- org.eclipse.pde.build
- 0.0.0
-
-
- eclipse-plugin
- org.eclipse.pde.core
- 0.0.0
-
eclipse-plugin
org.eclipse.core.externaltools
@@ -115,106 +105,159 @@
org.eclipse.update.configurator
0.0.0
+
+ eclipse-plugin
+ org.eclipse.platform.doc.isv
+ 0.0.0
+
- org.eclipse.tycho.extras
- tycho-document-bundle-plugin
-
-
- schema-to-html
- process-resources
-
- schema-to-html
-
-
-
- ${basedir}/${eclipse.jdt.core}/org.eclipse.jdt.apt.core/plugin.xml
- ${basedir}/${eclipse.jdt.core}/org.eclipse.jdt.core/plugin.xml
- ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.core.manipulation/plugin.xml
- ${basedir}/${eclipse.jdt.debug}/org.eclipse.jdt.debug/plugin.xml
- ${basedir}/${eclipse.jdt.debug}/org.eclipse.jdt.debug.ui/plugin.xml
- ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.junit/plugin.xml
- ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.junit.core/plugin.xml
- ${basedir}/${eclipse.jdt.debug}/org.eclipse.jdt.launching/plugin.xml
- ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.ui/plugin.xml
-
- ${basedir}/reference/extension-points
-
-
-
-
-
- org.apache.maven.plugins
- maven-dependency-plugin
+ org.eclipse.tycho.extras
+ tycho-document-bundle-plugin
+
+
+ schema-to-html
+ process-resources
+
+ schema-to-html
+
+
+
+ ${basedir}/${eclipse.jdt.core}/org.eclipse.jdt.apt.core/plugin.xml
+ ${basedir}/${eclipse.jdt.core}/org.eclipse.jdt.core/plugin.xml
+ ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.core.manipulation/plugin.xml
+ ${basedir}/${eclipse.jdt.debug}/org.eclipse.jdt.debug/plugin.xml
+ ${basedir}/${eclipse.jdt.debug}/org.eclipse.jdt.debug.ui/plugin.xml
+ ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.junit/plugin.xml
+ ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.junit.core/plugin.xml
+ ${basedir}/${eclipse.jdt.debug}/org.eclipse.jdt.launching/plugin.xml
+ ${basedir}/${eclipse.jdt.ui}/org.eclipse.jdt.ui/plugin.xml
+
+ ${basedir}/reference/extension-points
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+ unpack-platform-doc
+ process-resources
+
+ unpack-dependencies
+
+
+ org.eclipse.platform.doc.isv
+ ${project.build.directory}/unpack/org.eclipse.platform.doc.isv/reference/api
+
+
+
- org.eclipse.tycho.extras
- tycho-eclipserun-plugin
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+ attach-javadocs
+ prepare-package
+
+ javadoc
+
+
+ true
+ *.internal.*:*.internal
+ Eclipse JDT API Specification
+ Eclipse JDT API Specification
+ Eclipse JDT ${releaseName} (${releaseNumberSDK})]]>
+ Copyright (c) 2000, 2023 Eclipse Contributors and others. All rights reserved. Guidelines for using Eclipse APIs. ]]>
+ ${eclipse.jdt.core}/org.eclipse.jdt.annotation/src
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core.compiler.batch/src
+ ;${eclipse.jdt.core}/org.eclipse.jdt.apt.core/src
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/antadapter
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/codeassist
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/compiler
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/dom
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/eval
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/formatter
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/model
+ ;${eclipse.jdt.core}/org.eclipse.jdt.core/search
+ ;${eclipse.jdt.debug}/org.eclipse.jdt.debug/eval
+ ;${eclipse.jdt.debug}/org.eclipse.jdt.debug/jdi
+ ;${eclipse.jdt.debug}/org.eclipse.jdt.debug/model
+ ;${eclipse.jdt.debug}/org.eclipse.jdt.debug.ui/ui
+ ;${eclipse.jdt.debug}/org.eclipse.jdt.launching/launching
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.core.manipulation/common
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.core.manipulation/refactoring
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.junit/src
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.junit.core/src
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.junit.runtime/src
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.junit4.runtime/src
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.junit5.runtime/src
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.ui/core extension
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.ui/core refactoring
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.ui/internal compatibility
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.ui/ui
+ ;${eclipse.jdt.ui}/org.eclipse.jdt.ui/ui refactoring
+ ;${eclipse.platform.ant}/org.eclipse.ant.launching/src
+ ;${eclipse.platform.ant}/org.eclipse.ant.ui/Ant Editor
+ ;${eclipse.platform.ant}/org.eclipse.ant.ui/Ant Tools Support
+
+
+
+ Java development tools core packages
+ org.eclipse.jdt.core;org.eclipse.jdt.core.*
+
+
+ Java development tools UI packages
+ org.eclipse.jdt.ui;org.eclipse.jdt.ui.*
+
+
+ Java development tools APT packages
+ org.eclipse.jdt.apt.core;org.eclipse.jdt.apt.core.*;com.sun.mirror.*
+
+
+ Java development tools debug and launching packages
+ org.eclipse.ant.launching;org.eclipse.ant.ui.launching;org.eclipse.jdt.debug.*;org.eclipse.jdt.launching;org.eclipse.jdt.launching.*
+
+
+ Java development tools JUnit packages
+ org.eclipse.jdt.junit;org.eclipse.jdt.junit.*
+
+
+
+
+
+ ./../../../org.eclipse.platform.doc.isv/reference/api
+ ${project.build.directory}/unpack/org.eclipse.platform.doc.isv
+
+
+
+
+
+
+
+ maven-resources-plugin
- dont_skip_me
- compile
-
- false
-
-
- -consolelog
- -debug
- -data
- target/workspace
- -application
- org.eclipse.ant.core.antRunner
- -buildfile
- buildDoc.xml
- -Dbasedir.properties=cbi_basedirs.properties
- -Declipse.javadoc=${eclipse.javadoc}
-
-
-
-
- org.eclipse.osgi.compatibility.state
- eclipse-plugin
-
-
- org.eclipse.ant.core
- eclipse-plugin
-
-
- org.apache.ant
- eclipse-plugin
-
-
- org.eclipse.help.base
- eclipse-plugin
-
-
- org.eclipse.pde.build
- eclipse-plugin
-
-
- org.eclipse.pde.core
- eclipse-plugin
-
-
- jakarta.annotation-api
- eclipse-plugin
-
-
- org.eclipse.update.configurator
- eclipse-plugin
-
-
- eclipse-plugin
- com.ibm.icu
-
-
-
+ copy-resources
+
+ prepare-package
- eclipse-run
+ copy-resources
+
+ ${basedir}/reference/api
+
+
+ ${project.build.directory}/site/apidocs
+
+
+
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/faq.html b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/faq.html
new file mode 100644
index 00000000000..871e488891c
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/faq.html
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+Eclipse JDT 4.31 Plug-in Migration FAQ
+
+
+
+
+Eclipse JDT 4.31 Plug-in Migration FAQ
+
+
+ None
+
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/incompatibilities.html b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/incompatibilities.html
new file mode 100644
index 00000000000..f9488cde42e
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/incompatibilities.html
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+Incompatibilities between Eclipse 4.30 and 4.31
+
+
+Incompatibilities between Eclipse 4.30 and 4.31
+
+
+ So far Eclipse did not change incompatibly between 4.30 and 4.31 in ways that affect
+ plug-ins. Plug-ins that ran on 4.30 should run on 4.31 without any problems.
+
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/recommended.html b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/recommended.html
new file mode 100644
index 00000000000..7d49edd6bbd
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/4.31/recommended.html
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+Adopting JDT 4.31 mechanisms and APIs
+
+
+
+
+Adopting JDT 4.31 mechanisms and APIs
+
+ This section describes changes that are required if you are trying to change
+ your 4.30 plug-in to adopt the 4.31 mechanisms and APIs.
+
+
+
+ None
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/eclipse_4_31_porting_guide.html b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/eclipse_4_31_porting_guide.html
new file mode 100644
index 00000000000..aa759eec8f9
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/porting/eclipse_4_31_porting_guide.html
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+Eclipse JDT 4.31 Plug-in Migration Guide
+
+
+
+
+Eclipse JDT 4.31 Plug-in Migration Guide
+This guide covers migrating Eclipse JDT 4.30 plug-ins to Eclipse JDT 4.31.
+One of the goals of Eclipse 4.31 was to move Eclipse forward while remaining compatible
+ with previous versions to the greatest extent possible. That is, plug-ins written
+ against the Eclipse 4.30 APIs should continue to work in 4.31 in spite of the
+ API changes.
+The key kinds of compatibility are API contract compatibility and binary compatibility.
+ API contract compatibility means that valid use of 4.30 APIs remains valid for
+ 4.31, so there is no need to revisit working code. Binary compatibility means
+ that the API method signatures, etc. did not change in ways that would cause
+ existing compiled ("binary") code to no longer link and run with the
+ new 4.31 libraries.
+While every effort was made to avoid breakage, there are a few areas of incompatibility or new
+ APIs that should be adopted by clients.
+ This document describes those areas and provides instructions for migrating 4.30 plug-ins to
+ 4.31.
+
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/topics_Porting.xml b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/topics_Porting.xml
index 6eb1f236c6b..74b84f215c2 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/topics_Porting.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.isv/topics_Porting.xml
@@ -4,6 +4,12 @@
+
+
+
+
+
+
@@ -21,14 +27,14 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/pom.xml b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/pom.xml
index d107f47b788..c58f36b2ac7 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/pom.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/pom.xml
@@ -14,7 +14,7 @@
eclipse.platform.common
eclipse.platform.common
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
../../
org.eclipse.jdt
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/topics_WhatsNew.xml b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/topics_WhatsNew.xml
index 96d4ad1bb0c..be014811e9b 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/topics_WhatsNew.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/topics_WhatsNew.xml
@@ -4,7 +4,7 @@
-
-
+
+
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/add_default_case.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/add_default_case.png
deleted file mode 100644
index 2635e31c043..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/add_default_case.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/add_default_case_result.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/add_default_case_result.png
deleted file mode 100644
index 7b873be4b32..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/add_default_case_result.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/constant-renaming.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/constant-renaming.png
deleted file mode 100644
index c2f8414262e..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/constant-renaming.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/deprecated-after.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/deprecated-after.png
deleted file mode 100644
index 19492cdbe21..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/deprecated-after.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/deprecated-before.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/deprecated-before.png
deleted file mode 100644
index 851e4b2a3b0..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/deprecated-before.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/formatter_align_arrows.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/formatter_align_arrows.png
new file mode 100644
index 00000000000..b9dbbba402a
Binary files /dev/null and b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/formatter_align_arrows.png differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/insert_break.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/insert_break.png
deleted file mode 100644
index 1b424146a4e..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/insert_break.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/insert_break_result.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/insert_break_result.png
deleted file mode 100644
index 39363d214dd..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/insert_break_result.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/make-static-refactoring-example-after.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/make-static-refactoring-example-after.png
new file mode 100644
index 00000000000..bb6770b513a
Binary files /dev/null and b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/make-static-refactoring-example-after.png differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/make-static-refactoring-example-before.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/make-static-refactoring-example-before.png
new file mode 100644
index 00000000000..ed5406cece3
Binary files /dev/null and b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/make-static-refactoring-example-before.png differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/remove_default_case.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/remove_default_case.png
deleted file mode 100644
index 26342bfd18f..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/remove_default_case.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/remove_default_case_result.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/remove_default_case_result.png
deleted file mode 100644
index 64485523794..00000000000
Binary files a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/remove_default_case_result.png and /dev/null differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/resource-compiler-options.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/resource-compiler-options.png
new file mode 100644
index 00000000000..f53a70d7058
Binary files /dev/null and b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/resource-compiler-options.png differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/resource-demo-code.png b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/resource-demo-code.png
new file mode 100644
index 00000000000..9695da87dc1
Binary files /dev/null and b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/images/resource-demo-code.png differ
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/jdt_whatsnew.html b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/jdt_whatsnew.html
index 601bf0a9f3d..c1ad51b8795 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/jdt_whatsnew.html
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.doc.user/whatsNew/jdt_whatsnew.html
@@ -17,23 +17,23 @@
table.news tr td.content {vertical-align: top;}
ul {padding-left: 13px;}
-What's New in Eclipse 4.30 (JDT)
+What's New in Eclipse 4.31 (JDT)
-What's New in Eclipse 4.30 (JDT)
+Java Development Tools
Here are descriptions of some of the more interesting or significant changes made to the Java development tools (JDT)
-for the 4.30 release of Eclipse.
+for the 4.31 release of Eclipse.
They are grouped into:
See also the Eclipse Platform What's New
@@ -49,32 +49,24 @@
What's New in Eclipse 4.30 (JDT)
-
+
+
- Java Language Features
-
-
- The release notably includes the following Java features:
-
- JEP 440: Record Patterns .
-
- JEP 441: Pattern Matching for Switch .
-
-
-
-
+ -->
+
-
+
+ -->
@@ -83,116 +75,147 @@ JUnit
Java Editor
-
-
- Quick Fix to add default case
-
- You can use the new Quick Fix (Ctrl+1) to add the missing default
case to an enhanced switch statement. For example,
-
- will result in:
-
-
-
-
-
- Quick Fix to remove default case
-
- You can use the new Quick Fix (Ctrl+1) to remove the default
case when it is present with unconditional pattern in a switch. For example,
-
- will result in:
-
-
-
-
-
- Quick Fix to insert break statement
-
- You can use the new Quick Fix (Ctrl+1) to insert the break
statement when there is an illegal fall-through to a pattern in a switch statement.
- For example,
-
- will result in:
-
-
-
-
-
- Cleanup and quick fix to replace deprecated method calls
-
- A new cleanup has been added to the Source > Clean Up > Source Fixing tab page to replace deprecated method calls with inlined content. Choosing this option will inline
- the implementation of the deprecated method if and only if:
-
- The deprecated method has Javadoc that specifies a @deprecated tag which ends with "use {@link ...}" or "replace by {@link ...}"
- The {@link ...} tag refers to a method
- The linked method is actually called in the implementation of the deprecated method
- Methods and fields accessed in the linked method are visible at the location it will be inlined (e.g. using a package private method is ok to call if in same package)
-
- For example, cleaning up the following:
-
- will result in inlining the deprecated foo() call in foo2:
-
- The functionality is also available as a quick fix for an individual call to a deprecated method that is marked with warning or error. One can also select a deprecated method call and initiate as a quick assist (select call and click CTRL + 1 ).
-
-
-
-
- Quick assist to rename constant fields
+
+
+ New Make Static Refactoring
- A new quick assist has been added to rename static constant fields to follow a standard syntax using upper-case and underscores rather than camel case.
- To use: select the constant and click CTRL+1 .
- For example,
-
- will offer to rename the constant "valConstant1" to "VAL_CONSTANT1".
+ A new refactoring called 'Make Static' has been added to Eclipse's Java Development Tools (JDT), which converts instance methods into static methods, when possible. This refactoring adds an extra parameter to the method declarations to handle references to instance fields, methods, or classes in the original method. Existing calls to the method are altered accordingly, and if the extra parameter is necessary, the refactoring passes 'this' or the specific instance originally used to access the method.
+ To apply this refactoring, the following conditions must be met:
+
+ The method is not a constructor.
+ The method does not override a method from the parent type nor is overridden in any child types.
+ The type in which the method is declared is not a local type, an anonymous type, or an annotation.
+
+ The refactoring can be executed by selecting a method invocation, except in cases where a super method invocation is selected.
+
+
+
+
-
+
+ -->
-
+
+
+
+
+ Analysis of Resource Leaks Improved with Annotations
+
+ The compiler's capability to detect when resources (implementation of AutoCloseable
) are not properly closed
+ has been enhanced.
+
+ Previously, flow analysis for resource leaks was focused on resources that are created and closed within the same method.
+ It could not deal well with resources that are shared between different methods,
+ perhaps even different objects.
+
+
+ The compiler now interprets an annotation @Owning
to understand data flows of resources by way of the
+ following concepts:
+
+
+ A source of resources Here a resource will come into the focus of the current method,
+ along with a responsibility to close it.
+ A sink for resources Here a resource will be consumed, either by closing, or by delegation
+ to other code which then will be responsible
+
+ Resource allocation is the primordial source, and a call to AutoCloseable.close()
is the final sink.
+ When allocation and closing do not happen within the same method, then annotation @Owning
should be used to create
+ connections through which responsibility for a resource can be transferred from one method to another.
+ The inverse annotation @NotOwning
, on the other hand, signals that no such connection is made;
+ the original holder of the resource is still responsible for sending it to a suitable sink.
+
+
+
+
+
+ It's in method produce()
where a new resource is allocated.
+ The return statement in that method is governed by the @Owning
annotation on the method.
+ This implies that returning this value is a sink from the point of view of produce()
.
+ By this method produce()
is considered safe.
+ But looking from the outside this sink is in fact the source by which the resource arrives in method test()
.
+
+
+ After method test()
receives the resource, the responsibility to close is fulfilled by passing it down into consume()
.
+ In method consume()
it's the annotation on parameter in
that creates the connection:
+ test()
has done its part and now consume()
is responsible.
+ Protecting the resource with a try-with-resources statement is the preferred way to fulfill the responsibility, its implicit close()
call is the ultimate sink.
+ Thus the given combination of method calls indeed creates a provably safe data flow from initial source to final sink,
+ because both calls are governed by @Owning
.
+
+
+ The body of produce()
also shows another detail:
+ just like test()
it passes the resource as a parameter to another method, here: skipHeader()
.
+ The parameter of skipHeader()
, however, is annotated as @NotOwning
+ by which the method rejects any responsibility.
+ Indeed there's no close call to be found here, but that's OK under the @NotOwning
annotation - this parameter is not a source .
+ As a result, still after the call to skipHeader()
it is produce()
who is responsible.
+ For that reason saying return in;
is indeed necessary for produce()
to demonstrate obedience to the contract.
+
+
+ Additional rules exist for fields holding a resource and for methods other than close()
that perform mandatory clean-up.
+ Details on those can be found in the documentation of org.eclipse.jdt.annotation.Owning.
+
+
+ To enable this feature select Java Compiler > Errors/Warnings > Enable annotation based resource analysis
in the project preferences:
+
+
+
+
+
+
-
+
+
+ Switch Statements/Expressions: Align Arrows on Column
+
+ Switch statements and expressions with arrows can now be aligned so that all arrows are placed at the same position in line.
+ Open the formatter profile editor and find the new option under Indentation > Align items in columns > Arrows in switch statements/expressions
.
+
+
+
-
+
+ -->
+
- Pushdown of refactors and proposals to jdt.manipulations
-
- A significant amount of code was pushed down from org.eclipse.jdt.ui into org.eclipse.jdt.core.manipulations, specifically most of the proposal and refactor operations. This will allow these operations to be used in a headless environment.
-
-
+ -->
-
+
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/META-INF/MANIFEST.MF b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/META-INF/MANIFEST.MF
index d1c37353780..0cc692db206 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/META-INF/MANIFEST.MF
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: JDT Tip of the Day Provider
Bundle-SymbolicName: org.eclipse.jdt.tips.user;singleton:=true
-Bundle-Version: 0.3.0.qualifier
+Bundle-Version: 0.3.100.qualifier
Bundle-Vendor: Eclipse.org
Automatic-Module-Name: org.eclipse.jdt.tips.user
Bundle-RequiredExecutionEnvironment: JavaSE-17
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/content/provider.json b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/content/provider.json
index 2c48fc804c0..a370c903d22 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/content/provider.json
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/content/provider.json
@@ -4,7 +4,7 @@
"description": "Java and JDT Tips",
"expression": " ",
"variables": {
- "baseUrl": "http://www.eclipse.org/downloads/download.php?r=1&file=/eclipse/tips/org.eclipse.jdt.tips.user"
+ "baseUrl": "https://www.eclipse.org/downloads/download.php?r=1&file=/eclipse/tips/org.eclipse.jdt.tips.user"
},
"tips": [{
"date": "2018-01-05",
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/pom.xml b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/pom.xml
index 29cd4b3e685..92f3ab72c35 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/pom.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/pom.xml
@@ -16,11 +16,11 @@
eclipse.platform.common
eclipse.platform.common
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
../../
org.eclipse.ui
org.eclipse.tips.core
- 0.3.0-SNAPSHOT
+ 0.3.100-SNAPSHOT
eclipse-plugin
diff --git a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/src/org/eclipse/jdt/tips/user/internal/JDTTipProvider.java b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/src/org/eclipse/jdt/tips/user/internal/JDTTipProvider.java
index f65b461f654..9426a072e92 100644
--- a/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/src/org/eclipse/jdt/tips/user/internal/JDTTipProvider.java
+++ b/eclipse.platform.common/bundles/org.eclipse.jdt.tips.user/src/org/eclipse/jdt/tips/user/internal/JDTTipProvider.java
@@ -34,7 +34,7 @@ public JDTTipProvider() throws MalformedURLException {
if (fUrl != null) {
setJsonUrl(fUrl);
} else {
- fUrl = "http://www.eclipse.org/downloads/download.php?r=1&file=/eclipse/tips/org.eclipse.jdt.tips.user/" + FILENAME; //$NON-NLS-1$
+ fUrl = "https://www.eclipse.org/downloads/download.php?r=1&file=/eclipse/tips/org.eclipse.jdt.tips.user/" + FILENAME; //$NON-NLS-1$
setJsonUrl(fUrl);
}
}
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/META-INF/MANIFEST.MF b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/META-INF/MANIFEST.MF
index 9fc280dd56b..6b48fb918bc 100644
--- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/META-INF/MANIFEST.MF
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.platform.doc.isv; singleton:=true
-Bundle-Version: 4.31.0.qualifier
+Bundle-Version: 4.32.0.qualifier
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Require-Bundle: org.eclipse.help;bundle-version="[3.2.0,4.0.0)"
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/buildDoc.xml b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/buildDoc.xml
deleted file mode 100644
index 79486856cfa..00000000000
--- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/buildDoc.xml
+++ /dev/null
@@ -1,161 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ${fileList}
${dirList}
-
-org.eclipse.platform.doc.isv/buildDoc.xml - generateJavadoc:
- Using javadocExecutable: ${javadocExecutable}
-
-
-
-
-
-
-
-
-
-
- dummyForBug402392=dummyForBug402392
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/platformOptions.txt b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/platformOptions.txt
index 5c3a6cb09d3..7c5a1629849 100644
--- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/platformOptions.txt
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/platformOptions.txt
@@ -163,6 +163,8 @@
;${dependency.dir}/org.osgi.service.prefs_*.jar
;${dependency.dir}/org.osgi.service.event_*.jar
;${dependency.dir}/org.osgi.service.cm_*.jar
+;${dependency.dir}/org.osgi.service.http.whiteboard_*.jar
+;${dependency.dir}/org.osgi.service.component.annotations_*.jar
;${dependency.dir}/jetty-http_*.jar
;${dependency.dir}/jetty-io_*.jar
;${dependency.dir}/jetty-security_*.jar
@@ -183,7 +185,7 @@
;${eclipse.platform.ui.bundles}/org.eclipse.e4.emf.xpath/${dot.classes}
;${rt.equinox.framework.bundles}/org.eclipse.osgi/${dot.classes}
;${rt.equinox.framework.bundles}/org.eclipse.osgi/osgi/osgi.annotation.jar
-;${rt.equinox.framework.bundles}/org.eclipse.osgi.services/${dot.classes}
+;${rt.equinox.framework.bundles}/org.eclipse.equinox.http.service.api/${dot.classes}
;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.director/${dot.classes}
;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.garbagecollector/${dot.classes}
;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.metadata.repository/${dot.classes}
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml
index 43d4177866b..6c25a072b9a 100644
--- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/pom.xml
@@ -14,7 +14,7 @@
eclipse.platform.common
eclipse.platform.common
- 4.31.0-SNAPSHOT
+ 4.32.0-SNAPSHOT
../../
org.eclipse.platform
@@ -50,6 +50,28 @@
+
+ maven-clean-plugin
+
+
+
+ reference/api
+
+
+ reference/extension-points
+
+ index.html
+
+
+
+ samples
+
+ samples.html
+
+
+
+
+
org.eclipse.tycho
target-platform-configuration
@@ -58,17 +80,17 @@
eclipse-plugin
- org.eclipse.pde.build
+ com.ibm.icu
0.0.0
eclipse-plugin
- org.eclipse.pde.core
+ org.osgi.service.event
0.0.0
eclipse-plugin
- com.ibm.icu
+ org.osgi.service.http.whiteboard
0.0.0
@@ -246,6 +268,26 @@
org.osgi.service.cm
0.0.0
+
+ eclipse-plugin
+ org.eclipse.equinox.simpleconfigurator
+ 0.0.0
+
+
+ eclipse-plugin
+ org.eclipse.e4.ui.workbench.addons.swt
+ 0.0.0
+
+
+ eclipse-plugin
+ org.osgi.service.component.annotations
+ 0.0.0
+
+
+ eclipse-plugin
+ org.eclipse.e4.emf.xpath
+ 0.0.0
+
eclipse-plugin
org.osgi.annotation.versioning
@@ -270,42 +312,6 @@
-
- org.apache.maven.plugins
- maven-dependency-plugin
-
-
- copy-deps
- compile
-
- copy-dependencies
-
-
-
- copy
- compile
-
- copy
-
-
-
-
- jakarta.annotation
- jakarta.annotation-api
- 1.3.5
-
-
- jakarta.inject
- jakarta.inject-api
- 1.0.5
-
-
-
-
-
-
-
-
org.eclipse.tycho.extras
tycho-document-bundle-plugin
@@ -371,97 +377,252 @@
-
-
- org.eclipse.tycho.extras
- tycho-eclipserun-plugin
-
-
- dont_skip_me
- compile
-
- false
-
-
- -consolelog
- -debug
- -data
- target/workspace
- -application
- org.eclipse.ant.core.antRunner
- -buildfile
- buildDoc.xml
- -Dbasedir.properties=cbi_basedirs.properties
- -Declipse.javadoc=${eclipse.javadoc}
-
-
-
-
- org.eclipse.osgi.compatibility.state
- eclipse-plugin
-
-
- org.osgi.service.cm
- eclipse-plugin
-
-
- org.eclipse.ant.core
- eclipse-plugin
-
-
- org.apache.ant
- eclipse-plugin
-
-
- org.eclipse.help.base
- eclipse-plugin
-
-
- org.eclipse.pde.build
- eclipse-plugin
-
-
- org.eclipse.pde.core
- eclipse-plugin
-
-
- jakarta.annotation-api
- eclipse-plugin
- 1.3.5
-
-
- jakarta.annotation-api
- eclipse-plugin
- 2.1.1
-
-
- org.eclipse.equinox.launcher
- eclipse-plugin
-
-
- org.eclipse.update.configurator
- eclipse-plugin
-
-
- eclipse-plugin
- bcpg
-
-
- eclipse-plugin
- bcprov
-
-
- eclipse-plugin
- com.ibm.icu
-
-
-
+
+
+ maven-resources-plugin
+
+
+ copy-extension-resources
+ process-resources
+
+ copy-resources
+
+
+ ${basedir}/reference/extension-points
+
+
+ ${basedir}/${eclipse.platform.ua}/org.eclipse.ui.cheatsheets/schema/
+ false
+
+ cheatSheetContentFileSpec.html
+ cheatSheetContentFileSpec.exsd
+ compositeContentFile.html
+ compositeContentFile.exsd
+ org.eclipse.ui.intro/schema/introContentFileSpec.html
+
+
+
+ ${basedir}/${eclipse.platform.ua}/org.eclipse.ui.intro/schema/
+ false
+
+ introContentFileSpec.html
+
+
+
+
+
+
+ copy-example-resources
+ process-resources
+
+ copy-resources
+
+
+ ${basedir}/samples
+
+
+ ${basedir}/${eclipse.platform.team.examples}
+ false
+
+ org.eclipse.compare.examples/doc-html/*.*
+ org.eclipse.compare.examples.xml/doc-html/*.*
+ org.eclipse.team.examples.filesystem/doc-html/*.*
+
+
+
+ ${basedir}/${eclipse.platform.swt.examples}
+ false
+
+ org.eclipse.swt.examples/doc-html/*.*
+ org.eclipse.swt.examples.views/doc-html/*.*
+ org.eclipse.swt.examples.launcher/doc-html/*.*
+ org.eclipse.swt.examples.ole.win32/doc-html/*.*
+
+
+
+ ${basedir}/${eclipse.platform.ui.examples}
+ false
+
+ org.eclipse.ui.examples.fieldassist/doc-html/*.*
+ org.eclipse.ui.examples.multipageeditor/doc-html/*.*
+ org.eclipse.ui.examples.propertysheet/doc-html/*.*
+ org.eclipse.ui.examples.readmetool/doc-html/*.*
+ org.eclipse.ui.examples.undo/doc-html/*.*
+ org.eclipse.ui.examples.javaeditor/doc-html/*.*
+
+
+
+
+
+
+ copy-javadoc
+ prepare-package
- eclipse-run
+ copy-resources
-
-
-
+
+ ${basedir}/reference/api
+
+
+ ${project.build.directory}/site/apidocs
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+ attach-javadocs
+ process-classes
+
+ javadoc
+
+
+ true
+ *.internal.*
+ Eclipse Platform API Specification
+ Eclipse Platform API Specification
+ Eclipse Platform ${releaseName} (${releaseNumberSDK})]]>
+ Copyright (c) 2000, 2023 Eclipse Contributors and others. All rights reserved. Guidelines for using Eclipse APIs. ]]>
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ltk.core.refactoring/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ltk.ui.refactoring/src
+ ;${eclipse.pde}/org.eclipse.pde/src
+ ;${eclipse.platform.ant}/org.eclipse.ant.core/src
+ ;${eclipse.platform.debug}/org.eclipse.core.variables/src
+ ;${eclipse.platform.debug}/org.eclipse.debug.core/core
+ ;${eclipse.platform.debug}/org.eclipse.debug.ui/ui
+ ;${eclipse.platform.debug}/org.eclipse.ui.console/src
+ ;${eclipse.platform.debug}/org.eclipse.unittest.ui/src
+ ;${eclipse.platform.platform}/org.eclipse.platform/src
+ ;${eclipse.platform.resources.bundles}/org.eclipse.core.filesystem/src
+ ;${eclipse.platform.resources.bundles}/org.eclipse.core.resources/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.core.contenttype/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.core.expressions/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.core.jobs/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.core.runtime/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.e4.core.contexts/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.e4.core.di/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.e4.core.di.annotations/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.e4.core.di.extensions/src
+ ;${eclipse.platform.runtime.bundles}/org.eclipse.e4.core.services/src
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Accessibility/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Accessibility/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT AWT/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT AWT/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Browser/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Browser/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Custom Widgets/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Drag and Drop/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Drag and Drop/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT OLE Win32/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT OpenGL/common
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT OpenGL/emulated
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT OpenGL/glx
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT OpenGL/win32
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT PI/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT PI/common_j2se/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT PI/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Printing/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Printing/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Program/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT Program/win32/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT/common/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT/common_j2se/
+ ;${eclipse.platform.swt.bundles}/org.eclipse.swt/Eclipse SWT/win32/
+ ;${eclipse.platform.team.bundles}/org.eclipse.compare/compare
+ ;${eclipse.platform.team.bundles}/org.eclipse.compare.core/src
+ ;${eclipse.platform.team.bundles}/org.eclipse.core.net/src
+ ;${eclipse.platform.team.bundles}/org.eclipse.jsch.core/src
+ ;${eclipse.platform.team.bundles}/org.eclipse.jsch.ui/src
+ ;${eclipse.platform.team.bundles}/org.eclipse.team.core/src
+ ;${eclipse.platform.team.bundles}/org.eclipse.team.ui/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.core.filebuffers/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.jface.text/projection
+ ;${eclipse.platform.ui.bundles}/org.eclipse.jface.text/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.search.core/search
+ ;${eclipse.platform.ui.bundles}/org.eclipse.search/newsearch
+ ;${eclipse.platform.ui.bundles}/org.eclipse.search/search
+ ;${eclipse.platform.ui.bundles}/org.eclipse.text/projection
+ ;${eclipse.platform.ui.bundles}/org.eclipse.text/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.editors/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.workbench.texteditor/src
+ ;${eclipse.platform.ua}/org.eclipse.help/src
+ ;${eclipse.platform.ua}/org.eclipse.help.base/src
+ ;${eclipse.platform.ua}/org.eclipse.help.base/src_demo
+ ;${eclipse.platform.ua}/org.eclipse.help.ui/src
+ ;${eclipse.platform.ua}/org.eclipse.help.webapp/src
+ ;${eclipse.platform.ua}/org.eclipse.ui.cheatsheets/src
+ ;${eclipse.platform.ua}/org.eclipse.ui.intro/src
+ ;${eclipse.platform.ua}/org.eclipse.ui.intro.universal/src
+ ;${eclipse.platform.ua}/org.eclipse.ui.intro.quicklinks/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.core.commands/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.core.databinding/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.core.databinding.beans/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.core.databinding.observable/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.core.databinding.property/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.core.commands/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.bindings/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.css.core/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.css.swt/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.css.swt.theme/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.di/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.dialogs/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.ide/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.model.workbench/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.services/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.widgets/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.workbench/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.workbench.renderers.swt/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.workbench.swt/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.e4.ui.workbench3/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.jface/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.jface.databinding/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.jface.notifications/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.forms/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.genericeditor/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.ide/extensions
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.ide/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.navigator/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.navigator.resources/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.views/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.views.properties.tabbed/src
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.workbench/Eclipse UI
+ ;${eclipse.platform.ui.bundles}/org.eclipse.ui.workbench/Eclipse UI Editor Support
+ ;${eclipse.platform.update}/org.eclipse.update.configurator/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.http.jetty/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.app/osgi
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.app/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.bidi/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.common/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.http.registry/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.http.servlet/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.jsp.jasper/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.jsp.jasper.registry/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.preferences/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.registry/src
+ ;${rt.equinox.bundles.bundles}/org.eclipse.equinox.security/src
+ ;${rt.equinox.framework.bundles}/org.eclipse.osgi/container/src
+ ;${rt.equinox.framework.bundles}/org.eclipse.osgi/supplement/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.frameworkadmin/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.core/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.director/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.engine/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.metadata/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.metadata.repository/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.operations/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.repository/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.touchpoint.eclipse/src
+ ;${rt.equinox.p2.bundles}/org.eclipse.equinox.p2.ui/src
+
+
+
+
+
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/faq.html b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/faq.html
new file mode 100644
index 00000000000..94c5f534005
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/faq.html
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+Eclipse 4.31 Plug-in Migration FAQ
+
+
+Eclipse 4.31 Plug-in Migration FAQ
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/incompatibilities.html b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/incompatibilities.html
new file mode 100644
index 00000000000..05da5168293
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/incompatibilities.html
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+Incompatibilities between Eclipse 4.30 and 4.31
+
+
+Incompatibilities between Eclipse 4.30 and 4.31
+
+
+ Eclipse changed in incompatible ways between 4.30 and 4.31 in ways that affect
+ plug-ins. The following entries describe the areas that changed and provide
+ instructions for migrating 4.30 plug-ins to 4.31. Note that you only need to look
+ here if you are experiencing problems running your 4.30 plug-in on 4.31.
+
+
+See also the list of deprecated API removals for this release.
+
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/recommended.html b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/recommended.html
new file mode 100644
index 00000000000..bcf4b0c0543
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/4.31/recommended.html
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+ Adopting 4.31 mechanisms and APIs
+
+
+
+ Adopting 4.31 mechanisms and APIs
+
+ This section describes changes that are required if you are
+ trying to change your 4.30 plug-in to adopt the 4.31 mechanisms and
+ APIs.
+
+
+
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/eclipse_4_31_porting_guide.html b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/eclipse_4_31_porting_guide.html
new file mode 100644
index 00000000000..089e8dcc087
--- /dev/null
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/eclipse_4_31_porting_guide.html
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+Eclipse 4.31 Plug-in Migration Guide
+
+
+
+
+Eclipse 4.31 Plug-in Migration Guide
+This guide covers migrating Eclipse 4.30 plug-ins to Eclipse 4.31.
+One of the goals of Eclipse 4.31 was to move Eclipse forward while remaining compatible
+ with previous versions to the greatest extent possible. That is, plug-ins written
+ against the Eclipse 4.30 APIs should continue to work in 4.31 in spite of any API changes.
+The key kinds of compatibility are API contract compatibility and binary compatibility.
+ API contract compatibility means that valid use of 4.30 APIs remains valid for
+ 4.31, so there is no need to revisit working code. Binary compatibility means
+ that the API method signatures, etc. did not change in ways that would cause
+ existing compiled ("binary") code to no longer link and run with the
+ new 4.31 libraries.
+While every effort was made to avoid breakage, there are a few areas of incompatibility or new
+ APIs that should be adopted by clients.
+ This document describes those areas and provides instructions for migrating 4.30 plug-ins to
+ 4.31.
+
+
+
+
\ No newline at end of file
diff --git a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/removals.html b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/removals.html
index 613e409196d..bf673f20db0 100644
--- a/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/removals.html
+++ b/eclipse.platform.common/bundles/org.eclipse.platform.doc.isv/porting/removals.html
@@ -137,43 +137,6 @@ 3. org.eclipse.core.launcher#Main and WebStartMain and
API removals after June 2021
-1. Delete deprecated contents of org.eclipse.ui.commands package
-
-The following deprecated contents of org.eclipse.ui.commands are not used anymore by the platform and will be deleted.
-
- AbstractHandler
- ActionHandler
- CategoryEvent
- CommandEvent
- CommandException
- CommandManagerEvent
- ExecutionException
- HandlerEvent
- HandlerSubmission
- ICategory
- ICategoryListener
- ICommand
- ICommandListener
- ICommandManager
- ICommandManagerListener
- IHandler
- IHandlerListener
- IKeyConfiguration
- IKeyConfigurationListener
- IKeySequenceBinding
- IWorkbenchCommandSupport
- KeyConfigurationEvent
- NotDefinedException
- NotHandledException
- Priority
- org.eclipse.ui.IWorkbench.getCommandSupport()
-
-
-
-For further details or to provide feedback on this change, see bug 431177 .
-
-
-
API removals after May 2022
@@ -251,9 +214,6 @@ 4. Remove IModelProviderEvent's fields TARGET_CHANG
For further details or to provide feedback on this change, see bug 570549 .
-Removed API in previous releases
-
-
API removals after December 2025
@@ -272,6 +232,29 @@ 1. Support for javax-annotation by the E4 InjectorEclipse 4.30 - New and Noteworthy: Support for Jakarta Annotations by Eclipse E4.
+
+
+API removals after March 2026
+
+1. Bundle org.eclipse.osgi.services
+
+The bundle org.eclipse.osgi.services
is deprecated for removal.
+Its content has already been replaced by the official OSGi bundles published to Maven-Central and it only reexports these org.osgi.service.*
bundles.
+
+Consumers are encouraged to replace their requirements on the bundle org.eclipse.osgi.services
by imports of the used org.osgi.service.*
packages already now.
+This allows the OSGi runtime to choose any suitable provider of the package that is available.
+
+
+2. PluginVersionIdentifier
+
+The class org.eclipse.core.runtime.PluginVersionIdentifier
is deprecated for removal.
+As replacement org.osgi.framework.Version
should be used.
+
+
+
+Removed API in previous releases
+
+
@@ -607,5 +590,46 @@ 2. Remove MultiPageEditor and related API
For further details or to provide feedback on this change, see Issue 1155 .
+
+
+API removals in the Eclipse 4.31 release
+1. Delete deprecated contents of org.eclipse.ui.commands package
+
+The following deprecated contents of org.eclipse.ui.commands are not used anymore by the platform and will be deleted.
+
+ AbstractHandler
+ ActionHandler
+ CategoryEvent
+ CommandEvent
+
+ CommandException
+ CommandManagerEvent
+ ExecutionException
+ HandlerEvent
+ HandlerSubmission
+ ICategory
+ ICategoryListener
+ ICommand
+ ICommandListener
+ ICommandManager
+ ICommandManagerListener
+ IHandler
+ IHandlerListener
+ IKeyConfiguration
+ IKeyConfigurationListener
+ IKeySequenceBinding
+ IWorkbenchCommandSupport
+ KeyConfigurationEvent
+ NotDefinedException
+ NotHandledException
+ Priority
+ org.eclipse.ui.IWorkbench.getCommandSupport()
+
+
+
+For further details or to provide feedback on this change, see bug 431177 .
+
+
+