[ https://issues.apache.org/jira/browse/RNG-186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17840414#comment-17840414 ]
Alex Herbert commented on RNG-186: ---------------------------------- In place of `Random`, at least consider `ThreadLocalRandom.current()` or a `SplittableRandom` instance with the default increment. Both of those RNGs will pass state-of-the-art tests for randomness (TestU01 BigCrush or PractRand for several TiB of output). Their limitation is a period of 2^64, which is sufficient for generating test data. They will also be faster for either true concurrent usage (`ThreadLocalRandom`), or single thread usage (`SplittableRandom`). Note that Random has a period of 2^48 and is effectively synchronized using an AtomicLong for its state. I can look at the bundle plugin. It is important for our multi-module builds to ensure we do not get a repeat of this module issue again. > Commons-RNG Simple imports package that Commons-RNG Core does not export > ------------------------------------------------------------------------ > > Key: RNG-186 > URL: https://issues.apache.org/jira/browse/RNG-186 > Project: Commons RNG > Issue Type: Task > Components: core, simple > Affects Versions: 1.5 > Reporter: Richard Eckart de Castilho > Priority: Major > > Commons RNG Simple imports the following packages: > {noformat} > Bundle-SymbolicName: org.apache.commons.rng.simple > Implementation-Version: 1.5 > Import-Package: > org.apache.commons.rng,org.apache.commons.rng.core, > org.apache.commons.rng.core.source32, > org.apache.commons.rng.core.source64, > org.apache.commons.rng.core.util > {noformat} > However, Commons RNG Core does not export the source packages: > {noformat} > Bundle-SymbolicName: org.apache.commons.rng.core > Implementation-Version: 1.5 > Export-Package: > > org.apache.commons.rng.core;x-friends:="org.apache.commons.rng.simple";version="1.5.0" > Private-Package: > org.apache.commons.rng.core.source32, > org.apache.commons.rng.core.source64, > org.apache.commons.rng.core.util > {noformat} > Consequently, using Commons RNG simple fails in an OSGi environment as the > bundle cannot be resolved. > {noformat} > [ERROR] Resolution failed. Capabilities satisfying the following requirements > could not be found: > [<<INITIAL>>] > ... > ⇒ osgi.wiring.package: > (&(osgi.wiring.package=org.apache.commons.rng.simple)(version>=1.5.0)(!(version>=2.0.0))) > ⇒ [org.apache.commons.rng.simple version=1.5.0] > ⇒ osgi.wiring.package: > (osgi.wiring.package=org.apache.commons.rng.core.source32) > {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)