Skip to content

[Enhancement] Code review by Exceret #2

Open

Description

@Exceret

破坏性升级

  • 引入air作为代码格式化工具
  • 考虑弃用run_seurat_pipeline函数,或者移动到vignettes里。单细胞处理流程相当复杂,依据数据特点有不同的处理流程,不应当默认内置,应当让用户自已完成。
  • 考虑data.table后端
  • 考虑cli信息输出
  • DepMap考虑qs2包读写

代码检查器

  • 引入Jarl作为lintr

小升级

  • 把rlang作为代码检查和语法的基准
  • 把perception_depmap_drugs移动到包data,或者导出给用户查看
  • DepMap应当放在tools::R_user_dir("PERCEPTIONx","cache")而不是当前工作路径

新功能和实现

  • 引入新的suggets包,额外的依赖但是更快的速度
  • 包加载的问候语
  • 为类实现print、format等s3方法分派

我会新开一个pr,完成这些内容并打钩。如果不考虑引入上述某些内容,欢迎在此留下评论

Activity

  1. SunPast commented on Nov 4, 2026

    @SunPast
    Collaborator

    @Exceret
    谢谢师兄详尽的建议!
    我觉得都是完全可以落实的。尤其是run_seurat_pipeline这一条,因为我自己其实没有做过很多复杂单细胞转录组的分析流程,做包的时候没考虑到预处理这一步,这里是直接把原算法仓库的附加示例代码搬过来用的(原文的几个案例倒也确实没用这一段来聚类,clone标签都是预先定好的)。现在再看这函数确实很不靠谱,连常规质控都没有😂目前确实是得先移动到vignettes。至于后续,我想看看能否可以专门再提供一个可供预处理的模块,把所有可选的参数都暴露给用户自己调?师兄你看这种思路可行吗,若可以我后面自己改进试试。
    其余的功能提升也都很有价值,包括drugs清单,我之前也没想到什么更好的方法放在包里。
    如果师兄方便提pr,真是求之不得,有什么需要我来配合的还请尽管说。再次感谢师兄🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions