Repository navigation
trim suggested dependencies #5745
Description
Activity
I tinkered about removing
curla while ago. Main problem was the support ofR 3.1.0. AFAIRR 3.2.0improvedutils::download.filesa lot.Reacted by Jan Goreckirmarkdown (many, and some heavy, recursive deps), nanotime (heavy recursive deps) and curl (OS dep) are perfect candidates for removal.
-
regarding
rmarkdownI filled https://github.com/rstudio/markdown/issues/108 -
as for
nanotime, I think it is possible. We have fwrite supporting nanotime, but we can still support that without needing to access nanotime namespace. And many tests related to nanotime, which could be migrated to nanotime package, which Suggests on data.table already, so will not add extra overhead. @eddelbuettel remove nanotime suggested dependency #5761 -
as for
curl, we could even raise an error about unsupported case (freadon url), as it will only affect 3.1.0 users, otherwise it is some reason to bump R dependency, but simply asking (3.1.0) users to download their file from url in error message seems fine to me. Removecurlfrom suggests #5749
-
I too wish
nanotimewere lighter but it is what it is. The support of nanosecond timestamp indata.tableis outstanding; I made great use of that a few years ago when I was dealing with nanosecond financial data. I think it would be hard loss. Basicallydata.tablegives us whatxtscan do at the POSIXct level ... but at nanoseconds. The whole grouping, indexing, slicing, dicing, ... It's lovely. (And Leo and I havedttsbuilding on top of this.I went the hard route in a few of my packages and discarded rmarkdown/knitr in favour of lighter alternative but I understand that that is not everybody's coup of tea.
And I concur that we no longer need to cater to users of R 3.1.0.
Reacted by James Lamb@eddelbuettel support of nanotime in data.table would not change at all, we don't need to access nanotime namespace for that. Only tests require loading nanotime that AFAIK, and those tests could be migrated to nanotime package.
Doh, I missed the gist of that. No problem, happy to farm some tests out to my side and have them tickle up in reverse-dependency checks.
[ Also, I am in your crosshairs for the coordinated change of renaming the C API access point I once contributed. (I never quite understood why it needed renaming, but I defer to team data.table here.) So if you need me to change that in the 'consuming' package that accesses it I can of course help with a coordinated upload. Either 1.14.10 or 1.15.0. Happy to assist. ]
Reacted by Jan Gorecki@ben-schwen in case you abandoned your PR branch let us know, curl is now last missing piece to close this issue
resolved
Currently our most heavy dep is knitr. Fortunately it is not that heavy one. Anyway deps could be further improved if/when https://github.com/rstudio/markdown/issues/109 (knitting vignettes directly from markdown pkg without knitr) will be provided
Complete installation of data.table + suggested dependencies results in following packages being installed in a library. While data.table doesn't have any hard dependencies, the soft ones could be trimmed to keep that to the minimum. Not sure how easy, and at what cost, would be possible.
including recursive deps, total 38 packages
and few of them are quite heavy.
curlpackage also imposes extra OS dependency , devel version oflibcurl.Broken down by each Suggested dep: