payara / Payara

Payara Server is an open source middleware platform that supports reliable and secure deployments of Java EE (Jakarta EE) and MicroProfile applications in any environment: on premise, in the cloud or hybrid.
http://www.payara.fish
Other
873 stars 300 forks source link

FISH-8672 FISH-8857 Keep Semantic Versioning Happy #6777

Closed Pandrex247 closed 2 weeks ago

Pandrex247 commented 3 weeks ago

Description

https://github.com/payara/Payara/pull/6677 introduced breaking changes to Core classes, which in turn broke Enterprise. This reinstates semantic versioning and "unbreaks" the changes.

Important Info

Blockers

None

Testing

New tests

None

Testing Performed

Built this branch and started the domain - everything bon. Built Payara Enterprise - compiles correctly.

I haven't tested for leaks (yet™), but I don't believe I've reintroduced usage of the non-WeakReference or Atomic variables anywhere.

Testing Environment

Windows 11, Zulu 11.0.23

Documentation

N/A

Notes for Reviewers

I am aware these changes are ugly and fragile. It is however the state we end up in when we have a split codebase and enforce semantic versioning. We're in a bit of a pickle because the Core major versions are somewhat tied to Jakarta APIs - 7.0.0.Alpha1 has already been released for usage with Payara 7.

Naming is also hard - if you can think of better names for the "new" variables & classes please suggest them!