4.21 Releng
Tracks the release engineering activities for the 4.21 release.
Opening actions
- [ ] Update version numbers
- [ ] Create Milestone 4.22 in Github
- [ ] Create Release in Project Administration
Release day - 7
- [ ] Announce new release pending in discussions
- [ ] Revisit all open tasks
Release candidate (Milestone) - testing
- [ ] BIRT 4.21 All-In-One designer
- [ ] BIRT 4.21 runtime
- [ ] BIRT 4.21 runtime OSGi
Release day
- [ ] Create Github release (Creates Tag and Announcement in Discussions)
- [ ] Update README.MD
- [ ] Update 4.21 Release in Project Administration
- [ ] Create 4.22 Release in Project Administration
- [ ] Create 4.22 Releng Issue
- [ ] Move 4.21 open issues to 4.22
@speckyspooky @wimjongman
I updated Orbit to pick up the latest openpdf:
- https://repo.maven.apache.org/maven2/com/github/librepdf/openpdf/2.2.0/
Apparently this was published the same day:
- https://repo.maven.apache.org/maven2/com/github/librepdf/openpdf/2.1.0/
Both of them require Java 21.
I did a test build to see if the new version works well:
https://ci.eclipse.org/birt/job/build/job/master/365/
But of course that fails because of the Java 21 requirement:
java.lang.UnsupportedClassVersionError: com/lowagie/text/pdf/BaseFont has been compiled by a more recent version of the Java Runtime (class file version 65.0), this version of the Java Runtime only recognizes class file versions up to 61.0
The failing test specifies:
Bundle-RequiredExecutionEnvironment: JavaSE-11
Minimally this needs to change (and probably for every test) to be JavaSE-21.
So technically BIRT could/can run with an older version of openpdf, i.e., 2.0.5, but the runtime for BIRT 21 will ship with openpdf 2.2.0 so overall the runtime will only work on Java 21.
I'm not sure the best path forward here. I don't think we can simply stay in the past with an older version of openpdf.
Changing every Bundle-RequiredExecutionEnvironment to JavaSE-21 is simplest and most consistent path forward.
Please advise.
I would prever to update to the Java 21 LTS-version.
Official support of Java 17 LTS is limited till 2026 so we would be good prepared with Java 21. By the way on September 2025 Java 25 LTS-version is planned to be published.
BIRT once "fell behind" in Java compatibility which caused it to depend on older versions of other libraries, which in turn made it hard to consume by others.
I would strongly recommend to update to JavaSE-21. Projects that are dependent on older versions of Java can use older versions of BIRT as well.
Very good 👍. I appreciate the feedback.
I have enhanced the Updater to update the BREE and related settings but I ran into two problems testing the build locally with everything updated to Java 21. I ran out of time ironing out the last problem. Hopefully I’ll have a PR ready by tomorrow.
Sounds very good. Let's do it 👍
Changing every Bundle-RequiredExecutionEnvironment to JavaSE-21 is simplest and most consistent path forward.
+1 Thanks, Ed!
Opening ceremony completed! Thank you, BIRT team.
@wimjongman @speckyspooky
FYI, I have locked down the target platform to released/permanent update sites and have produced a milestone build:
- https://download.eclipse.org/birt/updates/milestone/S202509041117
I've improved the documentation for this job and tested it today:
- https://ci.eclipse.org/birt/job/maven-publish/
So I think we are also on track to produce another Maven release right after we produce a release update site.
SimRel releases on September 10th, so if folks could verify the integrity of the current milestone build then we are on track to release on that schedule.
I started with testing - BIRT 4.21 OSGi milestone & Tomcat 9.109
- the base core is running
But I figured out 2 bugs: 1st bug: HTML-generation which appears if the genration is started with "run" instead of "viewer" or "preview"
- I will prove a PR for that
2nd bug: generation of the demo report with charts directly like "run" method and "pdf" cause a batik-error with tomcat. All other output formats works fine. The execution with jetty works without this exception. Currently I cannot say if it is a new bug or an old bug. I need more testing of it.
Screen of bug 1
Log-file of bug 2
Bug 1: will be fixed with PR #2270
Bug 2: issue opened #2271, the topic is only given at BIRT OSGi 4.21, it is workin with BIRT 4.21 and with BIRT OSGI 4.20 - Currently I'm not able to reproduce the problem with jetty.
The release is published
https://download.eclipse.org/birt/updates/release/4.21.0
Also the maven release is published:
@speckyspooky @hvbtup @merks Thank you for all the work this release.