I can't install your package (I don't have an up to date GDAL), but
maybe this is some help:
- Package dependencies aren't included, except possibly for static
linking of C/Fortran/C++ code. Those normally won't end up in an .rdb file.
- .rdb files are part of the lazy load mechanism. You can read the
corresponding .rdx file using readRDS(); it contains information on
where to look in the .rdb file to find the source of an object. For
example, if you have foo.rdb and foo.rdx, then this will tell you what's
big in your foo.rdb file:
rdx <- readRDS("foo.rdx")
sizes <- sapply(rdx$variables, function(n) n[2])
Now sizes will be a named vector of objects contained in the rdb. You
should find that sum(sizes) is similar to the size of the .rdb file, but
probably a bit smaller, because there are some objects missed by this
count: the ones contained in rdx$references.
Duncan Murdoch
On 15/06/2020 7:13 a.m., Daniel Kelley wrote:
I am working on a package (https://github.com/ArgoCanada/argoFloats) that has a
412K source tarball (most of which is data; the R code is 176K), but that
creates a library .rdb file of MUCH larger size, namely 7.2M. This file causes
a build NOTE, being over the threshold of 1M, and that concerns me in terms of
hoped-for submission to CRAN during this summer.
My goal in writing this email is to get some advice regarding reducing the size
of the .rds file, if indeed this is a general problem and not an artifact of my
(macOS) development environment.
Here's some more detail:
argoFloats depends on some other packages, and so I am wondering whether the large
multiplier between R source and .rdb file is because the other sources are dragged in. I
could try moving everything to "Suggests", and use requireNamespace(), but that
seems to go against recommendations, if I interpret Wickham and Bryan
(https://r-pkgs.org/description.html) correctly.
A possible clue is that I get a large-file note on macOS, but not when I use
rhub for test linux builds, or winbuilder for a windows build. I do not have
ready access to either linux or windows machines, to examine those builds in
detail.
My thinking is that examination of the .rdb file might help me to learn about problems (e.g. if it holds code
from packages I "import" from, that might motivate me to move from "import" to
"suggest"). Unfortunately, I have not been able to discover a way to examine that file, which seems
to be designed for internal R use.
I am attaching below my signature line the output from sessionInfo(), in case
that helps. The URL I reference in my second paragraph has my DESCRIPTION
file, and I will admit that I do not fully understand its nuances. Note that I
use roxygen2 to build documentation and NAMESPACE.
Any advice would be greatly appreciated, and indeed I thank anyone who got to
the bottom of this long email.
Dan E. Kelley [he/him/his 314ppm]
Department of Oceanography
Dalhousie University
Halifax, NS, Canada
R version 4.0.1 (2020-06-06)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Catalina 10.15.6
Matrix products: default
BLAS:
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK:
/Library/Frameworks/R.framework/Versions/4.0/Resources/lib/libRlapack.dylib
locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] argoFloats_0.1.3
loaded via a namespace (and not attached):
[1] Rcpp_1.0.4.6 pillar_1.4.4 compiler_4.0.1 plyr_1.8.6
class_7.3-17
[6] tools_4.0.1 testthat_2.3.2 digest_0.6.25 bit_1.1-15.2
ncdf4_1.17
[11] oce_1.2-1 memoise_1.1.0 RSQLite_2.2.0
lifecycle_0.2.0 tibble_3.0.1
[16] gtable_0.3.0 lattice_0.20-41 gsw_1.0-6
pkgconfig_2.0.3 rlang_0.4.6
[21] DBI_1.1.0 rstudioapi_0.11 curl_4.3 e1071_1.7-3
dplyr_1.0.0
[26] stringr_1.4.0 raster_3.1-5 generics_0.0.2 vctrs_0.3.1
classInt_0.4-3
[31] bit64_0.9-7 grid_4.0.1 tidyselect_1.1.0 glue_1.4.1
sf_0.9-4
[36] R6_2.4.1 sp_1.4-2 marmap_1.0.4
adehabitatMA_0.3.14 blob_1.2.1
[41] ggplot2_3.3.1 purrr_0.3.4 reshape2_1.4.4 magrittr_1.5
units_0.6-6
[46] scales_1.1.1 codetools_0.2-16 ellipsis_0.3.1 shape_1.4.4
colorspace_1.4-1
[51] KernSmooth_2.23-17 stringi_1.4.6 munsell_0.5.0
crayon_1.3.4.9000
______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel
______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel