Bug 551044 - Run PDE API analysis in Jenkins builds
Summary: Run PDE API analysis in Jenkins builds
Status: NEW
Alias: None
Product: EGit
Classification: Technology
Component: Releng (show other bugs)
Version: 5.6   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-13 06:58 EDT by Thomas Wolf CLA
Modified: 2019-09-16 17:17 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Wolf CLA 2019-09-13 06:58:55 EDT
Compare https://git.eclipse.org/r/#/c/142665/7/eclipse-platform-parent/pom.xml .

Seems to be possible, and would catch API problems not only in Eclipse but in any build.
Comment 1 Michael Keppler CLA 2019-09-15 02:47:43 EDT
But wouldn't that require that we actually really do fix or whitelist API errors the moment they occur? Maybe I'm doing something wrong locally, but I basically always have API errors in my egit/jgit workspace. The only time that does not happen is a short period of some days after a mass cleanup of them by Matthias.

Or does that only happen for me? E.g. right now I have 61 API issues, more than half of them are errors. These are the first 5 of them (select group by > type to reproduce):

Invalid @since 5.4 tag on isEqual(AnyLongObjectId, AnyLongObjectId); expecting @since 5.6
Invalid @since 5.4 tag on isEqual(AnyObjectId, AnyObjectId); expecting @since 5.6
Invalid @since 5.4 tag on org.eclipse.jgit.util.References; expecting @since 5.6
Invalid @since 5.5 tag on assertNoCommitsMarkedStart(); expecting @since 5.6
Invalid @since 5.5 tag on getCheckoutResult(); expecting @since 5.6

The majority of these issues is in jgit, so your suggestion might still work for egit only with a small number of fixes.
Comment 2 Thomas Wolf CLA 2019-09-15 18:04:03 EDT
I very rarely see API errors in EGit in Eclipse. I think you should update your API baseline to EGit 5.5.0.

In JGit it occurs more frequently because evidently a sizeable number of JGit developers don't use Eclipse or have API checking disabled. But it's usually caught quickly.

What happens far more infrequently is removing of obsolete whitelist entries.
Comment 3 Michael Keppler CLA 2019-09-16 03:29:32 EDT
I have never updated a baseline manually until now, but relied on the oomph setup. That uses the 5.4 release, as far as I can tell. So shouldn't we come to a process where that baseline in oomph is updated in the commit that increases the version numbers to the next snapshot in the POMs?
Comment 4 Thomas Wolf CLA 2019-09-16 03:44:35 EDT
The 5.5.0 baseline in the Oomph setup will need a htts://download.eclipse.org URL to profit from mirroring.

If we use a https://repo.eclipse.org URL, there won't be mirroring, and downloads may be slow.

The link to the zipped update site at the "downloads" URL is only functional after release day, which is why I update the Oomph setup only then.
Comment 5 Thomas Wolf CLA 2019-09-16 17:17:31 EDT
(In reply to Thomas Wolf from comment #4)

> The link to the zipped update site at the "downloads" URL is only functional
> after release day, which is why I update the Oomph setup only then.

In the future, it will be functional as soon as the release version (ending in "-r") is built. See bug 545982 comment 15. And there is now https://git.eclipse.org/r/#/c/149611/ .