The Hibernate team is pleased to announce the release of Hibernate Core 4.0.0.Final. A lot of time and effort from many people went into this release, so thank you everyone involved!
A lot of things; too many to list here. But here is a list of the major improvements done in 4.0:
- Initial multi-tenancy support. See http://in.relation.to/Bloggers/HibernateAndMultitenancyWebinar and http://in.relation.to/Bloggers/MultitenancyInHibernate for more information.
- Introduction of ServiceRegistry. This is a major change in how Hibernate builds and manages
services. See the information in the Hibernate Developer Guide.
- Clean up of Session opening from SessionFactory
- Improved integration via org.hibernate.integrator.spi.Integrator and auto discovery
- Improved logging with i18n support and message codes
- Initial work on more clear split between API, SPI and implementation classes. If you import a class contained in an internal package, you know that this code is not guaranteed to work between releases.
- Clean up of deprecated methods, classes, etc
Also, be sure to check out the Migration Guide.
The documentation is caught in a state of flux. The long term story is that we are trying to migrate to use DocBook v5.1 to leverage its new concept of Topics and Assemblies. Additionally we are trying to split up the content into multiple documents rather than the single document we used to produce. Plus the fact that DocBook 5.1 is itself still beta. All that is to say that the documentation is still in a working state.
- Hibernate Getting Started Guide is done. It is a series of quick starts and tutorials to help new users get up and running.
- Hibernate Reference Documentation is the old documentation. It has been kept somewhat up to date during 4.0 development, so for the time being that is the best resource for most topics.
- Hibernate Developer Guide is the guide for application developers using Hibernate. It is largely incomplete, except that it has the only good ServiceRegistry coverage.
- Hibernate EntityManager User Guide will eventually get folded into Hibernate Developer Guide (in fact some of it has been folded into Hibernate Developer Guide and Hibernate Reference Documentation already).
This is a mess, I know and I apologize.
We had originally planned a major redesign to the Hibernate metamodel (org.hibernate.mapping) code in this 4.0 release, however we decided to delay that to another release for a number of reasons. We recently agreed that those changes would be the bulk of our 5.0 release. In the interim we will have a 4.1 release as well with 2 main changes:
- HHH-2879 / HHH-2896 - which deal with providing an actual API for performing natural key lookups.
- HHH-5472 - which is a big improvement in cascade performance
- We will also get the docs straightened out for 4.1. Partially this is so we wont have to break links based on the 4.0 directory name. But I will get them moved up there ASAP, even before we do the 4.1 release if thats how it works out.
We simultaneously released 3.6.9, which is the final 3.6 (in fact, final 3.x) release.