It's about time for Jena 5.0.0.
The most significant application and user visible changes include:
- require java17
- code cleaup of deprecated methods and classes
- Remove JSON-LD 1.0 support
- Default Turtle output to use PREFIX
- Replace ARP with RRX (RDF/XML parsing)
- Rename artifact jena-tdb as jena-tdb1.
A question is whether to have 5.0.0-RC1 or 5.0.0.
If it's 5.0.0-RC1, then my suggestion is to try for a one month RC then
release Jena 5.0.0.
I prefer having an RC cycle.
From my POV the current code in main is the same readiness as any other
release. An RC is for feedback on the major version level changes.
Feedback doesn't always arrive. Waiting a full 3 month cycle is too long.
Do PMC member have the bandwidth to VOTE on 2 release is this shortened
time?
Andy
Issues since Jena 4.10.0:
https://s.apache.org/jena-5.0.0-issues
which includes the ones specifically related to Jena5:
https://github.com/apache/jena/issues?q=label%3Ajena5
== Current state
1/
There is a test failure on Windows around determining for a base URI
involving files. This needs investigating and correcting.
2/
We have a problem with the UI part of the build on Jenkins.
The build servers are Ubtuntu 18.04 which has an old version of glibc
and this cause node 18+ to fail. Only node16 is available.
We have 3 dependabot upgrades pending because of this.
There is work on a jenkins pipeline
https://ci-builds.apache.org/job/Jena/job/Jena-pipeline/
[INFO] EACCES: permission denied, mkdir '/.cache'
(it's running in a container - HOME is '/' and the default Cyopress
cache is "~/.cache").
The build does work using the Github actions aside from (1)
((
PS - Update - managed to a build of main to pass!
))
3/
Outstanding - LATERAL
The implementation of LATERAL is "weak", to put it politely, as it makes
assumptions about how query execution works and fails in a recently
identified case. I have a reworked implementation and I'm currently
writing test for it.
It would be good to include it but it's not essential.
4/
Outstanding - tdb commands
Rework the TDB command line tools to favour TDB2 when creating a new
database, and to work on either TDB1 or TDB2 by inspecting the database
directory.