futureverse / futureverse/future
Even less dependencies?
- Dominant language
- R
- Stars
- 1k
- Forks
- 92
- PR merge metrics
- No merged PRs in 30d
Description
One of the many great ideas of the future package is that it tries to be as lightweight as possible, and provide only the minimal toolset which implements the Future API.
Currently, the package imports the following packages:
- globals (imports 'codetools'): to identify global variables
- listenv (no deps): to have environments with numeric indexing (plus internal utilities)
- digest (no non-base deps): to create UUID-s of objects
The 'globals' package is not absolutely necessary, because the user can define the global variables herself (which is even more robust than using the heuristics of 'globals').
The listenv package does not seem to be absolutely necessary, either.
Hashing the objects seems unavoidable, but 'digest' is probably a bit of on overkill for that purpose. (For example 'fastdigest' is faster and much thinner, but also less actively maintained and tested by thousands of users.)
So taken together, it is probably too late to get rid of those dependencies, but a 'future.api' package could be created which has literally no dependencies outside of base R packages, and provides all crucial building blocks of the Future API.
@HenrikBengtsson, what do you think?
Contributor guide
Assessment
This issue has not been assessed yet.