CHANGES IN R 4.5.1:
NEW FEATURES:
- The internal method of
unzip()
now follows unzip 6.00 in how it
handles extracted file paths which contain "../". With thanks to
Ivan Krylov.
INSTALLATION:
-
Standalone nmath can be built with early-2025 versions of
clang-based compilers such as LLVM clang 20, Apple clang 17 and
Intel icx 2025.0. -
Tcl/Tk 9 can be used to build package tcltk: this has become the
default in some Linux distributions. N.B. several third-party
packages currently require Tcl/Tk 8 or even 8.6 without declaring
so.
BUG FIXES:
-
Java detection in javareconf could not detect libjvm.* in the
zero variant of the JDK (PR#18884). All valid variants as of JDK
24u are now supported. -
factanal(.., rotation=*)
now correctly updates rotmat, fixing
PR#18886. -
dnbinom(<large>, <muchlarger>, ..)
now is 0 correctly, instead of
NaN
orInf
sometimes. -
dbinom(<large>, n=Inf, ..)
is 0 now correctly, instead ofNaN
which also fixes manydnbinom()
cases, notably those mentioned in
PR#16727 comment wch#5. -
Fixing C level “binomial deviance”
bd0()
for extreme arguments
(preventing under-/overflow) solves more PR#16727 cases and also
prevents some full accuracy loss in such cases fordbinom()
,
dnbinom()
, and viadbinom_raw()
potentiallydgeom()
,dhyper()
,
dbeta()
, anddf()
. -
signif(1.**e308, digits)
no longer truncates unnecessarily (but
still to prevent overflow toInf
), fixing PR#18889. -
prettyNum(*, zero.print={>=1-char}, replace.zero=TRUE)
now works
as documented, thanks to Marttila Mikko and Ivan Krylov's
messages on R-devel. -
pbeta(x, a,b, ..)
for very large a,b no longer returnsNaN
but
the correct values (0 or 1, or their logs forlog.p = TRUE
).
This improves Mathlib's C levelbratio()
and hence also
pnbinom()
, etc..