beam-commits mailing list archives

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

     [ https://issues.apache.org/jira/browse/BEAM-878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Kenneth Knowles updated BEAM-878:
---------------------------------
    Summary: Allow usage of ApiSurfaceTest providing nothing but a whitelist  (was: ApiSurfaceTest
improvements and reusability)

> 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
>             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)

Mime
View raw message