rnaturalearth
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
A side-by-side editorial comparison of dtplyr and writexl — release velocity, themes, recent moves, and the top alternatives to consider.
dtplyr stopped hijacking data.table objects and became an opt-in translator
dtplyr converts dplyr and tidyr code into data.table syntax, and 1.3.0 redrew its boundary: verbs no longer dispatch to dtplyr translations just because dtplyr is loaded, so lazy_dt() has to be called explicitly. Since then the work has been translation coverage — reframe(), case_match(), consecutive_id() — plus a long tail of correctness fixes in grouping and .by.
writexl spent nine years refusing to do formatting, then shipped all of it in 2.0.0.
For most of its history writexl was a deliberately minimal wrapper: bump the vendored libxlsxwriter, handle NA and Date coercion correctly, support a list of data frames for multiple sheets, and nothing else. 2.0.0, released August 2026, changes that — near-full libxlsxwriter coverage, cell/worksheet/workbook formatting, cell comments, an `xl_cell_general` class carrying value, formula and hyperlink, a cell-by-cell refactor, libxlsxwriter 1.2.4, and memory-safety work. It landed the same day as 1.5.4, a typo fix on the old line.
dtplyr converts dplyr and tidyr code into data.table syntax, and 1.3.0 redrew its boundary: verbs no longer dispatch to dtplyr translations just because dtplyr is loaded, so lazy_dt() has to be called explicitly. Since then the work has been translation coverage — reframe(), case_match(), consecutive_id() — plus a long tail of correctness fixes in grouping and .by.
The package is trailing dplyr's own feature releases rather than leading them, adding each new verb once it settles upstream. Performance work is targeted at specific verbs where data.table has a faster primitive: setorder() for arrange(), reference drops for select(), rleid() for consecutive_id(). Release cadence has thinned considerably since 2023.
Expect further one-for-one translations as dplyr adds verbs, and continued fixes around .by and non-standard column names; the entries show no sign of a broader redesign.
For most of its history writexl was a deliberately minimal wrapper: bump the vendored libxlsxwriter, handle NA and Date coercion correctly, support a list of data frames for multiple sheets, and nothing else. 2.0.0, released August 2026, changes that — near-full libxlsxwriter coverage, cell/worksheet/workbook formatting, cell comments, an `xl_cell_general` class carrying value, formula and hyperlink, a cell-by-cell refactor, libxlsxwriter 1.2.4, and memory-safety work. It landed the same day as 1.5.4, a typo fix on the old line.
The package has changed category. Its selling point was being the dependency-free, opinion-free way to get a data frame into xlsx; 2.0.0 makes it a formatting-capable writer that now compares itself against openxlsx2 in its own test suite. The cell-by-cell refactor is what made that possible and is also the largest structural change in the package's history. Note that a single contributor drove essentially all of it.
Expect follow-up releases fixing edge cases in the new formatting and comment APIs — the cell-by-cell rewrite is too large to land clean, and the 2.0.0 notes already mention an off-by-one in date columns.
Other Analytics products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either dtplyr or writexl.
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
rgbif is steadily pushing users off paged searching and onto real downloads.
rstanarm is community-maintained now, tracking Stan and lme4 rather than adding models.
taxa started a ground-up rewrite in 2021 and has published almost nothing since.
rotl's whole release history is keeping name matching honest against a moving taxonomy.
taxize spends its releases absorbing other people's API changes, one dead source at a time.
See all dtplyr alternatives → · See all writexl alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. writexl is currently shipping more aggressively (velocity 6.3 vs 0.0), with 1 editorial sparks in the last 30 days against 0. See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. writexl is currently shipping more aggressively (velocity 6.3 vs 0.0), with 1 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.
Top dtplyr alternatives in Analytics are ranked by recent ship velocity. Browse the "dtplyr alternatives" section above for the current picks, or visit /alternatives/dtplyr for the full list with editorial commentary on each.
Top writexl alternatives in Analytics are ranked by recent ship velocity. Browse the "writexl alternatives" section above for the current picks, or visit /alternatives/writexl for the full list with editorial commentary on each.