[ https://issues.apache.org/jira/browse/BEAM-3608?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16737646#comment-16737646 ]
Kenneth Knowles commented on BEAM-3608: --------------------------------------- Vendored Guava is released, but not used throughout. > Vendor Guava > ------------ > > Key: BEAM-3608 > URL: https://issues.apache.org/jira/browse/BEAM-3608 > Project: Beam > Issue Type: Sub-task > Components: runner-core, sdk-java-core > Reporter: Kenneth Knowles > Assignee: Kenneth Knowles > Priority: Major > Time Spent: 7.5h > Remaining Estimate: 0h > > Instead of shading as part of our build, we can shade before build so that it > is apparent when reading code, and in IDEs, that a particular class resides > in a hidden namespace. > {{import com.google.common.reflect.TypeToken}} > becomes something like > {{import org.apache.beam.private.guava21.com.google.common.reflect.TypeToken}} > So we can very trivially ban `org.apache.beam.private` from public APIs > unless they are annotated {{@Internal}}, and it makes sharing between our own > modules never get broken by shading again. -- This message was sent by Atlassian JIRA (v7.6.3#76005)