Hi John, Glad to hear your feedback. Reply inline:
> In the case of JMH, the repository I linked above forces the user to download > the additional dependency from maven central (or similar repository) rather > than relying on the system preinstalled library. >From a technical view, this is not true because you can download the libs manually and place them under MAVEN_HOME. Then it can be regarded as a "system preinstalled library". It's the same as download JDK and place them under JAVA_HOME. > you can't use org.openjdk.jmh:* as a compile/test compile > dependency in your project fury-benchmark is not released in binary form. But we can of course make it an optional dependency (or the entire module optionally) behind a profile and deactivated by default so that it's the same as how ASF projects can optionally depend on MySQL Connector Java under the same license. A related discussion can be found at [1]. >> THEY MAY BE RELIED UPON WHEN THEY SUPPORT AN OPTIONAL FEATURE >> "Will the majority of users want to use my product without adding the >> optional components?" No. Benchmark is for testing; most users don't even know it and cannot depend on it as a Maven artifact. P.S. > don't approach things as "TLP [x] does it this way so > it must be the preferred way" Yeah .. Even I don't think Flink did it correctly, this expression increases confusion. Most readers don't have the context to understand the referred case. I'll avoid it. Best, tison. [1] https://issues.apache.org/jira/browse/LEGAL-437 John D. Ament <johndam...@apache.org> 于2023年12月27日周三 23:57写道: > > On Tue, Dec 26, 2023 at 8:09 PM tison <wander4...@gmail.com> wrote: > > > Hi, > > > > The new podling Fury depends on jmh[1] which is licensed under GPLv2 > > with "CLASSPATH" EXCEPTION. > > > > Just to confirm, are you referring to the code under [benchmark]? > > > > > > IIRC Flink ever factored out its benchmark code into a separate repo > > [2] to comply with ASF's license policy [3]. > > > > As a word of caution, don't approach things as "TLP [x] does it this way so > it must be the preferred way" > > > > > > But since Fury doesn't modify jmh's code, just refers to some > > "org.openjdk.jmh." classes, I wonder if it's the same that a Java > > source file refers to JDK's classes under GPLv2 with "CLASSPATH" > > EXCEPTION. > > > > Or, we can exclude the benchmark code from the release like [4] but > > still hold it in the VCS. > > > > There's a difference between the GPL+CPE Cat X ruling we list on our > license website and how you're using JMH. When it comes to a Java > application, a developer has preinstalled the JDK (or using a manager of > some kind to install it - so not something we're forcing upon them). In > the case of JMH, the repository I linked above forces the user to download > the additional dependency from maven central (or similar repository) rather > than relying on the system preinstalled library. > > It's probably worth a question to legal, but I'm inclined to believe the > answer is no, you can't use org.openjdk.jmh:* as a compile/test compile > dependency in your project but would be happy to be wrong about that. > > > > > > Best, > > tison. > > > > [1] https://github.com/openjdk/jmh?tab=GPL-2.0-1-ov-file > > [2] https://github.com/apache/flink-benchmarks > > [3] https://www.apache.org/legal/resolved.html > > [4] https://github.com/apache/incubator-opendal/blob/main/.gitattributes > > > [benchmark]: > https://github.com/apache/incubator-fury/tree/main/java/fury-benchmark > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > > For additional commands, e-mail: general-h...@incubator.apache.org > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org For additional commands, e-mail: general-h...@incubator.apache.org