Hi, Related to the discussion this afternoon, this is the list of API changes in JPA 2.2:
* all repeatable annotations marked with @Repeatable * new annotations javax.persistence.SequenceGenerators and TableGenerators (containing annotation types for repeatable annotations SequenceGenerator and TableGenerator) * new methods javax.persistence.Query#getResultStream() and TypedQuery#getResultStream() You can find the full diff below. Cheers, --Gunnar ===== Comparing source compatibility of javax.persistence-2.2.0.jar against javax.persistence-2.1.1.jar WARNING: You are using the option '--ignore-missing-classes', i.e. superclasses and interfaces that could not be found on the classpath are ignored. Hence changes caused by these superclasses and interfaces are not reflected in the output. === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.AssociationOverride (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.AssociationOverrides (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.AttributeOverride (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.AttributeOverrides (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.Convert (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.Converts (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.JoinColumn (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.JoinColumns (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.MapKeyJoinColumn (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.MapKeyJoinColumns (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.NamedEntityGraph (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.NamedEntityGraphs (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.NamedNativeQuery (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.NamedNativeQueries (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.NamedQuery (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.NamedQueries (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.NamedStoredProcedureQuery (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.NamedStoredProcedureQueries (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.PersistenceContext (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.PersistenceContexts (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.PersistenceUnit (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.PersistenceUnits (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.PrimaryKeyJoinColumn (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.PrimaryKeyJoinColumns (+) **** MODIFIED INTERFACE: PUBLIC ABSTRACT javax.persistence.Query (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++* NEW METHOD: PUBLIC(+) java.util.stream.Stream getResultStream() === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.SecondaryTable (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.SecondaryTables (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.SequenceGenerator (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.SequenceGenerators (+) +++ NEW ANNOTATION: PUBLIC(+) ABSTRACT(+) javax.persistence.SequenceGenerators (not serializable) +++ CLASS FILE FORMAT VERSION: 52.0 <- -1.-1 +++ NEW INTERFACE: java.lang.annotation.Annotation +++ NEW SUPERCLASS: java.lang.Object +++ NEW METHOD: PUBLIC(+) ABSTRACT(+) javax.persistence.SequenceGenerator[] value() +++ NEW ANNOTATION: java.lang.annotation.Target +++ NEW ELEMENT: value=java.lang.annotation.ElementType.TYPE,java.lang.annotation.ElementType.METHOD,java.lang.annotation.ElementType.FIELD (+) +++ NEW ANNOTATION: java.lang.annotation.Retention +++ NEW ELEMENT: value=java.lang.annotation.RetentionPolicy.RUNTIME (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.SqlResultSetMapping (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.SqlResultSetMappings (+) === UNCHANGED ANNOTATION: PUBLIC ABSTRACT javax.persistence.TableGenerator (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 +++ NEW ANNOTATION: java.lang.annotation.Repeatable +++ NEW ELEMENT: value=javax.persistence.TableGenerators (+) +++ NEW ANNOTATION: PUBLIC(+) ABSTRACT(+) javax.persistence.TableGenerators (not serializable) +++ CLASS FILE FORMAT VERSION: 52.0 <- -1.-1 +++ NEW INTERFACE: java.lang.annotation.Annotation +++ NEW SUPERCLASS: java.lang.Object +++ NEW METHOD: PUBLIC(+) ABSTRACT(+) javax.persistence.TableGenerator[] value() +++ NEW ANNOTATION: java.lang.annotation.Target +++ NEW ELEMENT: value=java.lang.annotation.ElementType.TYPE,java.lang.annotation.ElementType.METHOD,java.lang.annotation.ElementType.FIELD (+) +++ NEW ANNOTATION: java.lang.annotation.Retention +++ NEW ELEMENT: value=java.lang.annotation.RetentionPolicy.RUNTIME (+) **** MODIFIED INTERFACE: PUBLIC ABSTRACT javax.persistence.TypedQuery (not serializable) ***! CLASS FILE FORMAT VERSION: 52.0 <- 50.0 ===* UNCHANGED INTERFACE: javax.persistence.Query +++* NEW METHOD: PUBLIC(+) java.util.stream.Stream getResultStream() _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev