Great news. Thanks all for this work! +1 to enforcing this on dependency level as Kenn suggested.
Łukasz wt., 15 sty 2019 o 01:18 Kenneth Knowles <[email protected]> napisał(a): > We can enforce at the dependency level, since it is a compile error. I > think some IDEs and build tools may allow the compile-time classpath to get > polluted by transitive runtime deps, so protecting against bad imports is > also a good idea. > > Kenn > > On Mon, Jan 14, 2019 at 8:42 AM Ismaël Mejía <[email protected]> wrote: > >> Not yet, we need to add that too, there are still some tasks to be >> done like improve the contribution guide with this info, and document >> how to generate a src build artifact locally since I doubt we can >> publish that into Apache for copyright reasons. >> I will message in the future for awareness for awareness when most of >> the pending tasks are finished. >> >> >> On Mon, Jan 14, 2019 at 3:51 PM Maximilian Michels <[email protected]> >> wrote: >> > >> > Thanks for the heads up, Ismaël! Great to see the vendored Guava >> version is used >> > everywhere now. >> > >> > Do we already have a Checkstyle rule that prevents people from using the >> > unvendored Guava? If not, such a rule could be useful because it's >> almost >> > inevitable that the unvedored Guava will slip back in. >> > >> > Cheers, >> > Max >> > >> > On 14.01.19 05:55, Ismaël Mejía wrote: >> > > We merged today the PR [1] that changes most of the code to use our >> > > new guava vendored dependency. In practice it means that most of the >> > > imports of the classes were changed from `com.google.common.` to >> > > `org.apache.beam.vendor.guava.v20_0.com.google.common.` >> > > >> > > This is a great improvement to fix a long existing problem of guava >> > > leaking through some Beam modules. This also reduces the size of most >> > > jars in the project because they don't need to relocate and include >> > > guava anymore, they just use the vendored dependency. >> > > >> > > Kudos to Kenn Knowles, Lukasz Cwik, Scott Wegner and the others that >> > > worked (are working) to make this possible. >> > > >> > > Sadly as a side effect of the merge of this PR multiple PRs were >> > > broken so please review if yours was and do a rebase and fix the >> > > imports to use the new vendored dependency. Sorry for the >> > > inconvenience. From now one all uses of guava should use the vendored >> > > version. Expect some updates in the docs. >> > > >> > > [1] https://github.com/apache/beam/pull/6809 >> > > >> >
