@@ -1,9 +0,0 @@ | |||
run_modules: | |||
- rnaseq_data_generation_information | |||
- rnaseq_performance_assessment | |||
- rnaseq_raw_qc | |||
- rnaseq_post_alignment_qc | |||
- rnaseq_quantification_qc | |||
- rnaseq_supplementary | |||
skip_generalstats: true |
@@ -0,0 +1,858 @@ | |||
{ | |||
"R": { | |||
"Version": "3.6.3", | |||
"Repositories": [ | |||
{ | |||
"Name": "CRAN", | |||
"URL": "https://cloud.r-project.org" | |||
} | |||
] | |||
}, | |||
"Bioconductor": { | |||
"Version": "3.10" | |||
}, | |||
"Packages": { | |||
"BH": { | |||
"Package": "BH", | |||
"Version": "1.72.0-3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "8f9ce74c6417d61f0782cbae5fd2b7b0" | |||
}, | |||
"BiocManager": { | |||
"Package": "BiocManager", | |||
"Version": "1.30.12", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "462dbb15753eb52fb62e28507f382d2d" | |||
}, | |||
"BiocVersion": { | |||
"Package": "BiocVersion", | |||
"Version": "3.10.1", | |||
"Source": "Bioconductor", | |||
"Hash": "b69e4e634db423b8e6c58103d579ec95" | |||
}, | |||
"DT": { | |||
"Package": "DT", | |||
"Version": "0.15", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "85738c69035e67ec4b484a5e02640ef6" | |||
}, | |||
"KernSmooth": { | |||
"Package": "KernSmooth", | |||
"Version": "2.23-16", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "997471f25a7ed6c782f0090ce52cc63a" | |||
}, | |||
"MASS": { | |||
"Package": "MASS", | |||
"Version": "7.3-52", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "095c8b0dd20f5d9c2a75cf72fdd74dab" | |||
}, | |||
"Matrix": { | |||
"Package": "Matrix", | |||
"Version": "1.2-18", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "08588806cba69f04797dab50627428ed" | |||
}, | |||
"R6": { | |||
"Package": "R6", | |||
"Version": "2.4.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "292b54f8f4b94669b08f94e5acce6be2" | |||
}, | |||
"RColorBrewer": { | |||
"Package": "RColorBrewer", | |||
"Version": "1.1-2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "e031418365a7f7a766181ab5a41a5716" | |||
}, | |||
"Rcpp": { | |||
"Package": "Rcpp", | |||
"Version": "0.12.18", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "75ffd49f2ce7309ffd72ca94b491ccf4" | |||
}, | |||
"askpass": { | |||
"Package": "askpass", | |||
"Version": "1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "e8a22846fff485f0be3770c2da758713" | |||
}, | |||
"assertthat": { | |||
"Package": "assertthat", | |||
"Version": "0.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "7b2aa2be4bd0497000a5a399f07da3f1" | |||
}, | |||
"backports": { | |||
"Package": "backports", | |||
"Version": "1.1.9", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b29e2d989dfb2e71ca3fd7d5bb1c0d58" | |||
}, | |||
"base64enc": { | |||
"Package": "base64enc", | |||
"Version": "0.1-3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "543776ae6848fde2f48ff3816d0628bc" | |||
}, | |||
"boot": { | |||
"Package": "boot", | |||
"Version": "1.3-24", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "72557d88b5f42f01221dfa436de99301" | |||
}, | |||
"brew": { | |||
"Package": "brew", | |||
"Version": "1.0-6", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "92a5f887f9ae3035ac7afde22ba73ee9" | |||
}, | |||
"callr": { | |||
"Package": "callr", | |||
"Version": "3.4.3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "643163a00cb536454c624883a10ae0bc" | |||
}, | |||
"class": { | |||
"Package": "class", | |||
"Version": "7.3-15", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "4fba6a022803b6c3f30fd023be3fa818" | |||
}, | |||
"cli": { | |||
"Package": "cli", | |||
"Version": "2.0.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ff0becff7bfdfe3f75d29aff8f3172dd" | |||
}, | |||
"clipr": { | |||
"Package": "clipr", | |||
"Version": "0.7.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "08cf4045c149a0f0eaf405324c7495bd" | |||
}, | |||
"cluster": { | |||
"Package": "cluster", | |||
"Version": "2.1.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "db63a44aab5aadcb6bf2f129751d129a" | |||
}, | |||
"codetools": { | |||
"Package": "codetools", | |||
"Version": "0.2-16", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "89cf4b8207269ccf82fbeb6473fd662b" | |||
}, | |||
"colorspace": { | |||
"Package": "colorspace", | |||
"Version": "1.4-1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6b436e95723d1f0e861224dd9b094dfb" | |||
}, | |||
"commonmark": { | |||
"Package": "commonmark", | |||
"Version": "1.7", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "0f22be39ec1d141fd03683c06f3a6e67" | |||
}, | |||
"covr": { | |||
"Package": "covr", | |||
"Version": "3.5.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "cbc6df1ef6ee576f844f973c1fc04ab4" | |||
}, | |||
"cowplot": { | |||
"Package": "cowplot", | |||
"Version": "1.0.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "82bae0172ae9d4c4f88a440ad01f73bb" | |||
}, | |||
"crayon": { | |||
"Package": "crayon", | |||
"Version": "1.3.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "0d57bc8e27b7ba9e45dba825ebc0de6b" | |||
}, | |||
"crosstalk": { | |||
"Package": "crosstalk", | |||
"Version": "1.1.0.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ae55f5d7c02f0ab43c58dd050694f2b4" | |||
}, | |||
"curl": { | |||
"Package": "curl", | |||
"Version": "4.3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "2b7d10581cc730804e9ed178c8374bd6" | |||
}, | |||
"data.table": { | |||
"Package": "data.table", | |||
"Version": "1.13.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "06d5863292e2e8ffbb063ce34e77bb2a" | |||
}, | |||
"desc": { | |||
"Package": "desc", | |||
"Version": "1.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6c8fe8fa26a23b79949375d372c7b395" | |||
}, | |||
"devtools": { | |||
"Package": "devtools", | |||
"Version": "2.3.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "271df6a328617c64149283e98b1cd8da" | |||
}, | |||
"digest": { | |||
"Package": "digest", | |||
"Version": "0.6.15", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "706759233d88683f590d78ab6c82360a" | |||
}, | |||
"dplyr": { | |||
"Package": "dplyr", | |||
"Version": "1.0.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "d0509913b27ea898189ee664b6030dc2" | |||
}, | |||
"edgeR": { | |||
"Package": "edgeR", | |||
"Version": "3.28.1", | |||
"Source": "Bioconductor", | |||
"Hash": "89c7b7cf2495fd8a434f6d0b40ec5060" | |||
}, | |||
"ellipsis": { | |||
"Package": "ellipsis", | |||
"Version": "0.3.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "fd2844b3a43ae2d27e70ece2df1b4e2a" | |||
}, | |||
"evaluate": { | |||
"Package": "evaluate", | |||
"Version": "0.14", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ec8ca05cffcc70569eaaad8469d2a3a7" | |||
}, | |||
"exp2qcdt": { | |||
"Package": "exp2qcdt", | |||
"Version": "0.2.2", | |||
"Source": "GitHub", | |||
"RemoteType": "github", | |||
"RemoteHost": "api.github.com", | |||
"RemoteRepo": "exp2qcdt", | |||
"RemoteUsername": "clinico-omics", | |||
"RemoteRef": "HEAD", | |||
"RemoteSha": "319a5eba8f9b5b5e3355ac8045f573a400627583", | |||
"Hash": "31f1244a56a68cfb8184738fd9210523" | |||
}, | |||
"fansi": { | |||
"Package": "fansi", | |||
"Version": "0.4.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "7fce217eaaf8016e72065e85c73027b5" | |||
}, | |||
"farver": { | |||
"Package": "farver", | |||
"Version": "2.0.3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "dad6793a5a1f73c8e91f1a1e3e834b05" | |||
}, | |||
"foreign": { | |||
"Package": "foreign", | |||
"Version": "0.8-75", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "9a7efaa7320b9f327a904d1e615b0b46" | |||
}, | |||
"fs": { | |||
"Package": "fs", | |||
"Version": "1.5.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "44594a07a42e5f91fac9f93fda6d0109" | |||
}, | |||
"gdata": { | |||
"Package": "gdata", | |||
"Version": "2.18.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "465ccb84427f5fe2c54f8620666db131" | |||
}, | |||
"generics": { | |||
"Package": "generics", | |||
"Version": "0.0.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b8cff1d1391fd1ad8b65877f4c7f2e53" | |||
}, | |||
"ggplot2": { | |||
"Package": "ggplot2", | |||
"Version": "3.3.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "4ded8b439797f7b1693bd3d238d0106b" | |||
}, | |||
"ggthemes": { | |||
"Package": "ggthemes", | |||
"Version": "4.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "dfa67ccc3fb199f102a34d557ec1ff45" | |||
}, | |||
"gh": { | |||
"Package": "gh", | |||
"Version": "1.1.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "89ea5998938d1ad55f035c8a86f96b74" | |||
}, | |||
"git2r": { | |||
"Package": "git2r", | |||
"Version": "0.27.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "531a82d1beed1f545beb25f4f5945bf7" | |||
}, | |||
"glue": { | |||
"Package": "glue", | |||
"Version": "1.4.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "f43e0d5e85ccb0a4045670c0607ee504" | |||
}, | |||
"gmodels": { | |||
"Package": "gmodels", | |||
"Version": "2.18.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "beb8ca96406a2828f25e49ab17001c39" | |||
}, | |||
"gtable": { | |||
"Package": "gtable", | |||
"Version": "0.3.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ac5c6baf7822ce8732b343f14c072c4d" | |||
}, | |||
"gtools": { | |||
"Package": "gtools", | |||
"Version": "3.8.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "0a749b4458d19a54acae93c64e3e7c85" | |||
}, | |||
"highr": { | |||
"Package": "highr", | |||
"Version": "0.8", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "4dc5bb88961e347a0f4d8aad597cbfac" | |||
}, | |||
"htmltools": { | |||
"Package": "htmltools", | |||
"Version": "0.5.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "7d651b7131794fe007b1ad6f21aaa401" | |||
}, | |||
"htmlwidgets": { | |||
"Package": "htmlwidgets", | |||
"Version": "1.5.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "41bace23583fbc25089edae324de2dc3" | |||
}, | |||
"httr": { | |||
"Package": "httr", | |||
"Version": "1.4.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "a525aba14184fec243f9eaec62fbed43" | |||
}, | |||
"ini": { | |||
"Package": "ini", | |||
"Version": "0.3.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6154ec2223172bce8162d4153cda21f7" | |||
}, | |||
"isoband": { | |||
"Package": "isoband", | |||
"Version": "0.2.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6e58bd3d6b3dd82a944cd6f05ade228f" | |||
}, | |||
"jsonlite": { | |||
"Package": "jsonlite", | |||
"Version": "1.7.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "2657f20b9a74c996c602e74ebe540b06" | |||
}, | |||
"knitr": { | |||
"Package": "knitr", | |||
"Version": "1.29", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "e5f4c41c17df8cdf7b0df12117c0d99a" | |||
}, | |||
"labeling": { | |||
"Package": "labeling", | |||
"Version": "0.3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "73832978c1de350df58108c745ed0e3e" | |||
}, | |||
"later": { | |||
"Package": "later", | |||
"Version": "1.1.0.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "d0a62b247165aabf397fded504660d8a" | |||
}, | |||
"lattice": { | |||
"Package": "lattice", | |||
"Version": "0.20-38", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "848f8c593fd1050371042d18d152e3d7" | |||
}, | |||
"lazyeval": { | |||
"Package": "lazyeval", | |||
"Version": "0.2.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "d908914ae53b04d4c0c0fd72ecc35370" | |||
}, | |||
"lifecycle": { | |||
"Package": "lifecycle", | |||
"Version": "0.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "361811f31f71f8a617a9a68bf63f1f42" | |||
}, | |||
"limma": { | |||
"Package": "limma", | |||
"Version": "3.42.2", | |||
"Source": "Bioconductor", | |||
"Hash": "d56e7c663eb11536c78fe2f25d9fa544" | |||
}, | |||
"locfit": { | |||
"Package": "locfit", | |||
"Version": "1.5-9.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "760b5b542e8435237d1b3c253bfe18e7" | |||
}, | |||
"magrittr": { | |||
"Package": "magrittr", | |||
"Version": "1.5", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "1bb58822a20301cee84a41678e25d9b7" | |||
}, | |||
"markdown": { | |||
"Package": "markdown", | |||
"Version": "1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "61e4a10781dd00d7d81dd06ca9b94e95" | |||
}, | |||
"memoise": { | |||
"Package": "memoise", | |||
"Version": "1.1.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "58baa74e4603fcfb9a94401c58c8f9b1" | |||
}, | |||
"mgcv": { | |||
"Package": "mgcv", | |||
"Version": "1.8-31", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "4bb7e0c4f3557583e1e8d3c9ffb8ba5c" | |||
}, | |||
"mime": { | |||
"Package": "mime", | |||
"Version": "0.9", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "e87a35ec73b157552814869f45a63aa3" | |||
}, | |||
"munsell": { | |||
"Package": "munsell", | |||
"Version": "0.5.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6dfe8bf774944bd5595785e3229d8771" | |||
}, | |||
"nlme": { | |||
"Package": "nlme", | |||
"Version": "3.1-144", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "e80d41932d3cc235ccbbbb9732ae162e" | |||
}, | |||
"nnet": { | |||
"Package": "nnet", | |||
"Version": "7.3-12", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "68287aec1f476c41d16ce1ace445800c" | |||
}, | |||
"openssl": { | |||
"Package": "openssl", | |||
"Version": "1.4.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b3209c62052922b6c629544d94c8fa8a" | |||
}, | |||
"pillar": { | |||
"Package": "pillar", | |||
"Version": "1.4.6", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "bdf26e55ccb7df3e49a490150277f002" | |||
}, | |||
"pkgbuild": { | |||
"Package": "pkgbuild", | |||
"Version": "1.1.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "404684bc4e3685007f9720adf13b06c1" | |||
}, | |||
"pkgconfig": { | |||
"Package": "pkgconfig", | |||
"Version": "2.0.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b8a063ca3694e651ac46f71b4bf0e090" | |||
}, | |||
"pkgload": { | |||
"Package": "pkgload", | |||
"Version": "1.1.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b6b150cd4709e0c0c9b5d51ac4376282" | |||
}, | |||
"plyr": { | |||
"Package": "plyr", | |||
"Version": "1.8.6", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ec0e5ab4e5f851f6ef32cd1d1984957f" | |||
}, | |||
"praise": { | |||
"Package": "praise", | |||
"Version": "1.0.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "a555924add98c99d2f411e37e7d25e9f" | |||
}, | |||
"prettyunits": { | |||
"Package": "prettyunits", | |||
"Version": "1.1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "95ef9167b75dde9d2ccc3c7528393e7e" | |||
}, | |||
"processx": { | |||
"Package": "processx", | |||
"Version": "3.4.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "03446ed0b8129916f73676726cb3c48f" | |||
}, | |||
"promises": { | |||
"Package": "promises", | |||
"Version": "1.1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "a8730dcbdd19f9047774909f0ec214a4" | |||
}, | |||
"ps": { | |||
"Package": "ps", | |||
"Version": "1.3.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "a54a7dfd68124abb2225dbfa9a85c457" | |||
}, | |||
"purrr": { | |||
"Package": "purrr", | |||
"Version": "0.3.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "97def703420c8ab10d8f0e6c72101e02" | |||
}, | |||
"rcmdcheck": { | |||
"Package": "rcmdcheck", | |||
"Version": "1.3.3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ed95895886dab6d2a584da45503555da" | |||
}, | |||
"rematch2": { | |||
"Package": "rematch2", | |||
"Version": "2.1.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "76c9e04c712a05848ae7a23d2f170a40" | |||
}, | |||
"remotes": { | |||
"Package": "remotes", | |||
"Version": "2.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "430a0908aee75b1fcba0e62857cab0ce" | |||
}, | |||
"renv": { | |||
"Package": "renv", | |||
"Version": "0.13.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "9f10d9db5b50400c348920c5c603385e" | |||
}, | |||
"reshape2": { | |||
"Package": "reshape2", | |||
"Version": "1.4.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "bb5996d0bd962d214a11140d77589917" | |||
}, | |||
"rex": { | |||
"Package": "rex", | |||
"Version": "1.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "093584b944440c5cd07a696b3c8e0e4c" | |||
}, | |||
"rlang": { | |||
"Package": "rlang", | |||
"Version": "0.4.7", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "c06d2a6887f4b414f8e927afd9ee976a" | |||
}, | |||
"roxygen2": { | |||
"Package": "roxygen2", | |||
"Version": "7.1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "fcd94e00cc409b25d07ca50f7bf339f5" | |||
}, | |||
"rpart": { | |||
"Package": "rpart", | |||
"Version": "4.1-15", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "9787c1fcb680e655d062e7611cadf78e" | |||
}, | |||
"rprojroot": { | |||
"Package": "rprojroot", | |||
"Version": "1.3-2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "f6a407ae5dd21f6f80a6708bbb6eb3ae" | |||
}, | |||
"rstudioapi": { | |||
"Package": "rstudioapi", | |||
"Version": "0.11", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "33a5b27a03da82ac4b1d43268f80088a" | |||
}, | |||
"rversions": { | |||
"Package": "rversions", | |||
"Version": "2.0.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "0ec41191f744d0f5afad8c6f35cc36e4" | |||
}, | |||
"scales": { | |||
"Package": "scales", | |||
"Version": "1.1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6f76f71042411426ec8df6c54f34e6dd" | |||
}, | |||
"sessioninfo": { | |||
"Package": "sessioninfo", | |||
"Version": "1.1.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "308013098befe37484df72c39cf90d6e" | |||
}, | |||
"spatial": { | |||
"Package": "spatial", | |||
"Version": "7.3-11", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "f27a078d834614513608da2c08031130" | |||
}, | |||
"stringi": { | |||
"Package": "stringi", | |||
"Version": "1.2.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "bca4c3464ae356a8649d907944da78b4" | |||
}, | |||
"stringr": { | |||
"Package": "stringr", | |||
"Version": "1.4.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "0759e6b6c0957edb1311028a49a35e76" | |||
}, | |||
"survival": { | |||
"Package": "survival", | |||
"Version": "3.1-8", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ad25122f95d04988f6f79d69aaadd53d" | |||
}, | |||
"sys": { | |||
"Package": "sys", | |||
"Version": "3.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b227d13e29222b4574486cfcbde077fa" | |||
}, | |||
"testthat": { | |||
"Package": "testthat", | |||
"Version": "2.3.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "0829b987b8961fb07f3b1b64a2fbc495" | |||
}, | |||
"tibble": { | |||
"Package": "tibble", | |||
"Version": "3.0.3", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "08bd36bd34b20d4f7971d49e81deaab0" | |||
}, | |||
"tidyr": { | |||
"Package": "tidyr", | |||
"Version": "0.8.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "95ded1450e6af17d0d3eb4b39233c43d" | |||
}, | |||
"tidyselect": { | |||
"Package": "tidyselect", | |||
"Version": "1.1.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6ea435c354e8448819627cf686f66e0a" | |||
}, | |||
"usethis": { | |||
"Package": "usethis", | |||
"Version": "1.6.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "e1985f5a9985fea2e338fa7eb99018ca" | |||
}, | |||
"utf8": { | |||
"Package": "utf8", | |||
"Version": "1.1.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "4a5081acfb7b81a572e4384a7aaf2af1" | |||
}, | |||
"vctrs": { | |||
"Package": "vctrs", | |||
"Version": "0.3.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "5ba3006888ac62fd5e97b208d00d3317" | |||
}, | |||
"viridisLite": { | |||
"Package": "viridisLite", | |||
"Version": "0.3.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ce4f6271baa94776db692f1cb2055bee" | |||
}, | |||
"whisker": { | |||
"Package": "whisker", | |||
"Version": "0.4", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ca970b96d894e90397ed20637a0c1bbe" | |||
}, | |||
"withr": { | |||
"Package": "withr", | |||
"Version": "2.2.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "ecd17882a0b4419545691e095b74ee89" | |||
}, | |||
"xfun": { | |||
"Package": "xfun", | |||
"Version": "0.16", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "b4106139b90981a8bfea9c10bab0baf1" | |||
}, | |||
"xml2": { | |||
"Package": "xml2", | |||
"Version": "1.3.2", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "d4d71a75dd3ea9eb5fa28cc21f9585e2" | |||
}, | |||
"xopen": { | |||
"Package": "xopen", | |||
"Version": "1.0.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "6c85f015dee9cc7710ddd20f86881f58" | |||
}, | |||
"yaml": { | |||
"Package": "yaml", | |||
"Version": "2.2.1", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "2826c5d9efb0a88f657c7a679c7106db" | |||
} | |||
} | |||
} |
@@ -1,3 +1,5 @@ | |||
library/ | |||
local/ | |||
lock/ | |||
python/ | |||
staging/ |
@@ -2,7 +2,7 @@ | |||
local({ | |||
# the requested version of renv | |||
version <- "0.12.0" | |||
version <- "0.13.0" | |||
# the project directory | |||
project <- getwd() | |||
@@ -39,16 +39,6 @@ local({ | |||
# load bootstrap tools | |||
bootstrap <- function(version, library) { | |||
# read repos (respecting override if set) | |||
repos <- Sys.getenv("RENV_CONFIG_REPOS_OVERRIDE", unset = NA) | |||
if (is.na(repos)) | |||
repos <- getOption("repos") | |||
# fix up repos | |||
on.exit(options(repos = repos), add = TRUE) | |||
repos[repos == "@CRAN@"] <- "https://cloud.r-project.org" | |||
options(repos = repos) | |||
# attempt to download renv | |||
tarball <- tryCatch(renv_bootstrap_download(version), error = identity) | |||
if (inherits(tarball, "error")) | |||
@@ -61,6 +51,66 @@ local({ | |||
} | |||
renv_bootstrap_tests_running <- function() { | |||
getOption("renv.tests.running", default = FALSE) | |||
} | |||
renv_bootstrap_repos <- function() { | |||
# check for repos override | |||
repos <- Sys.getenv("RENV_CONFIG_REPOS_OVERRIDE", unset = NA) | |||
if (!is.na(repos)) | |||
return(repos) | |||
# if we're testing, re-use the test repositories | |||
if (renv_bootstrap_tests_running()) | |||
return(getOption("renv.tests.repos")) | |||
# retrieve current repos | |||
repos <- getOption("repos") | |||
# ensure @CRAN@ entries are resolved | |||
repos[repos == "@CRAN@"] <- "https://cloud.r-project.org" | |||
# add in renv.bootstrap.repos if set | |||
default <- c(FALLBACK = "https://cloud.r-project.org") | |||
extra <- getOption("renv.bootstrap.repos", default = default) | |||
repos <- c(repos, extra) | |||
# remove duplicates that might've snuck in | |||
dupes <- duplicated(repos) | duplicated(names(repos)) | |||
repos[!dupes] | |||
} | |||
renv_bootstrap_download <- function(version) { | |||
# if the renv version number has 4 components, assume it must | |||
# be retrieved via github | |||
nv <- numeric_version(version) | |||
components <- unclass(nv)[[1]] | |||
methods <- if (length(components) == 4L) { | |||
list( | |||
renv_bootstrap_download_github | |||
) | |||
} else { | |||
list( | |||
renv_bootstrap_download_cran_latest, | |||
renv_bootstrap_download_cran_archive | |||
) | |||
} | |||
for (method in methods) { | |||
path <- tryCatch(method(version), error = identity) | |||
if (is.character(path) && file.exists(path)) | |||
return(path) | |||
} | |||
stop("failed to download renv ", version) | |||
} | |||
renv_bootstrap_download_impl <- function(url, destfile) { | |||
mode <- "wb" | |||
@@ -73,7 +123,7 @@ local({ | |||
if (fixup) | |||
mode <- "w+b" | |||
download.file( | |||
utils::download.file( | |||
url = url, | |||
destfile = destfile, | |||
mode = mode, | |||
@@ -82,60 +132,92 @@ local({ | |||
} | |||
renv_bootstrap_download <- function(version) { | |||
methods <- list( | |||
renv_bootstrap_download_cran_latest, | |||
renv_bootstrap_download_cran_archive, | |||
renv_bootstrap_download_github | |||
) | |||
for (method in methods) { | |||
path <- tryCatch(method(version), error = identity) | |||
if (is.character(path) && file.exists(path)) | |||
return(path) | |||
} | |||
renv_bootstrap_download_cran_latest <- function(version) { | |||
stop("failed to download renv ", version) | |||
repos <- renv_bootstrap_download_cran_latest_find(version) | |||
} | |||
message("* Downloading renv ", version, " ... ", appendLF = FALSE) | |||
renv_bootstrap_download_cran_latest <- function(version) { | |||
downloader <- function(type) { | |||
# check for renv on CRAN matching this version | |||
db <- as.data.frame(available.packages(), stringsAsFactors = FALSE) | |||
tryCatch( | |||
utils::download.packages( | |||
pkgs = "renv", | |||
destdir = tempdir(), | |||
repos = repos, | |||
type = type, | |||
quiet = TRUE | |||
), | |||
condition = identity | |||
) | |||
entry <- db[db$Package %in% "renv" & db$Version %in% version, ] | |||
if (nrow(entry) == 0) { | |||
fmt <- "renv %s is not available from your declared package repositories" | |||
stop(sprintf(fmt, version)) | |||
} | |||
message("* Downloading renv ", version, " from CRAN ... ", appendLF = FALSE) | |||
info <- tryCatch( | |||
download.packages("renv", destdir = tempdir()), | |||
condition = identity | |||
) | |||
# first, try downloading a binary on Windows + macOS if appropriate | |||
binary <- | |||
!identical(.Platform$pkgType, "source") && | |||
!identical(getOption("pkgType"), "source") && | |||
Sys.info()[["sysname"]] %in% c("Darwin", "Windows") | |||
if (binary) { | |||
info <- downloader(type = "binary") | |||
if (!inherits(info, "condition")) { | |||
message("OK (downloaded binary)") | |||
return(info[1, 2]) | |||
} | |||
} | |||
# otherwise, try downloading a source tarball | |||
info <- downloader(type = "source") | |||
if (inherits(info, "condition")) { | |||
message("FAILED") | |||
return(FALSE) | |||
} | |||
message("OK") | |||
# report success and return | |||
message("OK (downloaded source)") | |||
info[1, 2] | |||
} | |||
renv_bootstrap_download_cran_latest_find <- function(version) { | |||
all <- renv_bootstrap_repos() | |||
for (repos in all) { | |||
db <- tryCatch( | |||
as.data.frame( | |||
x = utils::available.packages(repos = repos), | |||
stringsAsFactors = FALSE | |||
), | |||
error = identity | |||
) | |||
if (inherits(db, "error")) | |||
next | |||
entry <- db[db$Package %in% "renv" & db$Version %in% version, ] | |||
if (nrow(entry) == 0) | |||
next | |||
return(repos) | |||
} | |||
fmt <- "renv %s is not available from your declared package repositories" | |||
stop(sprintf(fmt, version)) | |||
} | |||
renv_bootstrap_download_cran_archive <- function(version) { | |||
name <- sprintf("renv_%s.tar.gz", version) | |||
repos <- getOption("repos") | |||
repos <- renv_bootstrap_repos() | |||
urls <- file.path(repos, "src/contrib/Archive/renv", name) | |||
destfile <- file.path(tempdir(), name) | |||
message("* Downloading renv ", version, " from CRAN archive ... ", appendLF = FALSE) | |||
message("* Downloading renv ", version, " ... ", appendLF = FALSE) | |||
for (url in urls) { | |||
@@ -194,7 +276,7 @@ local({ | |||
return(FALSE) | |||
} | |||
message("Done!") | |||
message("OK") | |||
return(destfile) | |||
} | |||
@@ -226,7 +308,7 @@ local({ | |||
} | |||
renv_bootstrap_prefix <- function() { | |||
renv_bootstrap_platform_prefix <- function() { | |||
# construct version prefix | |||
version <- paste(R.version$major, R.version$minor, sep = ".") | |||
@@ -245,8 +327,8 @@ local({ | |||
components <- c(prefix, R.version$platform) | |||
# include prefix if provided by user | |||
prefix <- Sys.getenv("RENV_PATHS_PREFIX") | |||
if (nzchar(prefix)) | |||
prefix <- renv_bootstrap_platform_prefix_impl() | |||
if (!is.na(prefix) && nzchar(prefix)) | |||
components <- c(prefix, components) | |||
# build prefix | |||
@@ -254,6 +336,152 @@ local({ | |||
} | |||
renv_bootstrap_platform_prefix_impl <- function() { | |||
# if an explicit prefix has been supplied, use it | |||
prefix <- Sys.getenv("RENV_PATHS_PREFIX", unset = NA) | |||
if (!is.na(prefix)) | |||
return(prefix) | |||
# if the user has requested an automatic prefix, generate it | |||
auto <- Sys.getenv("RENV_PATHS_PREFIX_AUTO", unset = NA) | |||
if (auto %in% c("TRUE", "True", "true", "1")) | |||
return(renv_bootstrap_platform_prefix_auto()) | |||
# empty string on failure | |||
"" | |||
} | |||
renv_bootstrap_platform_prefix_auto <- function() { | |||
prefix <- tryCatch(renv_bootstrap_platform_os(), error = identity) | |||
if (inherits(prefix, "error") || prefix %in% "unknown") { | |||
msg <- paste( | |||
"failed to infer current operating system", | |||
"please file a bug report at https://github.com/rstudio/renv/issues", | |||
sep = "; " | |||
) | |||
warning(msg) | |||
} | |||
prefix | |||
} | |||
renv_bootstrap_platform_os <- function() { | |||
sysinfo <- Sys.info() | |||
sysname <- sysinfo[["sysname"]] | |||
# handle Windows + macOS up front | |||
if (sysname == "Windows") | |||
return("windows") | |||
else if (sysname == "Darwin") | |||
return("macos") | |||
# check for os-release files | |||
for (file in c("/etc/os-release", "/usr/lib/os-release")) | |||
if (file.exists(file)) | |||
return(renv_bootstrap_platform_os_via_os_release(file, sysinfo)) | |||
# check for redhat-release files | |||
if (file.exists("/etc/redhat-release")) | |||
return(renv_bootstrap_platform_os_via_redhat_release()) | |||
"unknown" | |||
} | |||
renv_bootstrap_platform_os_via_os_release <- function(file, sysinfo) { | |||
# read /etc/os-release | |||
release <- utils::read.table( | |||
file = file, | |||
sep = "=", | |||
quote = c("\"", "'"), | |||
col.names = c("Key", "Value"), | |||
comment.char = "#", | |||
stringsAsFactors = FALSE | |||
) | |||
vars <- as.list(release$Value) | |||
names(vars) <- release$Key | |||
# get os name | |||
os <- tolower(sysinfo[["sysname"]]) | |||
# read id | |||
id <- "unknown" | |||
for (field in c("ID", "ID_LIKE")) { | |||
if (field %in% names(vars) && nzchar(vars[[field]])) { | |||
id <- vars[[field]] | |||
break | |||
} | |||
} | |||
# read version | |||
version <- "unknown" | |||
for (field in c("UBUNTU_CODENAME", "VERSION_CODENAME", "VERSION_ID", "BUILD_ID")) { | |||
if (field %in% names(vars) && nzchar(vars[[field]])) { | |||
version <- vars[[field]] | |||
break | |||
} | |||
} | |||
# join together | |||
paste(c(os, id, version), collapse = "-") | |||
} | |||
renv_bootstrap_platform_os_via_redhat_release <- function() { | |||
# read /etc/redhat-release | |||
contents <- readLines("/etc/redhat-release", warn = FALSE) | |||
# infer id | |||
id <- if (grepl("centos", contents, ignore.case = TRUE)) | |||
"centos" | |||
else if (grepl("redhat", contents, ignore.case = TRUE)) | |||
"redhat" | |||
else | |||
"unknown" | |||
# try to find a version component (very hacky) | |||
version <- "unknown" | |||
parts <- strsplit(contents, "[[:space:]]")[[1L]] | |||
for (part in parts) { | |||
nv <- tryCatch(numeric_version(part), error = identity) | |||
if (inherits(nv, "error")) | |||
next | |||
version <- nv[1, 1] | |||
break | |||
} | |||
paste(c("linux", id, version), collapse = "-") | |||
} | |||
renv_bootstrap_library_root_name <- function(project) { | |||
# use project name as-is if requested | |||
asis <- Sys.getenv("RENV_PATHS_LIBRARY_ROOT_ASIS", unset = "FALSE") | |||
if (asis) | |||
return(basename(project)) | |||
# otherwise, disambiguate based on project's path | |||
id <- substring(renv_bootstrap_hash_text(project), 1L, 8L) | |||
paste(basename(project), id, sep = "-") | |||
} | |||
renv_bootstrap_library_root <- function(project) { | |||
path <- Sys.getenv("RENV_PATHS_LIBRARY", unset = NA) | |||
@@ -261,10 +489,13 @@ local({ | |||
return(path) | |||
path <- Sys.getenv("RENV_PATHS_LIBRARY_ROOT", unset = NA) | |||
if (!is.na(path)) | |||
return(file.path(path, basename(project))) | |||
if (!is.na(path)) { | |||
name <- renv_bootstrap_library_root_name(project) | |||
return(file.path(path, name)) | |||
} | |||
file.path(project, "renv/library") | |||
prefix <- renv_bootstrap_profile_prefix() | |||
paste(c(project, prefix, "renv/library"), collapse = "/") | |||
} | |||
@@ -283,8 +514,8 @@ local({ | |||
paste("renv", loadedversion, sep = "@") | |||
fmt <- paste( | |||
"renv %1$s was loaded from project library, but renv %2$s is recorded in lockfile.", | |||
"Use `renv::record(\"%3$s\")` to record this version in the lockfile.", | |||
"renv %1$s was loaded from project library, but this project is configured to use renv %2$s.", | |||
"Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile.", | |||
"Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library.", | |||
sep = "\n" | |||
) | |||
@@ -296,6 +527,16 @@ local({ | |||
} | |||
renv_bootstrap_hash_text <- function(text) { | |||
hashfile <- tempfile("renv-hash-") | |||
on.exit(unlink(hashfile), add = TRUE) | |||
writeLines(text, con = hashfile) | |||
tools::md5sum(hashfile) | |||
} | |||
renv_bootstrap_load <- function(project, libpath, version) { | |||
# try to load renv from the project library | |||
@@ -311,12 +552,69 @@ local({ | |||
TRUE | |||
} | |||
renv_bootstrap_profile_load <- function(project) { | |||
# if RENV_PROFILE is already set, just use that | |||
profile <- Sys.getenv("RENV_PROFILE", unset = NA) | |||
if (!is.na(profile) && nzchar(profile)) | |||
return(profile) | |||
# check for a profile file (nothing to do if it doesn't exist) | |||
path <- file.path(project, "renv/local/profile") | |||
if (!file.exists(path)) | |||
return(NULL) | |||
# read the profile, and set it if it exists | |||
contents <- readLines(path, warn = FALSE) | |||
if (length(contents) == 0L) | |||
return(NULL) | |||
# set RENV_PROFILE | |||
profile <- contents[[1L]] | |||
if (nzchar(profile)) | |||
Sys.setenv(RENV_PROFILE = profile) | |||
profile | |||
} | |||
renv_bootstrap_profile_prefix <- function() { | |||
profile <- renv_bootstrap_profile_get() | |||
if (!is.null(profile)) | |||
return(file.path("renv/profiles", profile)) | |||
} | |||
renv_bootstrap_profile_get <- function() { | |||
profile <- Sys.getenv("RENV_PROFILE", unset = "") | |||
renv_bootstrap_profile_normalize(profile) | |||
} | |||
renv_bootstrap_profile_set <- function(profile) { | |||
profile <- renv_bootstrap_profile_normalize(profile) | |||
if (is.null(profile)) | |||
Sys.unsetenv("RENV_PROFILE") | |||
else | |||
Sys.setenv(RENV_PROFILE = profile) | |||
} | |||
renv_bootstrap_profile_normalize <- function(profile) { | |||
if (is.null(profile) || profile %in% c("", "default")) | |||
return(NULL) | |||
profile | |||
} | |||
# load the renv profile, if any | |||
renv_bootstrap_profile_load(project) | |||
# construct path to library root | |||
root <- renv_bootstrap_library_root(project) | |||
# construct library prefix for platform | |||
prefix <- renv_bootstrap_prefix() | |||
prefix <- renv_bootstrap_platform_prefix() | |||
# construct full libpath | |||
libpath <- file.path(root, prefix) | |||
@@ -325,7 +623,13 @@ local({ | |||
if (renv_bootstrap_load(project, libpath, version)) | |||
return(TRUE) | |||
# load failed; attempt to bootstrap | |||
# load failed; inform user we're about to bootstrap | |||
prefix <- paste("# Bootstrapping renv", version) | |||
postfix <- paste(rep.int("-", 77L - nchar(prefix)), collapse = "") | |||
header <- paste(prefix, postfix) | |||
message(header) | |||
# perform bootstrap | |||
bootstrap(version, libpath) | |||
# exit early if we're just testing bootstrap | |||
@@ -334,7 +638,7 @@ local({ | |||
# try again to load | |||
if (requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) { | |||
message("Successfully installed and loaded renv ", version, ".") | |||
message("* Successfully installed and loaded renv ", version, ".") | |||
return(renv::load()) | |||
} | |||
@@ -1,20 +0,0 @@ | |||
{ | |||
"R": { | |||
"Version": "3.6.3", | |||
"Repositories": [ | |||
{ | |||
"Name": "CRAN", | |||
"URL": "https://cloud.r-project.org" | |||
} | |||
] | |||
}, | |||
"Packages": { | |||
"renv": { | |||
"Package": "renv", | |||
"Version": "0.13.0", | |||
"Source": "Repository", | |||
"Repository": "CRAN", | |||
"Hash": "9f10d9db5b50400c348920c5c603385e" | |||
} | |||
} | |||
} |