Skip to content

Commit 0df59ac

Browse files
committed
JAVA-1544: Check API compatibility with Revapi
1 parent c103fc7 commit 0df59ac

8 files changed

Lines changed: 99 additions & 0 deletions

File tree

changelog/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
### 4.0.0-beta2 (in progress)
66

7+
- [improvement] JAVA-1544: Check API compatibility with Revapi
78

89
### 4.0.0-beta1
910

core-shaded/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,13 @@
121121
</execution>
122122
</executions>
123123
</plugin>
124+
<plugin>
125+
<groupId>org.revapi</groupId>
126+
<artifactId>revapi-maven-plugin</artifactId>
127+
<configuration>
128+
<skip>true</skip>
129+
</configuration>
130+
</plugin>
124131
</plugins>
125132
</build>
126133
</project>

core/revapi.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Configures Revapi (https://revapi.org/getting-started.html) to check API compatibility between
2+
// successive driver versions.
3+
{
4+
"revapi": {
5+
"java": {
6+
"filter": {
7+
"packages": {
8+
"regex": true,
9+
"include": [
10+
"com\\.datastax\\.oss\\.driver\\.api\\..*"
11+
]
12+
}
13+
}
14+
}
15+
}
16+
}

distribution/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,13 @@
9090
<skip>true</skip>
9191
</configuration>
9292
</plugin>
93+
<plugin>
94+
<groupId>org.revapi</groupId>
95+
<artifactId>revapi-maven-plugin</artifactId>
96+
<configuration>
97+
<skip>true</skip>
98+
</configuration>
99+
</plugin>
93100
</plugins>
94101
</build>
95102

integration-tests/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,13 @@
216216
</execution>
217217
</executions>
218218
</plugin>
219+
<plugin>
220+
<groupId>org.revapi</groupId>
221+
<artifactId>revapi-maven-plugin</artifactId>
222+
<configuration>
223+
<skip>true</skip>
224+
</configuration>
225+
</plugin>
219226
</plugins>
220227
</build>
221228
</project>

pom.xml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,18 @@
289289
<artifactId>maven-bundle-plugin</artifactId>
290290
<version>3.5.0</version>
291291
</plugin>
292+
<plugin>
293+
<groupId>org.revapi</groupId>
294+
<artifactId>revapi-maven-plugin</artifactId>
295+
<version>0.10.4</version>
296+
<dependencies>
297+
<dependency>
298+
<groupId>org.revapi</groupId>
299+
<artifactId>revapi-java</artifactId>
300+
<version>0.18.0</version>
301+
</dependency>
302+
</dependencies>
303+
</plugin>
292304
</plugins>
293305
</pluginManagement>
294306
<plugins>
@@ -542,6 +554,23 @@ limitations under the License.]]>
542554
</supportedProjectTypes>
543555
</configuration>
544556
</plugin>
557+
<plugin>
558+
<groupId>org.revapi</groupId>
559+
<artifactId>revapi-maven-plugin</artifactId>
560+
<executions>
561+
<execution>
562+
<goals>
563+
<goal>check</goal>
564+
</goals>
565+
<configuration>
566+
<analysisConfigurationFiles>
567+
<!-- Present at the root of each module that doesn't skip this goal -->
568+
<analysisConfigurationFile>revapi.json</analysisConfigurationFile>
569+
</analysisConfigurationFiles>
570+
</configuration>
571+
</execution>
572+
</executions>
573+
</plugin>
545574
</plugins>
546575
</build>
547576
<profiles>

query-builder/revapi.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Configures Revapi (https://revapi.org/getting-started.html) to check API compatibility between
2+
// successive driver versions.
3+
{
4+
"revapi": {
5+
"java": {
6+
"filter": {
7+
"packages": {
8+
"regex": true,
9+
"include": [
10+
"com\\.datastax\\.oss\\.driver\\.api\\..*"
11+
]
12+
}
13+
}
14+
}
15+
}
16+
}

test-infra/revapi.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Configures Revapi (https://revapi.org/getting-started.html) to check API compatibility between
2+
// successive driver versions.
3+
{
4+
"revapi": {
5+
"java": {
6+
"filter": {
7+
"packages": {
8+
"regex": true,
9+
"include": [
10+
"com\\.datastax\\.oss\\.driver\\.api\\..*"
11+
]
12+
}
13+
}
14+
}
15+
}
16+
}

0 commit comments

Comments
 (0)