NEWS
bit64 4.5.2 (2024-09-22)
BUG FIXES
- "[.integer64"(x,i) can now cope with i longer than x
bit64 4.5.1
USER VISIBLE CHANGES
- generics 'is.integer64', 'as.integer64', 'as.bitstring'
are no longer registered as S4 methods of 'is' and 'as'
bit64 4.5.0
NEW FEATURES
- new method as.list.integer64
- setting options(integer64_semantics="new")
gives the better semantics suggested by Ofek Shilon.
Downstream package authors: please test and adjust to the new semantics,
we plan to make that the default and deprecate integer64_semantics="new".
USER VISIBLE CHANGES
- min.integer64 and max.integer64 emit better warnings
when extreme values are returned (suggested by Pepijn de Vries)
BUG FIXES
- seq.integer64 now properly handles sequences of length 1
(found by Christopher Swingley)
bit64 4.0.5 (2020-08-30)
BUG FIXES
- PKG_LIBS=-lm added to Makevars
(fixes https://bugzilla.redhat.com/show_bug.cgi?id=1763127
thanks to Elliott Sales de Andrade)
bit64 4.0.4 (2020-08-28)
BUG FIXES
- runif64() no longer long long overflows
for the maximum integer64 range
- UBSAN false alarms removed with
__attribute__((no_sanitize("signed-integer-overflow")))
- added temporary flags to Makefile
for UBSAN checks
bit64 4.0.3
BUG FIXES
- added Makefile with temporary -flto
and removed LTO error regarding runif_integer64
bit64 4.0.2 (2020-07-30)
BUG FIXES
- now DESCRIPTION URL points to github
bit64 4.0.1
BUG FIXES
- removed pragma because no longer needed with recent compilers
- removed a clang warning
bit64 4.0.0
NEW FEATURES
- new method all.equal.integer64
(contributed by Leonardo Silvestri)
USER VISIBLE CHANGES
- license has been extendend from GPL-2 to GPL-2 | GPL-3
- still.identical is now exported from package bit
BUG FIXES
- removed unused SEXP ret_ from r_ram_integer64_sortnut and
r_ram_integer64_ordernut (LTO problems reported by Brian Ripley)
- min, max and range now give correct results for multiple arguments
(reported by Colin Umanski)
- r_ram_integer64_ordertab_asc and r_ram_integer64_sortordertab_asc
now properly PROTECT their shortened return vector before R_Busy(0)
(Thanks to Tomas Kalibera)
- operations on zero length integer64 now return
zero length integer64 instead of throwing an error
(reported by Xianying Tan)
- match.integer64 (and %in%) now coerce the second argument to integer64
instead of throwing an error (reported by Xianying Tan)
- zero-length integer64() no longer prints as 'character(0)'
(reported by Xianying Tan)
bit64 0.9-8
NEW FEATURES
- New function runif64 which can sample from finite
and infinite populations (wish of Dan Reznik)
- New methods as.integer64.bitstring
and print.bitstring (wish of Dan Reznik)
USER VISIBLE CHANGES
- [.integer64 now returns NA where the subscripts require this
(contributed by Leonardo Silvestri)
- binary operators now handle attributes more like R
(new binattr() code contributed by Leonardo Silvestri)
- as.bitstring.integer64 now returns its string vector
with class 'bitstring'
- round.integer64 with a negative digits argument now rounds
like round(integer) would do (wish of Ian Lyttle)
- range.integer64 now has an argument finite=FALSE for compatibility
with range.default (wish of Sergio Oller)
BUG FIXES
- calculating hashbits in hashfun, hashmap, hashmaptab and hashmapuni
now gives 0 instead of stopping (bug reported by Jakob Schelbert)
bit64 0.9-7 (2017-05-08)
BUG FIXES
- All .Call routines are now registered
bit64 0.9-6
NEW FEATURES
- New method str.integer64 shows the integer64
and no longer the underlying double
(wish of Matt Dowle)
- New integer64 methods is.nan, is.finite, is.infinite
(wish of Florent Angly)
USER VISIBLE CHANGES
- as.integer64.double and as.double.integer64
now have an argument keep.names=FALSE
(wish of Dirk Edelbüttel and Leonardo Silvestri)
BUG FIXES
- We now protect our SEXP return-vector before calling R_Busy
(reported by Thomas Kalibera)
- median.integer64 now gets a ... argument if the generic has it
(wish of Kurt Hornik)
- we migrated all files to UTF-8
bit64 0.9-5 (2015-07-05)
USER VISIBLE CHANGES
- The following functions are converted to S3 generics and mask package:base
:, is.double, match, %in%, rank, order
- NA_integer64_ is now available and exported
BUG FIXES
- ramsort.integer64 no longer complains about misssing return
value when stable || optimize == "time" (reported by Dan Southern)
- removed a harmless warning on request of CRAN maintainers
gcc had complained about using %lli format which is not
supported under the windows MCPP compiler, under which
%lli and thus as.character.integer64 will fail.
- now uses R's RNG instead of the system RNG
bit64 0.9-4 (2014-04-09)
BUG FIXES
- The packages now uses clone(x) instead of x[]
- log(x) tests no longer fail under valgrind
(Thanks to Heisenberg it only failed under Valgrind)
- UBSAN should no longer complain about left shift
bit64 0.9-3 (2013-12-05)
USER VISIBLE CHANGES
- The following functions are converted to S3 generics and mask package:base
:, is.double, match, %in%, rank, order
- table.integer64 now automatically converts non-integer64 arguments to integer64
rather than stopping on error (but gives a warning for each column)
- table.integer64 called with return="table" returns empty cells now with
0 rather than NA
- %in%.integer64 no longer has arguments 'nunique' and 'method' in order
to match the generic with only two arguments 'x', 'table' and ...
BUG FIXES
- c(x,x,x) failed with integer64 type because R no longer copies the
arguments in list(...) as from R-3.0.2 . Presumably now the ugly
workaround in table.integer64 is no longer needed but that has NOT
been fixed yet
- round.integer64 no longer removes the "integer64" class attribute
(reported by Dan Southern)
bit64 0.9-2 (2012-11-01)
BUG FIXES
- match.integer64 (and %in%.integer64) now call correctly with
method="hashpos" and method="hashrev"
- removed platform specific timing code that was not needed
and prevented compiling under MacOS
bit64 0.9-1 (2012-10-24)
NEW FEATURES
- new methods for 'match', '%in%', 'duplicated', 'unique', 'table'
, 'sort', 'order', 'rank', 'quantile', 'median' and 'summary'
- new generics and methods for data management:
'unipos' (positions of the unique values)
, 'tiepos' (positions of ties)
, 'keypos' (positions of values in a sorted unique table)
and derived methods 'as.factor' and 'as.ordered'
- new generic caching scheme, see ?cache and ?hashcache
- new low level functions for fast sorting, ordering and hashing,
see ?sortnut and ?hashmap
USER VISIBLE CHANGES
- the package is back on CRAN. Method 'as.vector.integer64' has been removed
at request of the CRAN maintainer. The starting point for this request was:
'matrix(integer64())' does not work. The result of removing
'as.vector.integer64' is a deterioration: 'array(integer64())' does not work
anymore. You can restore 'as.vector.integer64' if you prefer.
- package 'bit64' now shares generics for low-level sorting with package 'ff'
and depends on package 'bit' for those generics
bit64 0.8-3 (2012-02-17)
FIXES
- removed chonst char warning (thanks to Murray Stokely)
- reduced R dependency down to version 2.12.1 (wish of Murray Stokely)