From 417515c9d3e7fb45e0e97385a3822276bbaf97a2 Mon Sep 17 00:00:00 2001 From: Yiming Yang Date: Sat, 28 Jan 2023 21:37:16 -0800 Subject: [PATCH] Upgrade Cellranger and Spaceranger (#373) * Add support for Cellranger v7.1.0 and Spaceranger v2.0.1 * Add probe set v1.0.1 to docs * Update default versions in WDL * Update docs --- docker/cellranger/7.1.0/Dockerfile | 34 +++++++++++++++++++ docker/spaceranger/2.0.1/Dockerfile | 33 ++++++++++++++++++ docs/cellranger/build_refs.rst | 12 +++---- docs/cellranger/feature_barcoding.rst | 6 ++-- docs/cellranger/fixed_rna_profiling.rst | 16 +++++---- docs/cellranger/sc_multiomics.rst | 6 ++-- docs/cellranger/sc_sn_rnaseq.rst | 6 ++-- docs/cellranger/sc_vdj.rst | 6 ++-- docs/index.rst | 2 +- docs/release_notes.rst | 5 +++ docs/release_notes/version_2_4.rst | 20 +++++++++++ docs/spaceranger.rst | 6 ++-- .../cellranger_create_reference.wdl | 4 +-- .../cellranger_vdj_create_reference.wdl | 4 +-- workflows/cellranger/cellranger_workflow.wdl | 4 +-- workflows/cellranger/index.tsv | 2 ++ .../spaceranger/spaceranger_workflow.wdl | 4 +-- 17 files changed, 134 insertions(+), 36 deletions(-) create mode 100644 docker/cellranger/7.1.0/Dockerfile create mode 100644 docker/spaceranger/2.0.1/Dockerfile create mode 100644 docs/release_notes/version_2_4.rst diff --git a/docker/cellranger/7.1.0/Dockerfile b/docker/cellranger/7.1.0/Dockerfile new file mode 100644 index 00000000..72328aed --- /dev/null +++ b/docker/cellranger/7.1.0/Dockerfile @@ -0,0 +1,34 @@ +FROM debian:bullseye-slim + +SHELL ["/bin/bash", "-c"] + +RUN apt-get update && \ + apt-get install --no-install-recommends -y alien unzip rsync build-essential dpkg-dev curl gnupg procps python3 python3-pip + +RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && \ + curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - && \ + apt-get update -y && apt-get install -y google-cloud-cli=415.0.0-0 + +RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.9.18.zip" -o "awscliv2.zip" && \ + unzip awscliv2.zip && \ + ./aws/install && \ + rm awscliv2.zip + +RUN ln -s /usr/bin/python3 /usr/bin/python + +RUN python -m pip install --upgrade pip --no-cache-dir && \ + python -m pip install pandas==1.5.3 --no-cache-dir && \ + python -m pip install packaging==23.0 --no-cache-dir && \ + python -m pip install stratocumulus==0.1.7 --no-cache-dir + +RUN mkdir /software +ADD https://raw.githubusercontent.com/lilab-bcb/cumulus/master/docker/monitor_script.sh /software +ADD cellranger-7.1.0.tar.gz /software + +RUN apt-get -qq -y autoremove && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* /var/log/dpkg.log + +RUN chmod a+rx /software/monitor_script.sh +ENV PATH=/software:/software/cellranger-7.1.0:$PATH +ENV TMPDIR=/tmp diff --git a/docker/spaceranger/2.0.1/Dockerfile b/docker/spaceranger/2.0.1/Dockerfile new file mode 100644 index 00000000..89152d17 --- /dev/null +++ b/docker/spaceranger/2.0.1/Dockerfile @@ -0,0 +1,33 @@ +FROM debian:bullseye-slim +SHELL ["/bin/bash", "-c"] + +RUN apt-get update && \ + apt-get install --no-install-recommends -y alien unzip build-essential dpkg-dev curl gnupg procps python3 python3-pip + +RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && \ + curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - && \ + apt-get update -y && apt-get install -y google-cloud-cli=415.0.0-0 + +RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.9.18.zip" -o "awscliv2.zip" && \ + unzip awscliv2.zip && \ + ./aws/install && \ + rm awscliv2.zip + +RUN ln -s /usr/bin/python3 /usr/bin/python + +RUN python -m pip install --upgrade pip --no-cache-dir && \ + python -m pip install pandas==1.5.3 --no-cache-dir && \ + python -m pip install packaging==23.0 --no-cache-dir && \ + python -m pip install stratocumulus==0.1.7 --no-cache-dir + +RUN mkdir /software +ADD https://raw.githubusercontent.com/lilab-bcb/cumulus/master/docker/monitor_script.sh /software +ADD spaceranger-2.0.1.tar.gz /software + +RUN apt-get -qq -y autoremove && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* /var/log/dpkg.log + +RUN chmod a+rx /software/monitor_script.sh +ENV PATH=/software:/software/spaceranger-2.0.1:$PATH +ENV TMPDIR=/tmp diff --git a/docs/cellranger/build_refs.rst b/docs/cellranger/build_refs.rst index 2154777d..95a1a428 100644 --- a/docs/cellranger/build_refs.rst +++ b/docs/cellranger/build_refs.rst @@ -94,9 +94,9 @@ We provide a wrapper of ``cellranger mkref`` to build sc/snRNA-seq references. P - Ensembl v94 - * - cellranger_version - - cellranger version, could be: 7.0.1, 7.0.0, 6.1.2, 6.1.1 - - "7.0.1" - - "7.0.1" + - cellranger version, could be: 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1 + - "7.1.0" + - "7.1.0" * - docker_registry - Docker registry to use for cellranger_workflow. Options: @@ -320,9 +320,9 @@ We provide a wrapper of ``cellranger mkvdjref`` to build single-cell immune prof - Ensembl v94 - * - cellranger_version - - cellranger version, could be: 7.0.1, 7.0.0, 6.1.2, 6.1.1 - - "7.0.1" - - "7.0.1" + - cellranger version, could be: 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1 + - "7.1.0" + - "7.1.0" * - docker_registry - Docker registry to use for cellranger_workflow. Options: diff --git a/docs/cellranger/feature_barcoding.rst b/docs/cellranger/feature_barcoding.rst index 28ed647b..5cd98fac 100644 --- a/docs/cellranger/feature_barcoding.rst +++ b/docs/cellranger/feature_barcoding.rst @@ -187,9 +187,9 @@ For feature barcoding data, ``cellranger_workflow`` takes Illumina outputs as in - 0.1 - 0.1 * - cellranger_version - - cellranger version, could be 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 - - "7.0.1" - - "7.0.1" + - cellranger version, could be: 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 + - "7.1.0" + - "7.1.0" * - cumulus_feature_barcoding_version - Cumulus_feature_barcoding version for extracting feature barcode matrix. Version available: 0.11.1, 0.11.0, 0.10.0, 0.9.0, 0.8.0, 0.7.0, 0.6.0, 0.5.0, 0.4.0, 0.3.0, 0.2.0. - "0.11.1" diff --git a/docs/cellranger/fixed_rna_profiling.rst b/docs/cellranger/fixed_rna_profiling.rst index 93a4e096..09418116 100644 --- a/docs/cellranger/fixed_rna_profiling.rst +++ b/docs/cellranger/fixed_rna_profiling.rst @@ -30,12 +30,16 @@ Sample Sheet * - Keyword - Description + * - **FRP_human_probe_v1.0.1** + - FRP probe set v1.0.1 for human. *Only work with Cell Ranger v7.1+*. + * - **FRP_mouse_probe_v1.0.1** + - FRP probe set v1.0.1 for mouse. *Only work with Cell Ranger v7.1+*. * - **FRP_human_probe_v1** - - FRP probe set for human + - FRP probe set v1.0 for human. Work with Cell Ranger v7.0+. * - **FRP_mouse_probe_v1** - - FRP probe set for mouse + - FRP probe set v1.0 for mouse. Work with Cell Ranger v7.0+. - If *ProbeSet* column is not set, use **FRP_human_probe_v1** by default. + If *ProbeSet* column is not set, use **FRP_human_probe_v1.0.1** by default. #. *FeatureBarcodeFile* column. @@ -136,9 +140,9 @@ For FRP data, ``cellranger_workflow`` takes Illumina outputs as input and runs ` - false - false * - cellranger_version - - Cell Ranger version to use. Available versions working for FRP data: 7.0.1, 7.0.0. - - "7.0.1" - - "7.0.1" + - Cell Ranger version to use. Available versions working for FRP data: 7.1.0, 7.0.1, 7.0.0. + - "7.1.0" + - "7.1.0" * - docker_registry - Docker registry to use for cellranger_workflow. Options: diff --git a/docs/cellranger/sc_multiomics.rst b/docs/cellranger/sc_multiomics.rst index 54059548..0df47387 100644 --- a/docs/cellranger/sc_multiomics.rst +++ b/docs/cellranger/sc_multiomics.rst @@ -151,9 +151,9 @@ For single-cell multiomics data, ``cellranger_workflow`` takes Illumina outputs - "gs://fc-e0000000-0000-0000-0000-000000000000/cmo_set.csv" - * - cellranger_version - - cellranger version, could be 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 - - "7.0.1" - - "7.0.1" + - cellranger version, could be 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 + - "7.1.0" + - "7.1.0" * - cellranger_arc_version - cellranger-arc version, could be 2.0.2, 2.0.1, 2.0.0, 1.0.1, 1.0.0 - "2.0.2" diff --git a/docs/cellranger/sc_sn_rnaseq.rst b/docs/cellranger/sc_sn_rnaseq.rst index 9640ed4a..a1f1b983 100644 --- a/docs/cellranger/sc_sn_rnaseq.rst +++ b/docs/cellranger/sc_sn_rnaseq.rst @@ -181,9 +181,9 @@ For sc/snRNA-seq data, ``cellranger_workflow`` takes Illumina outputs as input a - false - false * - cellranger_version - - cellranger version, could be: 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 - - "7.0.1" - - "7.0.1" + - cellranger version, could be: 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 + - "7.1.0" + - "7.1.0" * - config_version - config docker version used for processing sample sheets, could be 0.3, 0.2, 0.1 - "0.3" diff --git a/docs/cellranger/sc_vdj.rst b/docs/cellranger/sc_vdj.rst index 2a320fc6..29042bcf 100644 --- a/docs/cellranger/sc_vdj.rst +++ b/docs/cellranger/sc_vdj.rst @@ -123,9 +123,9 @@ For scIR-seq data, ``cellranger_workflow`` takes Illumina outputs as input and r - "auto" - "auto" * - cellranger_version - - cellranger version, could be 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 - - "7.0.1" - - "7.0.1" + - cellranger version, could be 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 + - "7.1.0" + - "7.1.0" * - docker_registry - Docker registry to use for cellranger_workflow. Options: diff --git a/docs/index.rst b/docs/index.rst index b73a19d1..4188e687 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -5,7 +5,7 @@ Release Highlights in Current Stable ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. include:: release_notes/version_2_3.rst +.. include:: release_notes/version_2_4.rst .. toctree:: :maxdepth: 1 diff --git a/docs/release_notes.rst b/docs/release_notes.rst index 4113dac0..a50d811b 100644 --- a/docs/release_notes.rst +++ b/docs/release_notes.rst @@ -3,6 +3,11 @@ Release notes .. role:: small +Version 2.4 +~~~~~~~~~~~~~~ + +.. include:: release_notes/version_2_4.rst + Version 2.3 ~~~~~~~~~~~~~~ diff --git a/docs/release_notes/version_2_4.rst b/docs/release_notes/version_2_4.rst new file mode 100644 index 00000000..934269c3 --- /dev/null +++ b/docs/release_notes/version_2_4.rst @@ -0,0 +1,20 @@ +2.4.0 :small:`January 28, 2023` +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Updates:** + +* In Cellranger workflow: + + * Upgrade *cellranger_version* default to ``7.1.0``. + * Add Mouse probe set v1.0 for `Fixed RNA Profiling`_ analysis. + * Add probe set v1.0.1 of both Human and Mouse for `Fixed RNA Profiling`_ analysis. + * Upgrade *cumulus_feature_barcoding* version default to ``0.11.1``. + +* In Cellranger_create_reference workflow: upgrade *cellranger_version* default to ``7.1.0``. + +* In Cellranger_vdj_create_reference workflow: upgrade *cellranger_version* default to ``7.1.0``. + +* In Spaceranger workflow: upgrade *spaceranger_version* default to ``2.0.1``. + + +.. _Fixed RNA Profiling: ./cellranger/index.html#fixed-rna-profiling diff --git a/docs/spaceranger.rst b/docs/spaceranger.rst index 2b958062..d748250b 100644 --- a/docs/spaceranger.rst +++ b/docs/spaceranger.rst @@ -265,9 +265,9 @@ For spatial data, ``spaceranger_workflow`` takes Illumina outputs and related im - 50 - * - spaceranger_version - - spaceranger version, could be: ``2.0.0``, ``1.3.1``, ``1.3.0`` - - "2.0.0" - - "2.0.0" + - spaceranger version, could be: 2.0.1, 2.0.0, 1.3.1, 1.3.0 + - "2.0.1" + - "2.0.1" * - config_version - config docker version used for processing sample sheets, could be 0.3. - "0.3" diff --git a/workflows/cellranger/cellranger_create_reference.wdl b/workflows/cellranger/cellranger_create_reference.wdl index 179bd84e..8cb9f038 100644 --- a/workflows/cellranger/cellranger_create_reference.wdl +++ b/workflows/cellranger/cellranger_create_reference.wdl @@ -22,8 +22,8 @@ workflow cellranger_create_reference { # Which docker registry to use String docker_registry = "quay.io/cumulus" - # 7.0.1, 7.0.0, 6.1.2, 6.1.1 - String cellranger_version = "7.0.1" + # 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1 + String cellranger_version = "7.1.0" # Disk space in GB Int disk_space = 100 diff --git a/workflows/cellranger/cellranger_vdj_create_reference.wdl b/workflows/cellranger/cellranger_vdj_create_reference.wdl index 0b7a24af..70ce4351 100644 --- a/workflows/cellranger/cellranger_vdj_create_reference.wdl +++ b/workflows/cellranger/cellranger_vdj_create_reference.wdl @@ -16,8 +16,8 @@ workflow cellranger_vdj_create_reference { # Which docker registry to use String docker_registry = "quay.io/cumulus" - # 7.0.1, 7.0.0, 6.1.2, 6.1.1 - String cellranger_version = "7.0.1" + # 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1 + String cellranger_version = "7.1.0" # Disk space in GB Int disk_space = 100 diff --git a/workflows/cellranger/cellranger_workflow.wdl b/workflows/cellranger/cellranger_workflow.wdl index 9773f828..0ffa53d9 100644 --- a/workflows/cellranger/cellranger_workflow.wdl +++ b/workflows/cellranger/cellranger_workflow.wdl @@ -98,8 +98,8 @@ workflow cellranger_workflow { # Index TSV file File acronym_file = "gs://regev-lab/resources/cellranger/index.tsv" - # 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 - String cellranger_version = "7.0.1" + # 7.1.0, 7.0.1, 7.0.0, 6.1.2, 6.1.1, 6.0.2, 6.0.1, 6.0.0, 5.0.1, 5.0.0 + String cellranger_version = "7.1.0" # 0.11.1, 0.11.0, 0.10.0, 0.9.0, 0.8.0, 0.7.0, 0.6.0, 0.5.0, 0.4.0, 0.3.0, 0.2.0 String cumulus_feature_barcoding_version = "0.11.1" # 2.1.0, 2.0.0, 1.2.0, 1.1.0 diff --git a/workflows/cellranger/index.tsv b/workflows/cellranger/index.tsv index 0a209b17..9a88b741 100644 --- a/workflows/cellranger/index.tsv +++ b/workflows/cellranger/index.tsv @@ -57,7 +57,9 @@ human_probe_v1 gs://regev-lab/resources/cellranger/Visium_Human_Transcriptome_Pr human_probe_v2 gs://regev-lab/resources/cellranger/Visium_Human_Transcriptome_Probe_Set_v2.0_GRCh38-2020-A.csv mouse_probe_v1 gs://regev-lab/resources/cellranger/Visium_Mouse_Transcriptome_Probe_Set_v1.0_mm10-2020-A.csv FRP_human_probe_v1 gs://regev-lab/resources/cellranger/Chromium_Human_Transcriptome_Probe_Set_v1.0_GRCh38-2020-A.csv +FRP_human_probe_v1.0.1 gs://regev-lab/resources/cellranger/Chromium_Human_Transcriptome_Probe_Set_v1.0.1_GRCh38-2020-A.csv FRP_mouse_probe_v1 gs://regev-lab/resources/cellranger/Chromium_Mouse_Transcriptome_Probe_Set_v1.0_mm10-2020-A.csv +FRP_mouse_probe_v1.0.1 gs://regev-lab/resources/cellranger/Chromium_Mouse_Transcriptome_Probe_Set_v1.0.1_mm10-2020-A.csv SC3Pv3 gs://regev-lab/resources/cellranger/3M-february-2018.txt.gz SC3Pv2 gs://regev-lab/resources/cellranger/737K-august-2016.txt.gz fiveprime gs://regev-lab/resources/cellranger/737K-august-2016.txt.gz diff --git a/workflows/spaceranger/spaceranger_workflow.wdl b/workflows/spaceranger/spaceranger_workflow.wdl index 65cdc3f0..d4fced5c 100644 --- a/workflows/spaceranger/spaceranger_workflow.wdl +++ b/workflows/spaceranger/spaceranger_workflow.wdl @@ -47,8 +47,8 @@ workflow spaceranger_workflow { # Hard trim the input Read 2 to this length before analysis Int? r2_length - # Space Ranger version: 2.0.0, 1.3.1, 1.3.0 - String spaceranger_version = "2.0.0" + # Space Ranger version: 2.0.1, 2.0.0, 1.3.1, 1.3.0 + String spaceranger_version = "2.0.1" # Config version String config_version = "0.3"