Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Further reduce readODS dependencies #173

Open
chainsawriot opened this issue Sep 19, 2023 · 4 comments
Open

Further reduce readODS dependencies #173

chainsawriot opened this issue Sep 19, 2023 · 4 comments
Labels

Comments

@chainsawriot
Copy link
Collaborator

See the following issues

Current dependencies of readODS are: c("cellranger", "readr", "stringi", "tibble", "vctrs", "zip") See below when readr is no longer a dependency.

Should we try to spin off readr::type_convert() from readr?

deps <- c("cellranger", "readr", "stringi", "tibble", "vctrs", "zip", "cpp11")

ori <- rang::resolve(deps, snapshot_date = Sys.Date())
nrow(rang:::.generate_installation_order(ori))
#> [1] 29

rang:::.generate_installation_order(ori)
#>              x version source      handle  uid
#> 1          zip   2.3.0   cran         zip <NA>
#> 2      stringi  1.7.12   cran     stringi <NA>
#> 3        clipr   0.8.0   cran       clipr <NA>
#> 4          bit   4.0.5   cran         bit <NA>
#> 5       crayon   1.5.2   cran      crayon <NA>
#> 6        withr   2.5.0   cran       withr <NA>
#> 7  prettyunits   1.1.1   cran prettyunits <NA>
#> 8           R6   2.5.1   cran          R6 <NA>
#> 9        cpp11   0.4.6   cran       cpp11 <NA>
#> 10     rematch   2.0.0   cran     rematch <NA>
#> 11       fansi   1.0.4   cran       fansi <NA>
#> 12    magrittr   2.0.3   cran    magrittr <NA>
#> 13        utf8   1.2.3   cran        utf8 <NA>
#> 14   pkgconfig   2.0.3   cran   pkgconfig <NA>
#> 15       rlang   1.1.1   cran       rlang <NA>
#> 16         cli   3.6.1   cran         cli <NA>
#> 17        glue   1.6.2   cran        glue <NA>
#> 18       bit64   4.0.5   cran       bit64 <NA>
#> 19        tzdb   0.4.0   cran        tzdb <NA>
#> 20   lifecycle   1.0.3   cran   lifecycle <NA>
#> 21       vctrs   0.6.3   cran       vctrs <NA>
#> 22         hms   1.1.3   cran         hms <NA>
#> 23  tidyselect   1.2.0   cran  tidyselect <NA>
#> 24    progress   1.2.2   cran    progress <NA>
#> 25      pillar   1.9.0   cran      pillar <NA>
#> 26      tibble   3.2.1   cran      tibble <NA>
#> 27  cellranger   1.1.0   cran  cellranger <NA>
#> 28       vroom   1.6.3   cran       vroom <NA>
#> 29       readr   2.1.4   cran       readr <NA>

mod_deps <- c("cellranger", "stringi", "tibble", "vctrs", "zip", "cpp11")

mod <- rang::resolve(mod_deps, snapshot_date = Sys.Date())
nrow(rang:::.generate_installation_order(mod))
#> [1] 16

rang:::.generate_installation_order(mod)
#>             x version source     handle  uid
#> 1       cpp11   0.4.6   cran      cpp11 <NA>
#> 2         zip   2.3.0   cran        zip <NA>
#> 3     stringi  1.7.12   cran    stringi <NA>
#> 4     rematch   2.0.0   cran    rematch <NA>
#> 5       fansi   1.0.4   cran      fansi <NA>
#> 6    magrittr   2.0.3   cran   magrittr <NA>
#> 7        utf8   1.2.3   cran       utf8 <NA>
#> 8   pkgconfig   2.0.3   cran  pkgconfig <NA>
#> 9       rlang   1.1.1   cran      rlang <NA>
#> 10        cli   3.6.1   cran        cli <NA>
#> 11       glue   1.6.2   cran       glue <NA>
#> 12  lifecycle   1.0.3   cran  lifecycle <NA>
#> 13      vctrs   0.6.3   cran      vctrs <NA>
#> 14     pillar   1.9.0   cran     pillar <NA>
#> 15     tibble   3.2.1   cran     tibble <NA>
#> 16 cellranger   1.1.0   cran cellranger <NA>

Created on 2023-09-19 with reprex v2.0.2

@chainsawriot
Copy link
Collaborator Author

chainsawriot commented Sep 19, 2023

TODO

  • Measure the current installation time on blank state Rocker.

readODS v 2.1.0

  • 51s (but no compilation)
  • 409s (with compilation)

@chainsawriot
Copy link
Collaborator Author

In progress gesistsa/minty#2

chainsawriot added a commit that referenced this issue May 22, 2024
* experiment with minty

* minty is on CRAN
@chainsawriot
Copy link
Collaborator Author

With compilation + Download R 4.4.0 7289c7d - 134s

@chainsawriot
Copy link
Collaborator Author

19 dependencies (10 less than the current CRAN version), not bad.

           x    version source           handle
1     rematch      2.0.0   cran          rematch
2       cpp11      0.4.7   cran            cpp11
3     stringi      1.8.4   cran          stringi
4       fansi      1.0.6   cran            fansi
5    magrittr      2.0.3   cran         magrittr
6        utf8      1.2.4   cran             utf8
7   pkgconfig      2.0.3   cran        pkgconfig
8         cli      3.6.2   cran              cli
9        glue      1.7.0   cran             glue
10      rlang      1.1.3   cran            rlang
11        zip      2.3.1   cran              zip
12       tzdb      0.4.0   cran             tzdb
13      minty      0.0.1   cran            minty
14  lifecycle      1.0.4   cran        lifecycle
15      vctrs      0.6.5   cran            vctrs
16     pillar      1.9.0   cran           pillar
17     tibble      3.2.1   cran           tibble
18 cellranger      1.1.0   cran       cellranger
19    readODS 2.2.0.9999 github ropensci/readODS

@chainsawriot chainsawriot added v3.0 and removed v2.3 labels Jun 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant