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
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -333,6 +333,8 @@
333
333
334
334
19. Ellipsis elements like `..1` are correctly excluded when searching for variables in "up-a-level" syntax inside `[`, [#5460](https://github.com/Rdatatable/data.table/issues/5460). Thanks @ggrothendieck for the report and @MichaelChirico for the fix.
335
335
336
+
20. BREAKING CHANGE: `week()` now calculates the week of the year sequentially (days 1-7 are week 1), fixing a bug where the first week could have 6 days. A one-time warning is now issued if this change affects the output for a given input, which can be disabled via `options(datatable.warn.week.change = FALSE)`. [#2611](https://github.com/Rdatatable/data.table/issues/2611). Thanks to @MichaelChirico for the report and @venom1204 for the fix.
337
+
336
338
### NOTES
337
339
338
340
1. The following in-progress deprecations have proceeded:
if (!isLogical(dt_week_warn_opt) ||LOGICAL(dt_week_warn_opt)[0] != FALSE) {
152
+
for (inti=0; i<n; i++) {
153
+
if (ix[i] ==NA_INTEGER) continue;
154
+
155
+
intyday;
156
+
convertSingleDate(ix[i], YDAY, &yday);
157
+
158
+
intold_week= (yday / 7) +1;
159
+
intnew_week= ((yday-1) / 7) +1;
160
+
161
+
if (new_week!=old_week) {
162
+
Rf_warning("data.table::week() behavior has changed and is now sequential (day 1-7 is week 1). The first week of the year may differ from previous versions. To suppress this warning, run: options(datatable.warn.week.change = FALSE)");
0 commit comments