JPA 3.0 is coming as part of Jakarta EE 9
The main change is a full package rename: all "javax.persistence" packages (including public API and annotations) have been renamed to "jakarta.persistence"; this has obvious dramatic changes on backwards compatibility.
On top of package names, we're also expected to change the keys of those configuration properties which used to start with "jakarta.persistence".
More details can be found here:
The main changing PR:
The JPA project's new home can be found at
An interesting aspect is that no other change whatsoever is allowed; the idea here is that while this is a breaking change, it should be straight forward to upgrade by simply running a replacement script.
To keep our own work simpler, rather than working on a one-off big patch I'll work on testing a replacement script which we could run multiple times at minimal risk; this should make it simpler to forward-port further patches from before the big rename.