Review for Source Package: openjdk-25

[Summary]
The packages to be promoted provide the default JVM implementation and the 
associated utilities.
The source package is in good shape. 

There a few places that it diverges from the MIR rules but they are
justified.

- A failure in tests does not make the build fail. The package offers a 
comprehensive test suite.
The explanation provided in the bug description justifies not making the build 
fail.
"LP infrastructure, occasional buggy tests. The maintainers review the build 
logs before marking the package ready for
the security release."

- debian/rules is rather complex. However given it compiles all the java 
environment and is backported to older LTS
releases, it is expected to be complex.

- Use of sudo and LD_LIBRARY_PATH in the source

- It includes vendored code however this is not clear to me how it gets
updated.

Due to the nature of the package I believe a security review is due.

MIR team ACK under the constraint to resolve the below listed
required TODOs and as much as possible having a look at the
recommended TODOs.

This does need a security review, so I'll assign ubuntu-security

List of specific binary packages to be promoted to main: 
openjdk-25-jdk-headless, openjdk-25-jdk, openjdk-25-jre-headless, 
openjdk-25-jre-zero, openjdk-25-jre
Specific binary packages built, but NOT to be promoted to main: 
openjdk-25-jvmci-jdk, openjdk-25-source, openjdk-25-testsupport, 
openjdk-25-dbg, openjdk-25-demo, openjdk-25-doc

Required TODOs:
1. I noticed that in debian and ubuntu the version is 25.0.2+10 where the 
latest upstream for openjdk-25 is tagged with jdk-25+36 which iiuc is the same 
with jdk-25-ga. I'm far from an expert in how openjdk is versioned and 
developed but could you please provide some clarification/explanation that 
having 25+10 is ok ?  

Recommended TODOs:
2. Consider cleaning up the rules rules for the older releases. 

- The package should get a team bug subscriber before being promoted

[Rationale, Duplication and Ownership]
There is no other package in main providing the same functionality.
Foundations team is committed to own long term maintenance of this package.
The rationale given in the report seems valid and useful for Ubuntu

[Dependencies]
OK:
- no other runtime Dependencies to MIR due to this
  check-mir reports a few runtime dependencies but they are packages either to 
be promoted with 
  MIR or they are dependencies of packages to remain in universe. 
libjs-jquery-ui and 
  libjs-jquery-ui-theme-base dependencies of openjdk-25-doc, and xfwm4, xvfb, 
jtreg8, 
  libtestng7-java dependencies of openjdk-25-testsupport
- no other build-time Dependencies with active code in the final binaries
  to MIR due to this
- No dependencies in main that are only superficially tested requiring
  more tests now.

Problems:
- -dev/-debug/-doc packages that need exclusion

[Embedded sources and static linking]
OK:
- no static linking
- does not have unexpected Built-Using entries
- Includes vendored code, the package has documented how to refresh this
  code at debian/README.source
- not a go package, no extra constraints to consider in that regard
- not a rust package, no extra constraints to consider in that regard

Problems: None

[Security]
OK:
- history of CVEs does not look concerning
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not expose any external endpoint (port/socket/... or similar)
- does not process arbitrary web content
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
- does not deal with security attestation (secure boot, tpm, signatures)

Problems:
- does deal with cryptography (en-/decryption, certificates,
  signing, ...)
- this makes appropriate (for its exposure) use of established risk
  mitigation features (dropping permissions, using temporary environments,
  restricted users/groups, seccomp, systemd isolation features,
  apparmor, ...)
- does not parse data formats (files [images, video, audio,
  xml, json, asn.1], network packets, structures, ...) from
  an untrusted source.

[Common blockers]
OK:
- does not FTBFS currently
- does have a test suite that runs at build time
- does have a non-trivial test suite that runs as autopkgtest
- This does not need special HW for build or test
- no new python2 dependency

Problems:
- build does not fail when test suite fails

[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking not applicable for this kind of code because it
  the shared objects are only used internally and no headers made
  available.
- debian/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- Debian/Ubuntu update history is good
- the current release is packaged
- promoting this does not seem to cause issues for MOTUs that so far
  maintained the package
- no massive Lintian warnings
- It is not on the lto-disabled list

Problems:
- debian/rules is rather complicated

[Upstream red flags]
OK:
- no Errors/warnings during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of user 'nobody' outside of tests
- no use of setuid / setgid
- no important open bugs (crashers, etc) in Debian or Ubuntu
- no dependency on webkit, qtwebkit or libseed
- part of the UI, desktop file is ok
- no translation present, but none needed for this case

TODO-A: Problems:
- use of sudo and LD_LIBRARY_PATH

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2138526

Title:
  [MIR] openjdk-25 (non-blocking)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openjdk-25/+bug/2138526/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to