| // Configures Revapi (https://revapi.org/getting-started.html) to check API compatibility between |
| // successive driver versions. |
| { |
| "revapi": { |
| "java": { |
| "filter": { |
| "packages": { |
| "regex": true, |
| "exclude": [ |
| "com\\.datastax\\.oss\\.protocol\\.internal(\\..+)?", |
| "com\\.datastax\\.(oss|dse)\\.driver\\.internal(\\..+)?", |
| "com\\.datastax\\.oss\\.driver\\.shaded(\\..+)?", |
| "com\\.datastax\\.oss\\.simulacron(\\..+)?", |
| // Don't re-check sibling modules that this module depends on |
| "com\\.datastax\\.(oss|dse)\\.driver\\.api\\.core(\\..+)?", |
| "com\\.datastax\\.(oss|dse)\\.driver\\.api\\.querybuilder(\\..+)?" |
| ] |
| } |
| } |
| }, |
| "ignore": [ |
| { |
| "regex": true, |
| "code": "java.annotation.attributeValueChanged", |
| "old": "@interface com\.datastax\.oss\.driver\.api\.mapper\.annotations\..*", |
| "annotationType": "java.lang.annotation.Retention", |
| "attribute": "value", |
| "oldValue": "java.lang.annotation.RetentionPolicy.CLASS", |
| "newValue": "java.lang.annotation.RetentionPolicy.RUNTIME", |
| "justification": "JAVA-2369: Change mapper annotations retention to runtime" |
| }, |
| { |
| "code": "java.annotation.added", |
| "old": "@interface com.datastax.oss.driver.api.mapper.annotations.Computed", |
| "new": "@interface com.datastax.oss.driver.api.mapper.annotations.Computed", |
| "annotation": "@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME)", |
| "justification": "Oversight, should have been annotated this way from the start" |
| }, |
| { |
| "code": "java.annotation.added", |
| "old": "@interface com.datastax.oss.driver.api.mapper.annotations.Computed", |
| "new": "@interface com.datastax.oss.driver.api.mapper.annotations.Computed", |
| "annotation": "@java.lang.annotation.Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD})", |
| "justification": "Oversight, should have been annotated this way from the start" |
| }, |
| { |
| "code": "java.annotation.added", |
| "old": "@interface com.datastax.oss.driver.api.mapper.annotations.TransientProperties", |
| "new": "@interface com.datastax.oss.driver.api.mapper.annotations.TransientProperties", |
| "annotation": "@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME)", |
| "justification": "Oversight, should have been annotated this way from the start" |
| }, |
| { |
| "code": "java.annotation.added", |
| "old": "@interface com.datastax.oss.driver.api.mapper.annotations.TransientProperties", |
| "new": "@interface com.datastax.oss.driver.api.mapper.annotations.TransientProperties", |
| "annotation": "@java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE})", |
| "justification": "Oversight, should have been annotated this way from the start" |
| }, |
| { |
| "code": "java.method.addedToInterface", |
| "new": "method java.lang.String com.datastax.oss.driver.api.mapper.MapperContext::getExecutionProfileName()", |
| "justification": "JAVA-2633: Add execution profile argument to DAO factory method (accept API break -- it's unlikely that MapperContext will be implemented outside of the driver)" |
| |
| }, |
| { |
| "code": "java.method.addedToInterface", |
| "new": "method com.datastax.oss.driver.api.core.config.DriverExecutionProfile com.datastax.oss.driver.api.mapper.MapperContext::getExecutionProfile()", |
| "justification": "JAVA-2633: Add execution profile argument to DAO factory method (accept API break -- it's unlikely that MapperContext will be implemented outside of the driver)" |
| }, |
| { |
| "code": "java.method.addedToInterface", |
| "new": "method com.datastax.oss.driver.api.mapper.result.MapperResultProducer com.datastax.oss.driver.api.mapper.MapperContext::getResultProducer(com.datastax.oss.driver.api.core.type.reflect.GenericType<?>)", |
| "justification": "JAVA-2792: Allow custom results in the mapper (accept API break -- it's unlikely that MapperContext will be implemented outside of the driver)" |
| } |
| ] |
| } |
| } |