[hibernate-dev] WildFly 14 requirements for Hibernate libraries

Sanne Grinovero sanne at hibernate.org
Tue May 22 07:42:42 EDT 2018


Hi all,

good news first: WildFly 13 will include our latest Hibernate
libraries, in addition to the existing ones.

When booting WildFly 13 with the "-Dee8.preview.mode=true" property
set, it will use:
 - Hibernate ORM 5.3
 - Hibernate Search 5.10
 - Hibernate Validator 6.0

(Validator 6 was available also in WildFly 12)

By default, for users not setting this preview mode, it will use the
older versions which were included in previous WildFly releases -
providing JPA 2.1 and EE7 compatibility only.

We're getting some requirements for WildFly 14 though, which needs to
be ready within 3 months.

In particular:

 A] EE8 will be the only mode

So while today users have the ability to opt-in or ORM 5.3 and
companions, this will be enforced as the older libraries are removed.

Not much we need to do, other than further ensuring that people will
not have trouble. It's also an opportunity to get rid of unnecessary
dependencies.

 B] we need to finish some backward compatibility work.

We did quite some work to ensure ORM 5.3 would be great at backward
compatibility but we left some pending work, e.g. the Compatibility
Transformer that David proposed is not available yet and it needs some
more details from us, such as a definitive list of the transformations
it will need to perform.

Also, the QE team didn't have a chance to review the work in detail
yet; I'm confident we did most of the work already but they might
raise the bar further or just have some questions, we will need to
work with them. I also hope we'll get more familiar with them and
their processes as clearly this isn't a one-off, we can all benefit
from working more closely with them for all future releases.

 C] WildFly 14 is expected to work on both JDK8 and JDK11

Most work to support new JDKs has been done but we need to finish the
last details.
 - CI jobs still not entirely working on JDK11
 - Javassist might stay as an option but we need to make sure no
feature relies on it, as I don't think Javassist will be supportable
on JDK11
 - consequentially, the Byte Buddy based alternative needs to be great
(some issues have been raised)
 - some code to work on JDK11 will need to invoke APIs which were not
available in JDK8: are we going to release "multi-release jars"?
 - resume the work on modernizing the XML parsers?

In particular, Byte Buddy on JDK11 will need access to the classloader
via VarHandles to enhance entities; I didn't investigate this
thoroughly yet but I believe I won't be able to give these references
to BB while relying exclusively on JDK8 APIs.

If we manage to improve anything by the 28th we can still include
micro-fixes in WildFly 13; in particular, if you are aware of any
blocker let's fix them now so that people can give us more detailed
feedback by actually using the EE8 preview mode.

(This includes possibly planning for some micro releases within a week)

Thanks,
Sanne


More information about the hibernate-dev mailing list