zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher <ctubb...@apache.org>
Subject Re: ZooKeeper dependencies
Date Fri, 20 Nov 2015 23:21:27 GMT
On Fri, Nov 20, 2015 at 5:35 PM, Flavio Junqueira <fpj@apache.org> wrote:
> Happy to help!
>> On 20 Nov 2015, at 19:51, Christopher <ctubbsii@apache.org> wrote:
>> Thanks for the info. What's the best way to distinguish between
>> dependencies needed for core and contrib?
> I'd say you just list the dependencies in the ivy.xml file under the project root.

Okay, I'll begin there. Thanks.

>> I'm not really an ant/ivy developer, and just trying to help out with
>> this package created by another Fedora maintainer. I'm much more
>> familiar with maven builds.
>> It does look like we're including some of the contrib stuff in this
>> package. I'm not sure why. We probably shouldn't be, unless we put
>> them in separate RPMs (subpackages). I'll look into separating them a
>> bit in the future. As for license, it looks like BSD was included
>> because of the hashtable bits which are compiled into the shared
>> library? SLF4J isn't packaged in this, it's just a dependency, so its
>> license is specified in its own RPM.
> Here is what you'll find at the bottom of the LICENSE file:
> This distribution bundles jline 0.9.94, which is available under the
> 2-clause BSD License. For details, see a copy of the license in
> lib/jline-0.9.94.LICENSE.txt
> This distribution bundles SLF4J 1.6.1, which is available under the MIT
> License. For details, see a copy of the license in
> lib/slf4j-1.6.1.LICENSE.txt
> This distribution bundles a modified version of 'JZLib' as part of
> Netty-3.7.0, which is available under the 3-clause BSD licence. For
> details, see a copy of the licence in META-INF/license/LICENSE-jzlib.txt
> as part of the Netty jar in lib/netty-3.7.0.Final.jar.
> We ship slf4j in our artifact, that's why we list its license, perhaps you don't need
it as you say.

The SRPMs in Fedora will include the original upstream tarball,
including any of its original licensing information. The SRPM also
includes the SPEC file (MIT licensed) and any Fedora-specific patches
(which either inherit the upstream license or are MIT licensed). [1]

The License field in the SPEC file is used, by convention, to denote
only the license(s) of the software packaged into the final RPM(s),
after building. This is equivalent to how the ASF distinguishes
between LICENSE/NOTICE files in the official source releases (Fedora
always builds from these sources), and those in the "convenience
binaries". [2]

Fedora has aversion to bundling, so if upstream bundles dependencies,
they are typically excluded from the final RPM(s), and instead must be
packaged separately from their respective upstreams. (Essentially,
this is one massive dependency convergence engine... which it must be
if bundling is avoided.) This policy has recently been made slightly
less restrictive than in the past, but either way, in this case slf4j
is packaged separately, even if upstream ZooKeeper bundles it. :)

[1]: https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#License_of_Fedora_SPEC_Files
[2]: http://www.apache.org/dev/licensing-howto.html#bundled-vs-non-bundled
[3]: https://fedoraproject.org/wiki/Bundled_Software_policy

View raw message