An new version 0.2.6 of the random-number generator tester RDieHarder (based on the DieHarder suite developed / maintained by Robert Brown with contributions by David Bauer and myself along with other contributors) is now on CRAN (and to the day year after the previous release).
This release contains changes to printf
format strings
to avoid new warnings on Windows. No functional changes have been
made.
Thanks to CRANberries, you can also look at the most recent diff to the previous release.
If you like this or other open-source work I do, you can now sponsor me at GitHub.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
An new version 0.2.5 of the random-number generator tester RDieHarder (based on the DieHarder suite developed / maintained by Robert Brown with contributions by David Bauer and myself along with other contributors) is now on CRAN.
This release contains one change (made at the request of a CRAN email
in light of possible future changes for C standard C17 and then C23) and
removes a compiler-check from configure.ac
. It is both a
fair point as our src/Makevars
does not actually set a
compiler yet also a little … marginal?
Thanks to CRANberries, you can also look at the most recent diff.
If you like this or other open-source work I do, you can now sponsor me at GitHub.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
An new version 0.2.4 of the random-number generator tester RDieHarder (based on the DieHarder suite developed / maintained by Robert Brown with contributions by David Bauer and myself along with other contributors) is now on CRAN.
This release comes ten months after the previous release 0.2.3. It is once more related to R and requested CRAN changes as clang-15
brings additional warnings concerning -Wstrict-prototyping
. This make use of C more solid, but it was a metric ton of work (see pull request #8).
Thanks to CRANberries, you can also look at the most recent diff.
If you like this or other open-source work I do, you can now sponsor me at GitHub.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
An new version 0.2.3 of the random-number generator tester RDieHarder (based on the DieHarder suite developed / maintained by Robert Brown with contributions by David Bauer and myself) is now on CRAN.
This release comes only about one and half months after the previous release 0.2.2 and is once again related to R and CRAN changes. The upcoming (and very useful) ‘UCRT’ changes for Windows involve small build changes for the updated Windows toolchain so this release includes a patch kindly prepared by Tomas Kalibera. And because compilers get cleverer and cleverer over time, I also address a warning and error found by the newest gcc
in what is otherwise unchanged and years old C code … In addition, two other warnings were fixed right after the previous release.
Thanks to CRANberries, you can also look at the most recent diff.
If you like this or other open-source work I do, you can now sponsor me at GitHub.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
An updated version 0.2.2 of the random-number generator tester RDieHarder (based on the DieHarder suite developed / maintained by Robert Brown with contributions by David Bauer and myself) is now on CRAN.
I should dub this the ‘due to Brian Ripley’ release. He sent me a detailed five-point email a few days ago which detailed a change I could not have tested (“no access”), a change I would not have known (“somewhat obscure C language bit-level manipulation”), a change I had missed (how my build setup failed for M1mac), another advanced C level fix, and one more simple fix I actually knew. Speechless. The man (I presume) does not sleep and is just so generous with his time and expertise.
So based on the input I rejigged the package over the weekend and made two more (substantial) changes. First, extending on what 0.2.0 brought, I will no longer attempt to use an external libdieharder
library (or build one on the fly) – that was issue one. Now we just declare all C files as dependents of the package shared library, and things are simpler and more consistent. Sadly, that also implies “everything is in the package” so I had to edit out a metric ton of stdout
or exit()
reference with the appropriate R C API hooks to appease the CRAN Policy deities. Win some, loose some. But the package is now simpler, and cleaner, and should be in good standing. (Or so one hopes. Earlier today, and within hours of it hitting CRAN, I got an issue ticket from a motivated user about yet another (“mostly harmless” in the Douglas Adams sense) compiler warning… Good now too.)
Thanks to CRANberries, you can also look at the most recent diff.
If you like this or other open-source work I do, you can now sponsor me at GitHub.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
A new version, now at 0.2.1, of the random-number generator tester RDieHarder (based on the DieHarder suite developed / maintained by Robert Brown with contributions by David Bauer and myself) is now on CRAN.
This version has only internal changes. Brian Ripley, tireless as always, is testing the impact of gcc 10 on CRAN code and found that the ‘to-be-default’ option -fno-common
throws off a few (older) C code bases, this one (which is indeed old) included. So in a nutshell, we declared all global variables extern
and defined them once and only once in new file globals.c
. Needless to say, this affects the buildability options. In the past we used to rely on an external library libdieharder (which e.g. I had put together for Debian) but we now just build everything internally in the package.
Which builds on the changes in RDieHarder 0.2.0 which I apparently had not blogged about when it came out on December 21 last year. I had refactored the package to use either the until-then-required-but-now-optional external library, or the included library code. Doing so meant more builds on more systems including Windows.
This (very old) package has no NEWS.Rd file to take a summary from, but the ChangeLog file has all the details.
Thanks to CRANberries, you can also look at a diff from 0.2.1 to 0.2.0. or the older diff from 0.2.0 to 0.1.4.
If you like this or other open-source work I do, you can now sponsor me at GitHub. For the first year, GitHub will match your contributions.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
Per a CRAN email sent to 300+ maintainers, this package (just like many others) was asked to please register its S3 method. So we did, and also overhauled a few other packagaging standards which changed since the last upload in 2014.
No NEWS.Rd file to take a summary from, but the top of the ChangeLog has details.
Thanks to CRANberries, you can also look at a diff to the previous release.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
inst/doc
to vignettes/
to help finalize that
transition of the R / CRAN Package Policy.
Courtesy of
CRANberries, there
is also a diffstat report
relative to the previous release.
As always, more detailed information is on the RDieHarder page.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. Please report excessive re-aggregation in third-party for-profit settings.
The package still comes with a vignette describing both DieHarder and the RDieHarder package. And because pictures speak louder than a thousand (blogged) words, here is the first chart from the vignette:
ran0
function. The histogram illustrating the distribution of
test scores is somewhat uneven. An ideal (and asymptotic) outcode is a
uniform distribution of p-values from the test. The empirical cumulative
distribution function (ECDF) below indicates a somewhat pronounced departure from
the diagonal. Informally speaking, this is what the
(Kuiper-)Kolmogorov-Smirnov test quantifies, and we see (in the text in the
chart) that the null of can be rejected an conventional levels. Based on
this example (which had a short run-time with few samples) we would indeed mistrust
this (known bad) RNG.
On the right, we have a more recent and trusted RNG, the well-known Mersenne Twister. The ten histogram buckets are all closer to the expected value of one-tenth, the estimated density is closer to flat, the ECDF is closer to the diagonal and the tests don't reject---so no reason to mistrust this RNG based on this test alone.
RDieHarder lets you run a battery of such tests against a boatload of known RNGs. Here is a second example, comparing the six RNGs built into R itself:
Courtesy of CRANberries, there is also a diffstat report for 0.1.2 relative to the older 0.1.1 release. More detailed information is on the RDieHarder page.