如何下载最新的rlang,例如0.4.6?
rlang是一个开源的包,可以在github上找得到最新的包,之前使用都没没有0.4.6版本,但是github上却有最新包。
最新版本,github源码与包在此:rlang
通常的方法下载rlang
install.packages
install.packages("rlang")

BiocManager::install
BiocManager::install("rlang")

以上的方法如果遇到rlang版本升级不了,例如BiocManager的仓库没及时更新rlang,但是一些包已经需要用到最新版本的rlang了,而源代码中已经发布了最新版本,要怎么做?
除非真的万不得已,这里介绍一些骚操作(当然个人觉得效果不大)~
使用github的方式。
当然github有时候会对一些人来说慢一些,这里介绍一些对小白来说比较通用的方法下载rlang。
前期准备,R package路径备份
-
先找到自己的R package路径,也就是R包下载的地方,把要更新的rlang先保存一份(因为很多R的新包不兼容旧版本,万一升级后很多东西不能用了,那岂不是得不偿失?)
PS:如果不知道自己R的package路径,可以参考:如何查找R对应library的包以及对应版本、路径 -
本文是把rlang的文件夹直接丢到一个随便新建的文件夹上去,如果升级后能用0.46的那么就直接用,新建文件夹上旧的就不管了,但是升级后不能用,那么我还是乖乖的包旧的rlang覆盖到原来的路径上去(确保之前的功能能用)。
直接github平台下载最新包


-
接着,下载到本地的zip包,进行解压,放到R package路径上,将之前rlang文件夹进行覆盖。
-
小结:直接用github上下载zip的方式不是很推荐。
这种方式最简单粗暴,覆盖完就是升级完了,手动升级,当然这种方式会存在不少问题,因为不是使用R来控制,很多依赖会找不到,同时很多包没有跟着升级。
如果只是一个两个R的package那还好,但是如果要下载的比较多那就推荐下面代码的那种方式。。
使用R来下载github的rlang
一开始会麻烦一些,因为github的连接建立需要ssl
参考如下:在本机运行“运行”,或者可以用快捷键windows+R

git config --global http.sslBackend "openssl"
git config --global http.sslCAInfo 【你的R包地址】/library/openssl/cacert.pem

install.packages("remotes")
remotes::install_github("r-lib/rlang")
这里比较建议使用R-studio来安装rlang的最新包,因为需要用到R-tools,使用R的话需要自己安装R-tools插件,而使用R-studio会自动提示,让你直接安装需要依赖的R-tools

install.packages("remotes")
remotes::install_github("r-lib/rlang")
