Skip to content

[TH2-4937] add api compatibility compliance check in workflows#245

Open
ghost wants to merge 1 commit intodev-version-5from
api-compliance-check
Open

[TH2-4937] add api compatibility compliance check in workflows#245
ghost wants to merge 1 commit intodev-version-5from
api-compliance-check

Conversation

@ghost
Copy link

@ghost ghost commented Jun 30, 2023

No description provided.

Copy link
Contributor

@OptimumCode OptimumCode left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure but I think for release workflows the build job should depend on the result of the compatibility check.

Also, as I can see we already have some errors for compatibility check. Probably, some of those errors should be ignored (because it is not a public API). We need to check if we can configure the verification to ignore those classes

Comment on lines +15 to +21
targetJarUrl: https://s01.oss.sonatype.org/content/repositories/releases/com/exactpro/th2/cradle-core/5.0.2-dev/cradle-core-5.0.2-dev.jar
api-compatibility-check-cassandra:
uses: th2-net/.github/.github/workflows/japi-compliance-checker.yml@main
with:
projectPath: ./cradle-cassandra
continueOnError: true
targetJarUrl: https://s01.oss.sonatype.org/content/repositories/releases/com/exactpro/th2/cradle-cassandra/5.0.2-dev/cradle-cassandra-5.0.2-dev.jar
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should use the latest non-dev release here

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to check if we can configure the verification to ignore those classes -> we can just remove cradle-cassandra check from workflow and only check cradle core API. I included both of them just to show how it works.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we use latest non-dev release we probably will have issues in public API, as I remember we did have some breaking changes. That's why I decided to use lates compatible version, so we can control compatibility starting from it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant