= 6.4 Migration Guide :toc: :toclevels: 4 :docsBase: https://docs.jboss.org/hibernate/orm :versionDocBase: {docsBase}/6.4 :userGuideBase: {versionDocBase}/userguide/html_single/Hibernate_User_Guide.html :javadocsBase: {versionDocBase}/javadocs This guide discusses migration to Hibernate ORM version 6.4. For migration from earlier versions, see any other pertinent migration guides as well. * link:{docsBase}/6.3/migration-guide/migration-guide.html[6.3 Migration guide] * link:{docsBase}/6.2/migration-guide/migration-guide.html[6.2 Migration guide] * link:{docsBase}/6.1/migration-guide/migration-guide.html[6.1 Migration guide] * link:{docsBase}/6.0/migration-guide/migration-guide.html[6.0 Migration guide] [[soft-delete]] == Soft Delete 6.4 adds support for soft deletes, using the new `@SoftDelete` annotation. See the link:{userGuideBase}#soft-delete[User Guide] for details. In previous versions, support for soft-deletes was somewhat implementable using a combination of any or all of event-listeners, filters, `@Where`, etc. Applications using such implementations are encouraged to switch. [[custom-tenant-identifier-type]] == Custom tenant identifier type The `CurrentTenantIdentifierResolver` and `MultiTenantConnectionProvider` SPIs were generified to support custom tenant identifier types. Both types now accept a type parameter that represents the tenant identifier type. Methods that were accepting or returning a tenant identifier value of type `String` were changed to use the type variable. Applications can migrate by specifying the type parameter `` when extending `CurrentTenantIdentifierResolver` or one of the `MultiTenantConnectionProvider` subtypes. [[IdGeneratorStrategyInterpreter]] == Removed IdGeneratorStrategyInterpreter `IdGeneratorStrategyInterpreter` has been deprecated since 6.0 and has been removed to simplify id generator internals.