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

Add API Baseline checking to the build #265

Merged
merged 14 commits into from
May 30, 2024

Conversation

ghentschke
Copy link
Contributor

@ghentschke ghentschke commented Feb 20, 2024

fixes #212

@@ -180,6 +180,14 @@
</plugins>
</build>
</profile>
<profile>
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think there's something missing here.

Copy link
Member

Choose a reason for hiding this comment

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

- add plugin definition for compare-attached-artifacts-with-release
which defines the goal compare-version-with-baselines

fixes eclipse-cdt#212
@akurtakov
Copy link

You would have to update Maven version at

maven-version: 3.8.7
. I also strongly recommend going for Tycho 4.0.6 as it contains a big number of fixes since 4.0.1

@ghentschke
Copy link
Contributor Author

ghentschke commented Feb 21, 2024

@jonahgraham I would like to skip this API baseline check to the next release, which should be 2.0.0, because the API has changed since last v1.0.0 release. I want to check and refactor what must be API. There is a lot of stuff which can be made internal.

@jonahgraham
Copy link
Member

@jonahgraham I would like to skip this API baseline check to the next release, which should be 2.0.0, because the API has changed since last v1.0.0 release. I want to check and refactor what must be API. There is a lot of stuff which can be made internal.

Yes - that is a good idea. There doesn't need to be API stability yet and I don't think there needs to be such expectations yet.

jonahgraham added a commit that referenced this pull request Feb 21, 2024
In light of conversation in #265 (comment) lets make it explicit that there is no API guarantee yet.
jonahgraham added a commit that referenced this pull request Feb 21, 2024
In light of conversation in #265 (comment) lets make it explicit that there is no API guarantee yet.
pom.xml Outdated
@@ -1,5 +1,5 @@
<!--
Copyright (c) 2023 Contributors to the Eclipse Foundation.
Copyright (c) 2024 Contributors to the Eclipse Foundation.
Copy link
Member

Choose a reason for hiding this comment

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

2024

2023, 2024

@ghentschke
Copy link
Contributor Author

Okay, the change has been build now. @jonahgraham or @ruspl-afed: I don't know why the API check claims missing @since tags only on some public visible classes in the org.eclipse.cdt.lsp bundle. I had expected that all classes in the visible packages should have been tagged.

@ruspl-afed
Copy link
Member

why the API check claims missing @since tags only on some public visible classes in the org.eclipse.cdt.lsp bundle. I had expected that all classes in the visible packages should have been tagged.

In theory it should request new tag for public types/members added after baseline.

@ghentschke
Copy link
Contributor Author

Which baseline is used or should be used for cdt-lsp?

Copy link
Member

@ruspl-afed ruspl-afed left a comment

Choose a reason for hiding this comment

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

LGTM

I know how unpleasant and hopeless a duel with releng can be, but you managed to win @ghentschke!

@ruspl-afed
Copy link
Member

Which baseline is used or should be used for cdt-lsp?

I believe that the CDT LSP baseline should point to the previous release of CDT LSP (regardless to the version contributed to SimRel). And this is more or less what we have now with https://download.eclipse.org/tools/cdt/releases/cdt-lsp-latest However, it would be better to mention the exact release instead of "the latest".

Also, there is a slippery spot in pom that defines baseline repo through SimRel aggregated repo, https://download.eclipse.org/releases/2024-03/
It would be more precise to use the CDT LSP .target from the previous release of CDT LSP.

But what you already did is the good basement for the further improvements.

@ghentschke ghentschke merged commit 1828492 into eclipse-cdt:master May 30, 2024
3 checks passed
@ghentschke ghentschke deleted the add-api-baseline-check branch May 30, 2024 07:39
ghentschke added a commit to ghentschke/eclipse-cdt-lsp that referenced this pull request May 30, 2024
ghentschke added a commit that referenced this pull request May 30, 2024
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.

Create API baseline and compare and replace baseline
4 participants