Skip to content

PCAS 0.2.1

Choose a tag to compare

@WangJin93 WangJin93 released this 05 Sep 15:35
· 1 commit to main since this release

PCAS 0.2.1 — GCAS 风格本地缓存(避免重复请求服务器)

中文更新摘要

本地缓存全面升级,参考 GCAS 包(WangJin93/GCAS)的缓存逻辑:命中即读本地文件,相同数据不再访问 PCAS 服务器。

  1. 表达式数据 get_expr_data():每个数据集的查询结果保存为
    ~/.cache/PCAS/data_temp/<dataset>_<md5(ids)>.RData(Linux;对象名 cached_data,
    与 GCAS 一致),再次请求相同基因集直接加载缓存并提示 Loading cached data from ...;
    新增 cache_dir 参数可指定自定义缓存目录。
  2. DEG 结果 get_DEGs_result():按表缓存为 ~/.cache/PCAS/DEG_results/<table>.RData。
  3. 临床表 merge_clinic_data():临床表整体按队列缓存为
    ~/.cache/PCAS/clinic_data/<cohort>.rds(同 GCAS 缓存每套 GSE 的样本注释
    sample_info/<GSE>.rds 思路),首次下载后不再请求。
  4. 缓存默认不自动过期(与 GCAS 一致):删除缓存目录/文件即强制刷新;
    use_cache = FALSE 或 options(PCAS.cache.dir = NA) 可临时关闭;
    全局位置也可用 options(PCAS.cache.dir = <path>) 修改。
  5. 健壮性:get_data() 默认超时 30s→60s、重试 2→3 次(大表如
    LUAD_CPTAC_mRNA_limma 服务端约需 35s)。
  6. 质量:新增缓存专项测试 tests/cache_tests.R(12 项断言:重复请求零网络调用);
    冒烟测试 48/48;R CMD check --no-manual Status: OK。

English highlights

  • Local caching now follows the GCAS package: data_temp/<dataset>_<md5>.RData
    (expression), DEG_results/<table>.RData (DEGs), clinic_data/<cohort>.rds
    (whole clinical table per cohort, like GCAS sample_info/); new cache_dir
    argument on the three query functions; caches never auto-expire; delete the
    cache directory or pass use_cache = FALSE /
    options(PCAS.cache.dir = NA) to refresh/disable.
  • API client default timeout raised to 60 s with 3 attempts.
  • tests/cache_tests.R proves identical repeated queries make zero network
    calls (12/12); full smoke suite 48/48; R CMD check Status OK.

安装 Install

remotes::install_github("WangJin93/PCAS@v0.2.1")
# 或本地构建包
install.packages("PCAS_0.2.1.tar.gz", repos = NULL, type = "source")

校验和 sha256

94169f01ce7fc356d1f237d8fb962a2030e3d9eb1d03cd995484332f6908d2c6  PCAS_0.2.1.tar.gz