Hi If the dependency is used for test (and not bundled in one of our distributed artifacts) and we don’t copy code from this dependency, we can use GPL/LGPL dependency. What matters is the code we copy from another project and the dependencies we bundle in our artifacts.
Regards JB Le mer. 26 mars 2025 à 14:08, Pierre Laporte <pie...@pingtimeout.fr> a écrit : > Hello all > > In https://github.com/apache/polaris/issues/761, there is a discussion on > whether the EntityCache is thread-safe, prone to race conditions, > inconsistencies, etc... > > To determine whether these issues are real, I worked on JCStress [1] > tests. JCStress is a testing framework developed by Oracle that helps > verify correct behavior of concurrent Java code. I would like to discuss > the possibility to add such tests to the Polaris project. > > Here is an example of tests: > > https://github.com/pingtimeout/polaris/blob/jcstress/jcstress-tests/src/jcstress/java/org/apache/polaris/core/persistence/cache/EntityCacheCoherenceTest.java#L34-L99 > . > And here is an example of the insights we can get out of them: > > https://docs.google.com/document/d/1ZF5WGiSOoqg9JpSvFfhuPOK0QrqeY431/edit?tab=t.0#bookmark=id.op4496ui0vzi > . > > These tests are similar to unit tests, in that there should be no > dependency on external components, they should be fast so that millions of > invocations can be performed in a reasonable timeframe, and they should be > fine-grained. To that extent, it would make sense to colocate them with > the codebase, in the main repository. > > But JCStress is released under the GPL-v2, which seems incompatible with > the ASLv2 [2]. Does anybody have any experience with such integrations? > We would make use of the JCStress framework, as opposed to extending it. > But couldn't this be considered derivative work? In which case, should the > concurrency tests be developed as a separate project (and/or in a separate > repository) so that they themselves are released under the GPL-v2 ? > > Thoughts? > > [1] https://github.com/openjdk/jcstress > [2] https://www.apache.org/licenses/GPL-compatibility.html > > -- > > Pierre >