I would like to get some Foundation-level feedback on the particular mechanism we use to provide this functionality. We can ask on legal-discuss@ or by filing a legal JIRA.
Or, if we already have done this, can anyone give me a pointer into the dev list archive? Kenn On Wed, Oct 9, 2019 at 7:16 AM Jeff Klukas <[email protected]> wrote: > Sameer - Also note that there's some prior art for optional components, > particularly compression algorithms. We added support for zstd compression, > but document that it's the user's responsibility to make sure the relevant > library is available on the classpath [0]. > > There was some interest in a more formal way of defining optional > dependencies, but I expect it would make sense to follow the same general > approach here as we used for zstd, relying on Javadoc to advertise the > user's responsibilities. > > [0] > https://github.com/apache/beam/blob/c2f0d282337f3ae0196a7717712396a5a41fdde1/sdks/java/core/src/main/java/org/apache/beam/sdk/io/Compression.java#L132-L153 > > On Wed, Oct 9, 2019 at 10:10 AM Sameer Abhyankar <[email protected]> > wrote: > >> Thanks Luke! This is very helpful! This would certainly be considered as >> an optional component IMO. >> >> On Tue, Oct 8, 2019 at 7:01 PM Luke Cwik <[email protected]> wrote: >> >>> Sorry about that, gave the wrong information. >>> >>> The GPL 1, 2, and 3 all fall under category X licenses [1]. >>> "Apache projects may not distribute Category X licensed components, be >>> it in source or binary form; and be it in ASF source code or convenience >>> binaries. As with the previous question on platforms, the component can be >>> relied on if the component's license terms do not affect the Apache >>> product's licensing. For example, using a GPL'ed tool during the build is >>> OK, however including GPL'ed source code is not." >>> >>> But if this is an optional component which does not significantly >>> prevent the majority of users to use the product then it will be ok[2]. >>> Relevant bit is: >>> "Apache projects can rely on components under prohibited licenses if the >>> component is only needed for optional features. When doing so, a project >>> shall provide the user with instructions on how to obtain and install the >>> non-included work. Optional means that the component is not required for >>> standard use of the product or for the product to achieve a desirable level >>> of quality. The question to ask yourself in this situation is:" >>> >>> So in this case I believe we can include the LZO as long as we mark it >>> as optional. >>> >>> 1: https://www.apache.org/legal/resolved.html#category-x >>> 2: https://www.apache.org/legal/resolved.html#optional >>> >>> >>> >>> On Tue, Oct 8, 2019 at 3:51 PM Luke Cwik <[email protected]> wrote: >>> >>>> Which GPL version? >>>> >>>> The Apache License 2.0 is compatible with GPL 3[1] >>>> >>>> 1: https://www.apache.org/foundation/license-faq.html#GPL >>>> >>>> On Tue, Oct 8, 2019 at 2:10 PM Sameer Abhyankar <[email protected]> >>>> wrote: >>>> >>>>> Hi All, >>>>> >>>>> We were looking to add an IO that would read LZO compressed binaries >>>>> from a supported filesystem. However, based on our research, LZO is >>>>> shipped >>>>> under the GPL license. >>>>> >>>>> Would the licensing issue make it unlikely for this to be accepted as >>>>> a contribution into the Beam SDK? Are there options for adding support for >>>>> LZO into the Beam SDK so we dont run into licensing issues? >>>>> >>>>> Thanks in advance for the help with this!! >>>>> >>>>> Sameer >>>>> >>>> >>
