Changes in version 8.4.3 (2026-01-09) Fixed o Corrected improper link in SECURITY.md. o Other spelling errors corrected. Changed o Changes related to Github workflows and requirements. o Minor tweaks to R and Fortran code. No change to calculations. Changes in version 8.4.2 (2025-07-17) Fixed o Corrected package metadata unit tests and switched sapply to vapply for type safety. o Updated Github action YAMLs. o Updated NEWS markup. Changed o Switched “max cpu” holding variable location from options to an enviornment variable per R commit 88406 by Brian Ripley. o Converted some architecture-specific tests to use looser tolerances based on Tomas Kalibera's blog post. o Made checks of the lt and lg variables passed to Fortran from C to be against c_int variables, which they should be. Changes in version 8.4.1 (2024-06-17) Changed o Testing for NaN within Fortran now more efficient. o Other changes to C and Fortran code for efficiency and readability. o Added package metadata tests. o Set up new version of rhub checking. o Use native CRAN DOI. Changes in version 8.4.0 (2024-04-04) Changed o qdelap now automatically calls the exact = TRUE version when passed inappropriate parameters instead of just stopping with an error. o Refactor README.md into component MD files for Github purposes. o Capture and restore original thread count after running tests. o Efficiency tweaks to underlying Fortran code. Changes in version 8.3.0 (2023-10-02) Changed o Converted log1p implementation to one based on its Taylor sequence, instead of catastrophic substitution elimination, as some compilers may optimize out that subtraction. Since any difference in result should be at machine precision or lower, this is considered a minor update. o Removed back keyword from minloc call in the Fortran implementation of qdelap. Technically uneeded since its value is the default FALSE. This allows for systems with an only partial implementation of Fortran 2008 to compile (see Issue 3 and thanks to David Pascall). o Correct error message of setDelapThreads to reflect that setting threadcount to 0 is also an error. Functionality has not changed. o Removed unnecessary explicit check for NaN in qdelap as it will be covered by check using anyNA. o Tweaked documentation for clarity. Added o Added unit test for new log1p function. o Added LTO_OPT and LTO_FC_OPT flags to Makevars. Changes in version 8.2.0 (2023-08-10) Added o Added getDelapThreads and setDelapThreads to explicitly control OpenMP thread usage based on WRE 1.2.1.1. o Added parallel as an import for detectCores. o Added SPDX header to more files. o Added more unit tests. Changed o Changed Fortran suffix to .f90 for better compatibility with the Intel Fortran compiler, per CRAN. o Tweaked minor linting and documentation issues. o Explicitly enumerated exports instead of using wide-ranging regex. Changes in version 8.1.1 (2023-06-20) Changed o Removed -std=f2008 on the advice of Professor Ripley. Changes in version 8.1.0 (2023-02-01) Changed o Fortran source code now reliant on Fortran 2008. o Fortran module ieee_arithmetic used. o Updated help documentation. o Updated Github actions. o Updated internal code to be more compliant with personal style guide. o Updated CITATION to use bibentry per CRAN request. Removed o gamln replaced with Fortran 2008 log_gamma. o position replaced with Fortran minloc. o The set_nan and set_inf procedures were replaced with ieee_arithmetic calls. o Checks for NaN now use ieee_arithmetic calls. Changes in version 8.0.3 (2022-09-06) Changed o Updated package with information necessary to acheive OpenSSF silver status. Changes in version 8.0.2 (2022-01-20) Changed o Converted unit testing framework to tinytest to reduce dependencies. o Augmented citation with DOI and CFF file. Fixed o Corrected help file. Changes in version 8.0.1 (2021-01-10) Removed o Removed SIMD calls added in 8.0.0 due to Solaris. o Removed LTO mentions from Makevars added in 8.0.0 per Brian Ripley. Changed o Pass more R-consistent error messages. o Made more robust to improper inputs such as negative, NA, or NaN parameters or passed values. o R versions of qdelap and rdelap behave more like the Fortran versions. Changes in version 8.0.0 (2021-01-05) Changed o Exact code more in line with R defaults for d/p/q/r functions in that NaN inputs return NaN outputs. o Handling of Inf and -Inf now more in line with R defaults for d/p/q/r functions. o Parameter errors now check for < 0 instead of < EPS. o ddelap and pdelap now use 8-byte integers (INT64) for their counters which allows calculation for values up to 2^63. • ddelap will return 0 for all values > 2^63 under the assumption that the PMF is spread too thinly. • pdelap will not run for values > 2^63. • ddelap of Inf returns 0 and pdelap of Inf returns 1. o pdelap gives a warning for finite values > 2^15 as, depending on the parameters, this may take hours to finish (it's a double summation!). The user has to respond with y to continue. o Updated help and tests. o Allow compiler to use OpenMP SIMD constructs. o Allow using LTO. o Switched continuous integration from Travis/Appveyor to Github actions (thanks to Jim Hester for his help in fixing the coverage check issue). Changes in version 7.0.5 (2020-11-10) Fixed o Corrected CRAN requests. o Cleaned up NEWS. Changes in version 7.0.4 Changed o Converted tests to be compliant with testthat: 3rd edition. o Cleaned up prose. Added o Added a citation to DESCRIPTION. o Added a test to increase code coverage. Changes in version 7.0.3 (2020-06-01) Added o CITATION file. o Explicit citation information to README. o Travis, AppVeyor, and CodeCov integration. o Added R_forceSymbols(dll, TRUE) to source per WRE 5.4. o Tests for package versioning. Changed o Moved canonical repository to Github. o Use FFLAGS instead of FCFLAGS in Makevars. Removed o Removed depsy badge from README as site is now defunct. Changes in version 7.0.2 (2019-05-17) Changed o Updated NEWS to reflect recent changes. o Updated various file versions to reflect recent changes. Changes in version 7.0.1 (2019-04-26) Changed o Makevars adjusted by CRAN to prevent issues with parallel make. Changes in version 7.0.0 (2019-02-12) Changed o Changed Makevars flags and targets and forced dependance on R 3.6+ to comply with new CRAN policies on Fortran and OpenMP. o Preventing spurious floating point errors by implementing hard floor of 0 and hard ceiling of 1. o Updated comments in delaporte.f95 source code. o Changed rdelap testing to always use a fixed seed. o Documentation cleaned up. Removed o Removed the cleanzeros function. o Removed unneeded Makevars target cleanup. o Removed GNU-specific Makevars target .NOTPARALLEL. Changes in version 6.3.0 (2018-11-21) Added o Added cleanzeros function that zaps to 0 any value less than or equal to EPS (thanks Kipper Fletez-Brant). o Test for zeros (thanks Kipper Fletez-Brant). o Added items to README to comply with CII best practices and added badge. o Added various badges to README. o Added copyright and license information inside R source code file. Changes in version 6.2.0 (2018-06-22) Added o MoMdelap now allows a skew type selection, similar to that of the skewness function in the e1071 package (thanks to William Cipolli for the suggestion). Skew defaults to former selection so there should be no change to any values. o Tests added for all three skewness variants. o ORCID added to author description. o Copyright date corrected to reflect actual copyright and not date of licensure change. Changes in version 6.1.0 (2017-08-13) Fixed o There was an error in the calculation of beta, and thus all three parameters, in MoMdelap (thanks to William Cipolli). Changes in version 6.0.0 (2017-03-31) Fixed o The approximate version of qdelap was not correct. It pooled together ALL generated random variables. As it is impractical to generate millions of random variates for each unique parameter triplet, the functionality was changed so that only the “exact” version of qdelap may be used if any of the parameters are a vector. Changed o In the continued struggle to have the package pass all its tests on Solaris SPARC, all logicals needing to be passed to Fortran are now passed as integers and not booleans. While all other platforms had no problem using Fortran 2003's ISO_C_bindings, Solaris SPARC did. Added o Added note to README about Solaris SPARC. o More tests including for singleton approximate qdelap. Removed o Older implementation of qdelap and rdelap approximations are now completely removed from code and documentation. Changes in version 5.0.1 (2017-03-06) Changed o Solaris, being big-endian, appears unable to use the same bit-mask transfer for NaN and Inf as any other R platform. Therefore, the package has to revert to calling C to call the R magic words which should recognize the platform. Changes in version 5.0.0 (2017-03-05) Changed o Changed handling of non-integers to be in line with R convention that they have 0 probability instead of being considered the next integer. ddelap will return 0 for each non-integral value and will pass one warning, unlike base R which passes one warning per non-integral value. qdelap will just return the value for the last integer and no warnings, similar to base R. o Use bit-representation of NaN and Inf to remove need to call C for setting these values. This allows the log-gamma and singleton d/p/qdelap functions to be elemental. o Changed registration of the C SEXP functions seen by the package to use R_CallMethodDef as now preferred by CRAN. o Explicitly listed the five C SEXP functions seen by the package as R_RegisterCCallable for potential downstream package use. o Corrected some prose in documentation page. o Older NEWS entries refactored for accuracy. Fixed o Explicitly cast n as an integer in loggamma routine. This should suppress warning on OSX mavericks. Removed o Older implementation of qdelap and rdelap approximations is now defunct. Only the new faster approximation based on section 3.9 of Karlis & Xekalaki (2005) remains. The next minor version may remove the .Defunct calls and the references to the old version in the documentation. o Removed colClasses = 'double' from tests. This should solve Sun SPARC issues (It didn't). Added o Specified, clarified, and added many more unit tests. Changes in version 4.0.3 (2017-01-31) Changed o Back end code ported from C++ & Rcpp to Fortran and C. In most cases this alone showed an increase in speed. There should be no noticeable difference in results. Random numbers generated with the same seeds should be the same as in previous packages. o OpenMP calls activated for systems which have it which allows parallel processing of certain loops resulting in further speed increases over and above those supplied by Fortran. OpenMP compatibility is approximately version 3.1; no SIMD instructions are used. o License changed from GPL2+/LGPL3+ to BSD-2 clause. Fixed o Includes various emergency fixes to address parallel make and other compilation issues in versions 4.0.0-4.0.2. Changes in version 4.0.2 o Did not build properly on some systems using a parallel make. Changes in version 4.0.1 o Did not build properly on Fedora using Clang. Changes in version 4.0.0 (2017-01-29) o Did not build properly on various platforms such as Fedora and Solaris. Changes in version 3.0.0 (2016-07-19) Changed o The distributional functions now return NaN where the passed alpha, beta, or lambda is close to 0 (less than machine epsilon). Within vectors, valid triplets should still return proper values. The approximate versions of qdelap and rdelap do not handle 0 properly, and an error is thrown directing the user to the exact version (thanks are due to Jonathan Cairns and Jin-Rui Xu for their help in testing). Added o Faster versions of the approximate qdelap and rdelap have been implemented. o Tests for near 0 handling on exact version. Deprecated o The old approximation versions of qdelap and rdelap can still be used by passing old = TRUE. This will be removed eventually. Changes in version 2.3.1 (2016-06-17) Changed o Reverted back to 2.2-3 as change to trapping zeros caused serious downstream issues. Will work on more elegant correction shortly (thanks to Mikhail Spivakov, Jonathan Cairns, and Jin-Rui Xu). Changes in version 2.3.0 (2016-06-02) Deprecated o In the next release (*3.0.0*), passing FALSE to exact in rdelap and qdelap will use the method described in section 3.9 of Karlis & Xekalaki (2005) to generate approximately Delaporte random variates much more quickly for large n and large values of the parameters. However, when implemented, this will break reproducible even for specifically set seeds. The new code is commented out in the function. Changed o Change non-exact qdelap mode to _numeric_ instead of _integer_ to handle returned Inf. o Refactor NEWS to more closely comply with keep a changelog suggestions. Fixed o Check for any parameters not strictly greater than 0 (thanks to Mikhail Spivakov and Jonathan Cairns). Changes in version 2.2-3 (2015-07-01) Fixed o Explicitly import code from package stats. o Updated code in unit tests to reflect change in testthat package (move to expect_equal). o Minor tweaks to prose and grammar and expanded description. Changes in version 2.2-2 (2014-12-04) Fixed o Updated DESCRIPTION file to comply with recent changes. Changes in version 2.2-1 (2014-09-24) Fixed o Trapped machine precision issues when calling right-tailed version of cumulative distribution function (thanks to Mikhail Spivakov and Jonathan Cairns). o Update documentation to reflect rounding procedure when non-integer passed as value. Changes in version 2.2-0 (2014-07-16) Added o Vectorized d/p/q/rdelap; alpha, beta, and lambda can now be vectors. o Added more robust tests. o Minor optimizations for speed. Fixed o Corrected lower.tail and log.p which were not implemented properly. Changes in version 2.1-1 (2014-04-08) Fixed o Adjusted unit test so it can be run more easily on 32 bit machines with limited memory. o Fixed spelling and other prose. Changes in version 2.1-0 (2014-04-07) Added o Added function to calculate method of moments estimates for the parameters. These estimates should also serve as good starting points for maximum likelihood estimation. o Added unit testing. Changes in version 2.0-1 (2014-02-05) Changed o Minor cleanup after Rcpp update (remove Makevar files and tweak documentation). Changes in version 2.0-0 (2014-02-05) Changed o Updating for changes made to Rcpp 0.11.0. Previous versions may no longer compile properly and the current version may no longer work with older versions of Rcpp. Changes in version 1.1-0 (2014-01-19) Changed o Change “Depends” to “LinkingTo” in line with CRAN philosophy on package dependencies. o Update documentation to give rough estimate as to when exact = FALSE should be used (rarely). o Have R code be written in a consistent style. Changes in version 1.0-1 (2013-09-01) Changed o Update README now that CRAN uses it as well. o Minor grammar and typography tweaks to documentation. Changes in version 1.0-0 (2013-07-10) Added o Poisson-negative binomial approximation to quantile and random variate functions. This greatly speeds up calculation for large alpha, beta, or lambda. Changes in version 0.1-2 (2013-04-11) Added o Converted NEWS to NEWS.Rd. o Added repository and bug report URL to DESCRIPTION. Fixed o Help documentation corrections, comments, and tweaks. Changes in version 0.1-1 (2013-04-09) o Initial version.