beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kenneth Knowles (JIRA)" <>
Subject [jira] [Updated] (BEAM-878) Allow usage of ApiSurfaceTest providing nothing but a whitelist
Date Wed, 02 Nov 2016 16:04:58 GMT


Kenneth Knowles updated BEAM-878:
    Priority: Minor  (was: Major)

> Allow usage of ApiSurfaceTest providing nothing but a whitelist
> ---------------------------------------------------------------
>                 Key: BEAM-878
>                 URL:
>             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

This message was sent by Atlassian JIRA

View raw message