[ 
https://issues.apache.org/jira/browse/HADOOP-14284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16001884#comment-16001884
 ] 

Vinod Kumar Vavilapalli commented on HADOOP-14284:
--------------------------------------------------

bq. Isn't it better to just shade our final artifacts instead of shading 
individual libraries' jars? 
bq. Do you mean that we prepare new project "hadoop-server-modules" and shading 
Guava and Curator inside them like hadoop-client-modules? It sounds better 
approach to me. By adding skipShade option here, we can overcome build time 
problem. Andrew Wang Sean Busbey Akira Ajisaka What do you think?
[~ozawa], I meant that we shade the leaf modules. For e.g. we shade 
hadoop-yarn-client module (instead of guava) completely so that the downstream 
users of hadoop-yarn-client only see one big fat jar with all the dependencies 
shaded. This way guava, log4j that hadoop-yarn-client depends on are completely 
invisible to users. The downside of this is that (a) the fat jar becomes, ahem, 
fat (b) some folks may want to control the versions explicitly. (a) is 
unavoidable. For (b), we could ship both slim and fat jars.

> Shade Guava everywhere
> ----------------------
>
>                 Key: HADOOP-14284
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14284
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 3.0.0-alpha3
>            Reporter: Andrew Wang
>            Assignee: Tsuyoshi Ozawa
>            Priority: Blocker
>         Attachments: HADOOP-14238.pre001.patch, HADOOP-14284.002.patch, 
> HADOOP-14284.004.patch, HADOOP-14284.007.patch, HADOOP-14284.010.patch, 
> HADOOP-14284.012.patch
>
>
> HADOOP-10101 upgraded the guava version for 3.x to 21.
> Guava is broadly used by Java projects that consume our artifacts. 
> Unfortunately, these projects also consume our private artifacts like 
> {{hadoop-hdfs}}. They also are unlikely on the new shaded client introduced 
> by HADOOP-11804, currently only available in 3.0.0-alpha2.
> We should shade Guava everywhere to proactively avoid breaking downstreams. 
> This isn't a requirement for all dependency upgrades, but it's necessary for 
> known-bad dependencies like Guava.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to