【问题标题】:Comparing NAMESPACE files between different R package versions比较不同 R 包版本之间的 NAMESPACE 文件
【发布时间】:2021-09-10 22:58:27
【问题描述】:

我们通常使用parseNamespaceFile("PACKAGE", package.lib = .libPaths())getNamespaceImports("PACKAGE")/getNamespaceExports("PACKAGE") 函数来检索任何本地包的NAMESPACE 文件元数据。不幸的是,比较不同软件包版本之间的 NAMESPACE 文件并不容易。大多数情况下,我们希望获得不同包版本之间的导入和导出差异。 如何实现这样的目标。

【问题讨论】:

    标签: r r-pacs


    【解决方案1】:

    pacs CRAN 包中提供了我自己解决此类问题的方法。 pacs::pac_compare_namespace 可用于比较不同包版本之间的 NAMESPACE 文件字段。 提供pacs::pac_namespace 以启用任何软件包版本或特定日期的 NAMESPACE 文件的下载。
    R CRAN 包支持函数。

    比较不同版本之间的包 NAMESPACE 字段。

    head(pacs::pac_compare_namespace("dplyr", "0.8.1", "1.0.0"), 1)
    #> $imports
    #> $imports$removed
    #>  [1] "Rcpp"              "Rcpp.plugin.maker" "cppFunction"      
    #>  [4] "assertthat"        "on_failure<-"      "assert_that"      
    #>  [7] "is.flag"           "pkgconfig"         "get_config"       
    #> [10] ":="                ".data"             "as_label"         
    #> [13] "as_name"           "dots_n"            "enquo"            
    #> [16] "enquos"            "expr"              "sym"              
    #> [19] "syms"             
    #> 
    #> $imports$added
    #>  [1] "vctrs"         "generics"      "intersect"     "setdiff"      
    #>  [5] "setequal"      "union"         "glue_collapse" "glue_data"    
    #>  [9] "lifecycle"     "deprecated"    "view"          "all_of"       
    #> [13] "any_of"
    

    版本或日期的原始 NAMESPACE 文件。

    pacs::pac_namespace("dplyr", "0.8.1")
    
    pacs::pac_namespace("dplyr", at = as.Date("2018-01-01"))
    

    reprex package (v2.0.1) 于 2021-09-11 创建

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-14
      • 1970-01-01
      • 1970-01-01
      • 2018-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-26
      相关资源
      最近更新 更多