ApiSurfaceTest checks the classpath, not the API surface
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 4.7k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 205
Description
The change to check the classloader is not wrong - it catches transitive private deps that are nonetheless susceptible to clobber. However, it is checking the wrong classpath. It needs to be an isolated post-shading classpath, not the generic testing classpath.
Likely all the uses are broken.
Imported from Jira [BEAM-3748](https://issues.apache.org/jira/browse/BEAM-3748). Original Jira may contain additional context.
Reported by: kenn.
Contributor guide
Research direction
Start by locating ApiSurfaceTest and all of its uses, then inspect how the generic testing classpath and classloader are assembled. Confirm the intended isolated post-shading classpath and verify that the API-surface checks use it rather than the generic testing classpath.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100