You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: NEWS.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,10 @@
6
6
7
7
1. New `sort_by()` method for data.tables, [#6662](https://github.com/Rdatatable/data.table/issues/6662). It uses `forder()` to improve upon the data.frame method and also match `DT[order(...)]` behavior with respect to locale. Thanks @rikivillalba for the suggestion and PR.
8
8
9
+
## BUG FIXES
10
+
11
+
1. Custom binary operators from the `lubridate` package now work with objects of class `IDate` as with a `Date` subclass, [#6839](https://github.com/Rdatatable/data.table/issues/6839). Thanks @emallickhossain for the report and @aitap for the fix.
12
+
9
13
# data.table [v1.17.0](https://github.com/Rdatatable/data.table/milestone/34) (20 Feb 2025)
stopf("It looks like you re-used `:=` in argument %d a functional assignment call -- use `=` instead: %s(col1=val1, col2=val2, ...)", jj-1L, call_name)
if (typeof(x)=="double"&&!decreasing&&!(containsNAs<- anyNA(x))) {
211
-
if (internal) stopf("Internal code should not be being called on type double")
212
-
return(.Call(Cfsort, x, verbose))
210
+
if (typeof(x)=="double"&&!decreasing&&!(containsNAs<- anyNA(x))) {
211
+
if (internal) stopf("Internal code should not be being called on type double")
212
+
return(.Call(Cfsort, x, verbose))
213
213
}
214
-
else {
215
-
# fsort is now exported for testing. Trying to head off complaints "it's slow on integer"
216
-
# The only places internally we use fsort internally (3 calls, all on integer) have had internal=TRUE added for now.
217
-
# TODO: implement integer and character in Cfsort and remove this branch and warning
218
-
if (!internal){
219
-
if (typeof(x)!="double") warningf("Input is not a vector of type double. New parallel sort has only been done for double vectors so far. Using one thread.")
220
-
if (decreasing) warningf("New parallel sort has not been implemented for decreasing=TRUE so far. Using one thread.")
221
-
if (containsNAs) warningf("New parallel sort has not been implemented for vectors containing NA values so far. Using one thread.")
222
-
}
223
-
orderArg=if (decreasing) -1Lelse1L
224
-
o= forderv(x, order=orderArg, na.last=na.last)
225
-
return( if (length(o)) x[o] elsex )
214
+
# fsort is now exported for testing. Trying to head off complaints "it's slow on integer"
215
+
# The only places internally we use fsort internally (3 calls, all on integer) have had internal=TRUE added for now.
216
+
# TODO: implement integer and character in Cfsort and remove this branch and warning
217
+
if (!internal) {
218
+
if (typeof(x) !="double") warningf("Input is not a vector of type double. New parallel sort has only been done for double vectors so far. Using one thread.")
219
+
if (decreasing) warningf("New parallel sort has not been implemented for decreasing=TRUE so far. Using one thread.")
220
+
if (containsNAs) warningf("New parallel sort has not been implemented for vectors containing NA values so far. Using one thread.")
# Similar code for under-allocated data.tables in S4 slots, #6704
119
119
setClass("DataTable", slots=c(x="data.table"))
120
120
test(7.2, options=c(datatable.alloccol=0L), {DT = new("DataTable", x=data.table(a=1)); DT@x[, b := 2L]; DT@x$b}, 2L) # NB: requires assigning DT to test assignment back to that object
121
+
122
+
# IDate was not visible as Date to S4 dispatch, #6839
0 commit comments