[ https://issues.apache.org/jira/browse/BEAM-878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kenneth Knowles updated BEAM-878: --------------------------------- Priority: Minor (was: Major) > Allow usage of ApiSurfaceTest providing nothing but a whitelist > --------------------------------------------------------------- > > Key: BEAM-878 > URL: https://issues.apache.org/jira/browse/BEAM-878 > Project: Beam > Issue Type: Improvement > Components: testing > Affects Versions: Not applicable > Reporter: Daniel Halperin > Priority: Minor > Fix For: Not applicable > > > {{ApiSurfaceTest}} in the {{sdks/java/core}} is the class responsible for > protecting our public API surface. > This test walks the public signatures of all modules and explicitly verifies > that everything is on a whitelist. This is how we control what dependencies > we expose to our users, so that Beam can keep a tight, stable API surface. > We should improve this functionality to be reusable across modules. > Some desiderata for reuse: > * test automatically infers the module on which it should seed the API search. > * only 2 things in the file -- a whitelist and a ~1-line test that passes the > whitelist as a parameter to some helper. > * test fails if there are things in the whitelist that are not exposed. > Any other cool things that are similar to what Maven enforcer does? > As an example of what you have to do without this functionality, see > https://github.com/apache/incubator-beam/pull/1183 -- This message was sent by Atlassian JIRA (v6.3.4#6332)