You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flume.apache.org by "Ferenc Szabo (JIRA)" <ji...@apache.org> on 2017/09/12 13:36:05 UTC
[jira] [Updated] (FLUME-2944) Remove guava as dependency
[ https://issues.apache.org/jira/browse/FLUME-2944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ferenc Szabo updated FLUME-2944:
--------------------------------
Fix Version/s: (was: 1.8.0)
1.9.0
> Remove guava as dependency
> --------------------------
>
> Key: FLUME-2944
> URL: https://issues.apache.org/jira/browse/FLUME-2944
> Project: Flume
> Issue Type: Improvement
> Affects Versions: 1.8.0
> Reporter: Lior Zeno
> Fix For: 1.9.0
>
>
> Guava is a very popular dependency, which often causes version collisions. Especially, due to lack of backwards compatibility.
> Adding new dependencies that rely on guava requires us to shade these dependencies. This is hard to maintain and bloats our distribution. Therefore, we should omit guava as a dependency and delegate these problems to our users.
> If a user would like to use X-Source with Y-Sink, where X and Y rely on colliding versions of guava, the user will have to shade one of them.
> This task should be easier, now that we have moved to Java 1.7. If we move to 1.8 in this release, then most of it becomes virtually trivial.
> Flume relies on the following guava imports:
> * com.google.common.base.Preconditions
> * com.google.common.collect.ArrayListMultimap
> * com.google.common.collect.ListMultimap
> * com.google.common.collect.Lists
> * com.google.common.collect.Maps
> * com.google.common.annotations.VisibleForTesting
> * com.google.common.util.concurrent.ThreadFactoryBuilder
> * com.google.common.base.Charsets
> * com.google.common.base.Strings
> * com.google.common.base.Throwables
> * com.google.common.eventbus.EventBus
> * com.google.common.eventbus.Subscribe
> * com.google.common.primitives.UnsignedBytes
> * com.google.common.cache.CacheBuilder
> * com.google.common.cache.CacheLoader
> * com.google.common.cache.LoadingCache
> * com.google.common.util.concurrent.UncheckedExecutionException
> * com.google.common.collect.HashMultimap
> * com.google.common.collect.SetMultimap
> * com.google.common.collect.ImmutableMap
> * com.google.common.base.Joiner
> * com.google.common.io.Files
> * com.google.common.io.Resources
> * com.google.common.collect.ImmutableSortedSet
> * com.google.common.base.Splitter
> * com.google.common.collect.Iterables
> * com.google.common.base.Optional
> * com.google.common.io.ByteStreams
> * com.google.common.collect.HashBasedTable
> * com.google.common.primitives.Longs
> * com.google.common.collect.Sets
> * com.google.common.collect.ImmutableListMultimap
> * com.google.common.collect.ListMultimap
> * import com.google.common.collect.Table
> * com.google.common.base.Function
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)