Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Detect Breaking Changes check does not fail on new method added to an @PublicApi interface #16175

Closed
sachinpkale opened this issue Oct 3, 2024 · 2 comments · Fixed by #16585
Assignees
Labels
bug Something isn't working Build Build Tasks/Gradle Plugin, groovy scripts, build tools, Javadoc enforcement.

Comments

@sachinpkale
Copy link
Member

sachinpkale commented Oct 3, 2024

Describe the bug

Related component

Build

To Reproduce

  • Add a method to any public interface.
    • It is possible that the bug exists only if the new method is overloaded method of existing method.
  • Raise PR against 2.x branch.
  • Detect Breaking Changes will not fail.

Expected behavior

  • For any new method introduced in a public interface, Detect Breaking Changes should fail unless a default implementation is provided.
@sachinpkale sachinpkale added bug Something isn't working untriaged labels Oct 3, 2024
@github-actions github-actions bot added the Build Build Tasks/Gradle Plugin, groovy scripts, build tools, Javadoc enforcement. label Oct 3, 2024
@reta reta self-assigned this Oct 3, 2024
@reta
Copy link
Collaborator

reta commented Oct 3, 2024

Thanks @sachinpkale for bringing it up, I believe the API check does binary compatible changes at the moment: adding a new method to the interface is binary compatible change. We may need to make the check more strict by enforcing source compatibility.

@dblock dblock removed the untriaged label Oct 21, 2024
@dblock
Copy link
Member

dblock commented Oct 21, 2024

[Catch All Triage - 1, 2]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Build Build Tasks/Gradle Plugin, groovy scripts, build tools, Javadoc enforcement.
Projects
None yet
3 participants