www-legal-discuss mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Harui <aha...@adobe.com>
Subject Re: Amazon Software License compatibility
Date Tue, 21 Jun 2016 21:03:17 GMT
IMO, you can include the ALv2 connector code in your release.  It is the customer who bundles
Kinesis that should make consumers of that bundle aware of what the licenses are within it.

Good luck on your release,
-Alex

From: "P. Taylor Goetz" <ptgoetz@gmail.com<mailto:ptgoetz@gmail.com>>
Reply-To: <legal-discuss@apache.org<mailto:legal-discuss@apache.org>>
Date: Tuesday, June 21, 2016 at 12:07 PM
To: <legal-discuss@apache.org<mailto:legal-discuss@apache.org>>
Subject: Re: Amazon Software License compatibility


On Jun 21, 2016, at 2:36 PM, William A Rowe Jr <wrowe@rowe-clan.net<mailto:wrowe@rowe-clan.net>>
wrote:

On Tue, Jun 21, 2016 at 12:20 PM, P. Taylor Goetz <ptgoetz@gmail.com<mailto:ptgoetz@gmail.com>>
wrote:
Hi Alex,

In Apache Storm we have a number of components that users can use to do things like read from
Apache Kafka, write to Apache HBase, etc. I’ll call them “connectors.” Connectors are
optional and are not required to run Apache Storm.

When users create an application to run on a Storm cluster, they bundle all their dependencies,
including any connectors they are using, into a single fat jar file and upload it to the cluster
to run.

We have a contributor who has written a connector for Amazon Kinesis, and the Kinesis client
library required by that code is licensed with the Amazon Software License [1].

As I mentioned earlier, connectors are completely optional (optional facet #1). To use the
Kinesis spout, however, users must bundle the Kinesis client library in their application
jar file, so in this sense the Cat-X dependency is not optional (optional facet #2).

The Kinesis connector would not require us to include any source code in our repository that
is licensed under the Amazon Software License. The Kinesis client library is purely a dependency.

I guess the question becomes, would we be able to license the Kinesis connector code under
the ALv2 given the terms of the Amazon Software License [1]?

You can license the Apache work under ALv2. Those licenses don't conflict.

You cannot "bundle" the Kinesis client library, thereby creating a "derivative work",
and simultaneously use this bundle on a non-AWS architecture, if this bundle
is considered a derivative work...

3.3 Use Limitation. The Work and any derivative works thereof only may be used or intended
for use with the web services, computing platforms or applications provided by Amazon.com<http://amazon.com/>,
Inc. or its affiliates, including Amazon Web Services, Inc.

I'm not a lawyer, so I can't comment whether the bundle is considered a
derivative work of its components, or whether the individual components
which go unused (based on the interpretation of "used or intended for use")
are simply part of a Compilation. If the 'bundle' used on both an AWS and
a non-AWS target will never "use or intended for use" on the non-AWS
target, the user may be in the clear.  This may be informative;

  http://www.copyright.gov/circs/circ14.pdf

The ASF won't create works with FOU restrictions (this was long-ago
settled back in the Sun Java days), and the 3.3 clause above for the
Amazon components is an FOU restriction. So we cannot ship this
component, although there should not be an issue with creating and
publishing an optional AL work from the ASF which does not include
the problematic license.


I’m not a lawyer either, but this part of the Definitions section of the Amazon Software
License seems applicable in terms of derivative works:

"The terms “reproduce,” “reproduction,” “derivative works,” and “distribution”
have the meaning as provided under U.S. copyright law; provided, however, that for the purposes
of this License, derivative works shall not include works that remain separable from, or merely
link (or bind by name) to the interfaces of, the Work.”

That seems to imply that linking to the Kinesis client library does not create a derivative
work in the context of the Amazon Software License. We also would not be bundling the Kinesis
client library, end users would have to download it themselves (usually automated by maven).

It seems like all the bases are covered. Is it safe to assume we can proceed?

-Taylor





Mime
View raw message