From c1071c36150793e43cfac25613dcb8d0836ed29f Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Tue, 23 Jul 2024 11:44:48 +0200 Subject: [PATCH 01/47] Create download-data.py --- data/download-data.py | 537 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 537 insertions(+) create mode 100644 data/download-data.py diff --git a/data/download-data.py b/data/download-data.py new file mode 100644 index 000000000..8fdda6700 --- /dev/null +++ b/data/download-data.py @@ -0,0 +1,537 @@ +#!/usr/bin/env python3 + +# Script for downloading data from an OpenScPCA data release + +import argparse +import datetime +import fnmatch +import os +import pathlib +import re +import subprocess +import sys +from typing import List, Set + +# enable text formatting on Windows +os.system("") + +RELEASE_BUCKET = "openscpca-data-release" +TEST_BUCKET = "openscpca-test-data-release-public-access" + + +def get_releases(bucket: str, profile: str, test_data: bool) -> List[str]: + """ + Get the list of available releases from an OpenScPCA bucket. + """ + ls_cmd = ["aws", "s3", "ls", f"s3://{bucket}/"] + if profile: + ls_cmd += ["--profile", profile] + if test_data: + ls_cmd += ["--no-sign-request"] + ls_result = subprocess.run(ls_cmd, capture_output=True, text=True) + if ls_result.returncode: # authentication errors, usually + print( + "Error listing release versions from the OpenScPCA bucket.\n\n" + "Make sure you have the correct profile active (or use the --profile option)" + " and run `aws sso login` before running this script.\n\n" + "AWS Error: ", + ls_result.stderr, # print the AWS error text too + file=sys.stderr, + ) + sys.exit(ls_result.returncode) + + # get only date-based versions and remove the trailing slash + date_re = re.compile(r"PRE\s+(20\d{2}-[01]\d-[0123]\d)/$") + return [ + m.group(1) + for m in (date_re.search(line) for line in ls_result.stdout.splitlines()) + if m + ] + + +def build_sync_cmd( + bucket: str, + release: str, + test_data: bool, + download_dir: pathlib.Path, + include_patterns: List[str] = [], + dryrun: bool = False, + profile: str = "", +) -> List[str]: + sync_cmd = [ + "aws", + "s3", + "sync", + f"s3://{bucket}/{release}/", + download_dir, + "--exact-timestamps", # replace if a file has changed at all + "--no-progress", # don't show progress animations + ] + + if include_patterns: + sync_cmd += ["--exclude", "*"] + + for pattern in include_patterns: + sync_cmd += ["--include", pattern] + + if dryrun: + sync_cmd += ["--dryrun"] + + if profile: + sync_cmd += ["--profile", profile] + + if test_data: + sync_cmd += ["--no-sign-request"] + + return sync_cmd + + +def get_download_size( + bucket: str, + release: str, + test_data: bool, + include_patterns: List[str] = ["*"], + profile: str = "", +) -> int: + """ + Get the total size of files that will be downloaded from AWS S3 that match the include patterns. + """ + ls_cmd = ["aws", "s3", "ls", f"s3://{bucket}/{release}/", "--recursive"] + if profile: + ls_cmd += ["--profile", profile] + if test_data: + ls_cmd += ["--no-sign-request"] + file_list = subprocess.run(ls_cmd, capture_output=True, text=True) + file_list.check_returncode() + + total_size = 0 + for line in file_list.stdout.splitlines(): + size, file = line.split()[-2:] + if any( + fnmatch.fnmatch(file, release + "/" + pattern) + for pattern in include_patterns + ): + total_size += int(size) + return total_size + + +def make_size_human(size: int) -> str: + """ + Convert a size in bytes to something human readable. + """ + for unit in ["B", "KiB", "MiB", "GiB", "TiB"]: + if size < 1024.0 or unit == "TiB": + break + size /= 1024.0 + if unit == "B": + return f"{size:.0f} B" + return f"{size:.2f} {unit}" + + +def add_parent_dirs(patterns: List[str], dirs: List[str]) -> List[str]: + """ + Add parent directories to each AWS include pattern. + """ + parent_patterns = [] + for pattern in patterns: + # Prepend only if the pattern starts with a wildcard + if pattern.startswith("*"): + parent_patterns += [ + # add parent directory exact or final sample in multiplexed + f"*{d}/{pattern}" + for d in dirs + ] + parent_patterns += [ + # add partial parent directory for multiplexed samples + f"*{d}_*/{pattern}" + for d in dirs + ] + else: + parent_patterns += [pattern] + return parent_patterns + + +def update_symlink(data_dir: pathlib.Path, target: str, dryrun: bool = False) -> None: + """ + Update the {data_dir}/current symlink to direct to target. + If `dryrun` is True, this function will print the expected outcome only. + """ + target_path = data_dir / target + + # Ensure the target path exists before updating symlink + if not target_path.exists(): + print( + f"\nThe requested target directory '{target}' does not exist, so the symlink will not be changed.\n", + "Please instead download the desired release with the `--release` flag.", + file=sys.stderr, + ) + sys.exit(1) + else: + if dryrun: + print(f"\nThe 'current' symlink would be updated to point to '{target}'.") + else: + current_symlink = data_dir / "current" + current_symlink.unlink(missing_ok=True) + current_symlink.symlink_to(target_path) + print(f"Updated 'current' symlink to point to '{target}'.") + + +def download_release_data( + bucket: str, + release: str, + test_data: bool, + data_dir: pathlib.Path, + formats: Set[str], + stages: Set[str], + include_reports: bool = False, + projects: Set[str] = {}, + samples: Set[str] = {}, + dryrun: bool = False, + profile: str = "", + update_current: bool = True, +) -> None: + """ + Download data for a specific release of OpenScPCA. + """ + # Build the basic sync command + download_dir = data_dir / release + + # Always include json, tsv metadata files and DATA_USAGE.md + patterns = ["*.json", "*_metadata.tsv", "DATA_USAGE.md"] + + # separate bulk from other stages + include_bulk = "bulk" in stages + stages = stages - {"bulk"} + + if include_reports: + patterns += ["*.html"] + + if "sce" in formats: + patterns += [f"*_{level}.rds" for level in stages] + + if "anndata" in formats: + patterns += [f"*_{level}_*.h5ad" for level in stages] + patterns += [f"*_{level}_*.hdf5" for level in stages] + + # If projects or samples are specified, extend the file-only patterns to specify parent directories + if projects: + patterns = add_parent_dirs(patterns, projects) + elif samples: + patterns = add_parent_dirs(patterns, samples) + + # if samples are specified, bulk is excluded, as it is not associated with individual samples + if include_bulk and not samples: + if projects: + patterns += [f"{project}/*_bulk_*.tsv" for project in projects] + else: + patterns += ["*_bulk_*.tsv"] + + ### build sync command and run ### + sync_cmd = build_sync_cmd( + bucket=bucket, + release=release, + test_data=test_data, + download_dir=download_dir, + include_patterns=patterns, + dryrun=dryrun, + profile=profile, + ) + + subprocess.run(sync_cmd, check=True) + + download_size = get_download_size( + bucket=bucket, + release=release, + test_data=test_data, + include_patterns=patterns, + profile=profile, + ) + + ### Print summary messages ### + print("\n\n\033[1mDownload Summary\033[0m") # bold + print("Release:", release) + if formats: + print("Data Format:", ", ".join(formats)) + if stages: + print("Processing levels:", ", ".join(stages)) + if projects: + print("Projects:", ", ".join(projects)) + if samples: + print("Samples:", ", ".join(samples)) + if dryrun: + print("Data download location:", download_dir) + else: + print("Downloaded data to:", download_dir) + print( + "Total download size (includes previous downloads):", + make_size_human(download_size), + ) + + ### Update current link to point to new or test data if required ### + # only do this if we are using test data or the specified release is "current" or "latest", not for specific dates + if update_current: + if not dryrun: + update_symlink(data_dir, release) + else: + print(f"\nThe 'current' symlink would be updated to point to '{release}'.") + + +def main() -> None: + parser = argparse.ArgumentParser( + description="Download data for OpenScPCA.", + ) + parser.add_argument( + "--list-releases", + action="store_true", + help="List the available release versions and exit.", + ) + parser.add_argument( + "--projects", + type=str, + default="", + help=( + "The project(s) to download." + " A comma separated list of Project IDs to download." + " Defaults to all. Can not be combined with `--samples`." + ), + ) + parser.add_argument( + "--samples", + type=str, + default="", + help="The sample(s) to download." + " A comma separated list of Sample IDs to download." + " Defaults to all. Can not be combined with `--projects`." + " If specified, bulk files are always excluded.", + ) + parser.add_argument( + "--format", + type=str, + help=( + "The format to download the data in. Either 'SCE' or 'AnnData'." + " Defaults to 'SCE'." + " For more than one format, use a comma separated list with no spaces." + ), + default="SCE", + ) + parser.add_argument( + "--process-stage", + type=str, + default="processed", + help=( + "The stage of processing for the data files to include." + " One or more of 'processed', 'filtered', 'unfiltered', or 'bulk'." + " Defaults to 'processed'." + " For more than one level, use a comma separated list." + ), + ) + parser.add_argument( + "--release", + type=str, + help="The release version to download. Defaults to 'current'.", + default="", # set in code + ) + parser.add_argument( + "--test-data", + action="store_true", + help="Download test data from the test bucket and direct the `current` symlink to the test data directory." + " To switch back, rerun this script with either the `--release current` option or the `--update-symlink` flag.", + ) + parser.add_argument( + "--metadata-only", + action="store_true", + help="Download only the metadata files and not the data files." + " To also download QC reports, combine with the --include-reports option." + " Can be combined with --projects, but not with --samples. --format and --process-stage are ignored.", + ) + parser.add_argument( + "--include-reports", + action="store_true", + help="Include html report files in the download." + " Note that test data does not include report files.", + ) + parser.add_argument( + "--data-dir", + type=pathlib.Path, + help=( + "The directory to download the data to." + " Defaults to the `data` directory in this repository." + ), + default=pathlib.Path(__file__).parent / "data", + ) + parser.add_argument( + "--dryrun", + action="store_true", + help="Perform a dry run of the download: show what would be done but do not download anything.", + ) + parser.add_argument( + "--profile", + type=str, + default="", + help="The AWS profile to use for the download. Uses the current default profile if undefined.", + ) + parser.add_argument( + "--update-symlink", + action="store_true", + help="Whether to update the 'current' symlink to direct to a different data release." + " By default, the symlink will be updated to direct to the latest local release." + " Provide the --release flag to specify a different release." + " To update the symlink to direct to test data, use the --test-data flag." + " No data will be downloaded if this flag is used.", + ) + args = parser.parse_args() + + ### Validate the arguments ### + validation_error = False + # Check formats are valid and make a set + sce_formats = {"sce", "rds"} + anndata_formats = {"anndata", "h5ad", "hdf5"} + formats = {f.lower() for f in args.format.split(",")} + if not all(f in sce_formats | anndata_formats for f in formats): + print( + f"Format '{args.format}' not available.", + "Must be 'SCE', 'AnnData', or a comma separated list of those options.", + file=sys.stderr, + ) + validation_error = True + + # Check include levels are valid & make a set + process_stages = {"unfiltered", "filtered", "processed", "bulk"} + stages = {x.strip().lower() for x in args.process_stage.split(",")} + if not all(x in process_stages for x in stages): + print( + f"process-stage option '{args.process_stage}' is not valid.", + "Must be 'processed', 'filtered', 'unfiltered', 'bulk', or a comma separated list of those.", + file=sys.stderr, + ) + validation_error = True + + # Check that only a release or test-data was set, and set buckets and default release + if args.release and args.test_data: + print( + "Only one of `--release` or `--test-data` can be set.", + file=sys.stderr, + ) + validation_error = True + elif args.test_data: + bucket = TEST_BUCKET + else: + args.release = args.release or "current" + bucket = RELEASE_BUCKET + # Check that projects and samples are not requested together + if args.projects and args.samples: + print( + "Using both `--projects` and `--samples` options together is not supported.", + file=sys.stderr, + ) + validation_error = True + + if args.metadata_only and args.samples: + print( + "Using `--metadata-only` and `--samples` options together is not supported.", + file=sys.stderr, + ) + validation_error = True + + if validation_error: + sys.exit(1) + + # check project and sample names + projects = {p.strip() for p in args.projects.split(",")} if args.projects else {} + samples = {s.strip() for s in args.samples.split(",")} if args.samples else {} + if projects and not all(p.startswith("SCPCP") for p in projects): + print( + "Some project ids do not start with 'SCPCP' as expected.", + file=sys.stderr, + ) + if samples and not all(s.startswith("SCPCS") for s in samples): + print( + "Some sample ids do not start with 'SCPCS' as expected.", + file=sys.stderr, + ) + + if args.samples and "bulk" in stages: + print( + "Bulk data is not available for individual samples, so bulk data will be skipped.", + file=sys.stderr, + ) + + ### Update symlink if requested, without downloading data, if the target directory exists + if args.update_symlink: + if args.test_data: + target = "test" + else: + target = args.release + + if target == "current": + # find the most recent local release to use as target + dated_releases = ( + x.name + for x in args.data_dir.iterdir() + if x.is_dir() + and re.match(r"\d{4}-\d{2}-\d{2}$", x.name) + and x.name <= datetime.date.today().isoformat() + ) + most_recent = max(dated_releases) + update_symlink(args.data_dir, most_recent, dryrun=args.dryrun) + else: + update_symlink(args.data_dir, target, dryrun=args.dryrun) + + sys.exit(0) + + ### List the available releases or modules ### + all_releases = get_releases( + bucket=bucket, profile=args.profile, test_data=args.test_data + ) + + # hide any future releases and sort in reverse order + current_releases = [ + r for r in all_releases if r <= datetime.date.today().isoformat() + ] + current_releases.sort(reverse=True) + + # list the current releases and exit if that was what was requested + if args.list_releases: + print("Available release dates:\n", "\n".join(current_releases), sep="\n") + return + + # get the release to use or exit if it is not available + if args.test_data: + release = "test" + elif args.release.casefold() in {"current", "latest"}: + release = current_releases[0] + elif args.release in all_releases: # allow downloads from the future + release = args.release + else: + print( + f"Release dated '{args.release}' is not available. Available release dates are:\n", + "\n".join(all_releases), + sep="\n", + file=sys.stderr, + ) + sys.exit(1) + + if args.metadata_only: + formats = set() + stages = set() + + ### Download the data ### + download_release_data( + bucket=bucket, + release=release, + test_data=args.test_data, + data_dir=args.data_dir, + formats=formats, + stages=stages, + include_reports=args.include_reports, + projects=args.projects.split(",") if args.projects else [], + samples=args.samples.split(",") if args.samples else [], + dryrun=args.dryrun, + profile=args.profile, + update_current=args.test_data + or args.release.casefold() in {"current", "latest"}, + ) + + +if __name__ == "__main__": + main() From 81c1712a33103595ece427af979eeef6dcf9d182 Mon Sep 17 00:00:00 2001 From: "maud.plaschka" Date: Thu, 25 Jul 2024 22:00:59 +0200 Subject: [PATCH 02/47] create module 1 --- analyses/module1/.dockerignore | 8 ++++++ analyses/module1/.gitignore | 7 +++++ analyses/module1/Dockerfile | 10 +++++++ analyses/module1/README.md | 45 ++++++++++++++++++++++++++++++ analyses/module1/plots/.gitkeep | 0 analyses/module1/results/README.md | 5 ++++ analyses/module1/scratch/.gitkeep | 0 analyses/module1/scripts/.gitkeep | 0 8 files changed, 75 insertions(+) create mode 100644 analyses/module1/.dockerignore create mode 100644 analyses/module1/.gitignore create mode 100644 analyses/module1/Dockerfile create mode 100644 analyses/module1/README.md create mode 100644 analyses/module1/plots/.gitkeep create mode 100644 analyses/module1/results/README.md create mode 100644 analyses/module1/scratch/.gitkeep create mode 100644 analyses/module1/scripts/.gitkeep diff --git a/analyses/module1/.dockerignore b/analyses/module1/.dockerignore new file mode 100644 index 000000000..23c79ccae --- /dev/null +++ b/analyses/module1/.dockerignore @@ -0,0 +1,8 @@ +# Ignore everything by default +* + +# Include specific files in the docker environment +!/renv.lock +!/requirements.txt +!/environment.yml +!/conda-lock.yml diff --git a/analyses/module1/.gitignore b/analyses/module1/.gitignore new file mode 100644 index 000000000..418755f52 --- /dev/null +++ b/analyses/module1/.gitignore @@ -0,0 +1,7 @@ +# Results should not be committed +/results/* +!/results/README.md + +# Ignore the scratch directory (but keep it present) +/scratch/* +!/scratch/.gitkeep diff --git a/analyses/module1/Dockerfile b/analyses/module1/Dockerfile new file mode 100644 index 000000000..80010ba65 --- /dev/null +++ b/analyses/module1/Dockerfile @@ -0,0 +1,10 @@ +# A template docker file for creating a new analysis +FROM ubuntu:22.04 + +# Labels following the Open Containers Initiative (OCI) recommendations +# For more information, see https://specs.opencontainers.org/image-spec/annotations/?v=v1.0.1 +LABEL org.opencontainers.image.authors="OpenScPCA scpca@ccdatalab.org" +LABEL org.opencontainers.image.source="https://github.com/AlexsLemonade/OpenScPCA-analysis/tree/main/templates/analysis-module" + +# Set an environment variable to allow checking if we are in an OpenScPCA container +ENV OPENSCPCA_DOCKER=TRUE diff --git a/analyses/module1/README.md b/analyses/module1/README.md new file mode 100644 index 000000000..638a0a4fc --- /dev/null +++ b/analyses/module1/README.md @@ -0,0 +1,45 @@ +# Template analysis module + +This is a template analysis module. +It is intended to be used as a starting point for new analysis modules. +Please fill in the content below with information specific to this analysis module. + +## Description + +Please provide a description of your module, including: + +- What type of analysis is included? +- What methods or tools are used? + +If there are multiple steps in the module, please include an outline of the analysis steps and scripts used. + +## Usage + +Please provide instructions on how to run the analysis module. +What commands are needed to execute all steps in the analysis? + +## Input files + +Please include a description of the required inputs to run the analysis module (e.g., processed `SingleCellExperiment` objects from the ScPCA Portal). +If the input to this module is dependent on running any other scripts (e.g., `download-data.py`) or on the output of another module, please state that. +If possible, include examples of specific commands used to obtain data. + +## Output files + +Please include a description of the output from your analysis, including: + +- What type of files are created? +- What are the contents of the output files? +- Where are the files stored? +- Are any intermediate files generated? +If so, where are they stored? + +## Software requirements + +Please describe the environment system used to manage software dependencies for the module (e.g., `conda`, `renv`, `docker`). +Include the locations of any files used to set up the environment. + +## Computational resources + +Please indicate the computational resources that are required to run the module. +If there are specific memory, CPU, and/or GPU requirements, please state that. diff --git a/analyses/module1/plots/.gitkeep b/analyses/module1/plots/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/analyses/module1/results/README.md b/analyses/module1/results/README.md new file mode 100644 index 000000000..af51c690e --- /dev/null +++ b/analyses/module1/results/README.md @@ -0,0 +1,5 @@ +# Results directory instructions + +Files in the results directory should not be directly committed to the repository. + +Instead, copy results files to an S3 bucket and add a link to the S3 location in this README file. diff --git a/analyses/module1/scratch/.gitkeep b/analyses/module1/scratch/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/analyses/module1/scripts/.gitkeep b/analyses/module1/scripts/.gitkeep new file mode 100644 index 000000000..e69de29bb From caddbbfbf27a6193ad1453c095798291defc54d1 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 25 Jul 2024 22:27:50 +0200 Subject: [PATCH 03/47] Update Dockerfile --- analyses/module1/Dockerfile | 222 ++++++++++++++++++++++++++++++++++-- 1 file changed, 214 insertions(+), 8 deletions(-) diff --git a/analyses/module1/Dockerfile b/analyses/module1/Dockerfile index 80010ba65..736d185a5 100644 --- a/analyses/module1/Dockerfile +++ b/analyses/module1/Dockerfile @@ -1,10 +1,216 @@ -# A template docker file for creating a new analysis -FROM ubuntu:22.04 +# pull base image +FROM rocker/tidyverse:4.3.0 -# Labels following the Open Containers Initiative (OCI) recommendations -# For more information, see https://specs.opencontainers.org/image-spec/annotations/?v=v1.0.1 -LABEL org.opencontainers.image.authors="OpenScPCA scpca@ccdatalab.org" -LABEL org.opencontainers.image.source="https://github.com/AlexsLemonade/OpenScPCA-analysis/tree/main/templates/analysis-module" -# Set an environment variable to allow checking if we are in an OpenScPCA container -ENV OPENSCPCA_DOCKER=TRUE +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + lbzip2 \ + libfftw3-dev \ + libgdal-dev \ + libgeos-dev \ + libgsl0-dev \ + libgl1-mesa-dev \ + libglu1-mesa-dev \ + libhdf4-alt-dev \ + libhdf5-dev \ + libjq-dev \ + libgeos-dev \ + libpq-dev \ + libproj-dev \ + libprotobuf-dev \ + libnetcdf-dev \ + libsqlite3-dev \ + libssl-dev \ + libudunits2-dev \ + netcdf-bin \ + postgis \ + protobuf-compiler \ + sqlite3 \ + tk-dev \ + unixodbc-dev + +# Change the default CRAN mirror +RUN echo "options(repos = c(CRAN = 'https://mran.microsoft.com/snapshot/2022-02-01'), download.file.method = 'libcurl')" >> ${R_HOME}/etc/Rprofile.site + +RUN apt-get update -qq \ + && apt-get -y --no-install-recommends install \ + htop \ + nano \ + libigraph-dev \ + libcairo2-dev \ + libxt-dev \ + libcurl4-openssl-dev \ + libcurl4 \ + libxml2-dev \ + libxt-dev \ + openssl \ + libssl-dev \ + wget \ + curl \ + bzip2 \ + libbz2-dev \ + libpng-dev \ + libhdf5-dev \ + pigz \ + libudunits2-dev \ + libgdal-dev \ + libgeos-dev \ + libboost-dev \ + libboost-iostreams-dev \ + libboost-log-dev \ + libboost-system-dev \ + libboost-test-dev \ + libz-dev \ + libarmadillo-dev \ + libglpk-dev \ + jags \ + libgsl-dev \ + libharfbuzz-dev \ + libfribidi-dev \ + cmake \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + + + + + + +# Set global R options +RUN echo "options(repos = 'https://cloud.r-project.org')" > $(R --no-echo --no-save -e "cat(Sys.getenv('R_HOME'))")/etc/Rprofile.site +ENV RETICULATE_MINICONDA_ENABLED=FALSE + +# Install Seurat's system dependencies +RUN apt-get update +RUN apt-get install -y \ + libhdf5-dev \ + libcurl4-openssl-dev \ + libssl-dev \ + libpng-dev \ + libboost-all-dev \ + libxml2-dev \ + openjdk-8-jdk \ + python3-dev \ + python3-pip \ + wget \ + git \ + libfftw3-dev \ + libgsl-dev \ + pkg-config + + + +# Install UMAP +RUN LLVM_CONFIG=/usr/lib/llvm-10/bin/llvm-config pip3 install llvmlite +RUN pip3 install numpy +RUN pip3 install umap-learn + +# Install FIt-SNE +RUN git clone --branch v1.2.1 https://github.com/KlugerLab/FIt-SNE.git +RUN g++ -std=c++11 -O3 FIt-SNE/src/sptree.cpp FIt-SNE/src/tsne.cpp FIt-SNE/src/nbodyfft.cpp -o bin/fast_tsne -pthread -lfftw3 -lm + + + +# Install latest Matrix +RUN R --no-echo --no-restore --no-save -e "install.packages('Matrix')" + +# Install Seurat +RUN R --no-echo --no-restore --no-save -e "install.packages('remotes')" +RUN R -e "remotes::install_github('satijalab/seurat', 'seurat5', quiet = TRUE)" +RUN R -e "remotes::install_github(repo = 'satijalab/azimuth', dependencies = TRUE)" + +RUN R -e "devtools::install_github('enblacar/SCpubr')" +RUN R -e "install.packages('scatterpie')" +RUN R -e "install.packages('concaveman')" + + +RUN R -e "update.packages(ask = FALSE)" + +RUN install2.r --error \ + DT \ + profvis \ + tictoc \ + markdown \ + plotly \ + bench \ + mclust + +RUN R -e "BiocManager::install(version = "3.17", ask = FALSE)" +RUN R -e "BiocManager::install('Biobase')" + +RUN R -e "BiocManager::install('glmGamPoi')" + +RUN R -e "devtools::install_github('YingMa0107/CARD')" +RUN R -e "devtools::install_github('carter-allen/spruce')" +RUN R -e "devtools::install_github('carter-allen/maple')" +RUN R -e "BiocManager::install('TOAST')" +RUN R -e "devtools::install_github('xuranw/MuSiC')" +RUN R -e "remotes::install_github('cancerbits/DElegate')" +RUN R -e "BiocManager::install('edgeR')" + + +RUN R -e "BiocManager::install(c('clusterProfiler', 'msigdb'))" +RUN R -e "devtools::install_github('wjawaid/enrichR')" + +RUN R -e "devtools::install_github('CBIIT-CGBB/scCorr')" +RUN R -e "install.packages('corrplot')" +RUN R -e "install.packages('DT')" +RUN R -e "install.packages('pheatmap')" +#RUN R -e "devtools::install_github('kassambara/ggpubr')" +#RUN R -e "BiocManager::install('scater')" +#RUN R -e "remotes::install_github('XiaoZhangryy/iSC.MEB')" + +RUN R -e "install.packages('msigdbr')" + +RUN apt-get install -y libmagick++-dev +RUN R -e "remotes::install_github('jbergenstrahle/STUtility')" +RUN R -e "devtools::install_github('davidgohel/ggiraph')" +RUN R -e "remotes::install_github('ludvigla/semla')" +RUN R -e "install.packages(c('shinyBS', 'beakr', 'colourpicker'))" +RUN R -e "devtools::install_github('kassambara/ggpubr')" +RUN R -e "remotes::install_github('dgrun/RaceID3_StemID2_package')" +RUN R -e "BiocManager::install('TSCAN')" +RUN R -e "BiocManager::install('dittoSeq')" +RUN R -e "BiocManager::install('infercnv')" + +RUN R -e "devtools::install_github('lme4/lme4',dependencies=TRUE)" +RUN R -e "devtools::install_github('hojsgaard/pbkrtest')" +RUN R -e "devtools::install_github('statistikat/VIM')" +RUN R -e "BiocManager::install('destiny')" +RUN R -e "remotes::install_github('aet21/SCENT')" +RUN R -e "devtools::install_github('hwarden162/SCEnt')" +RUN R -e "BiocManager::install('scater')" + +# Intsall SPATA2 and dependencies +RUN R -e "BiocManager::install(c('batchelor', 'Matrix.utils', 'EBImage'))" + +RUN R -e "devtools::install_github('kueckelj/confuns')" +RUN R -e "devtools::install_github('theMILOlab/SPATAData')" +RUN R -e "remotes::install_github('cvarrichio/Matrix.utils')" +RUN R -e "install.packages('anndata')" +RUN R -e "devtools::install_github('theMILOlab/SPATA2')" + +RUN R -e "install.packages('glmnet')" +RUN R -e "install.packages('simpleCache')" +RUN R -e "install.packages('caret')" +RUN R -e "install.packages('SoupX')" +RUN R -e "remotes::install_github(repo = 'cancerbits/canceRbits')" +RUN R -e "BiocManager::install('scRepertoire')" + + +RUN R -e "remotes::install_github('satijalab/seurat-wrappers')" +RUN R -e "devtools::install_github('YuLab-SMU/ggtree')" +RUN R -e "BiocManager::install(c('clusterProfiler'))" + +#RUN chmod -R a+rw ${R_HOME}/site-library # so that everyone can dynamically install more libraries within container +#RUN chmod -R a+rw ${R_HOME}/library + +# add custom options for rstudio sessions +# make sure sessions stay alive forever +RUN echo "session-timeout-minutes=0" >> /etc/rstudio/rsession.conf +# make sure we get rstudio server logs in the container +# RUN echo $'[*]\nlog-level=warn\nlogger-type=file\n' > /etc/rstudio/logging.conf + +# make sure all R related binaries are in PATH in case we want to call them directly +ENV PATH ${R_HOME}/bin:$PATH + From c29e1cbb1310147b50d8fbfe3339b85480f08df9 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 11:03:02 +0200 Subject: [PATCH 04/47] Update README.md --- analyses/module1/README.md | 41 ++++++++++++-------------------------- 1 file changed, 13 insertions(+), 28 deletions(-) diff --git a/analyses/module1/README.md b/analyses/module1/README.md index 638a0a4fc..80713b140 100644 --- a/analyses/module1/README.md +++ b/analyses/module1/README.md @@ -1,45 +1,30 @@ -# Template analysis module +# Module 1: Compilation of a metadata file of marker genes for expected cell types -This is a template analysis module. -It is intended to be used as a starting point for new analysis modules. -Please fill in the content below with information specific to this analysis module. +Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an exacerbated intra- and inter- tumor heterogeneity. The genetic landscape of WT is very diverse in each of the histological contingents. The COG classifies WT patients into two groups: the favorable histology and diffuse anaplasia. Each of these groups is composed of the blastemal, epithelial, and stromal populations of cancer cells in different proportions, as well as cells from the normal kidney, mostly kidney epithelial cells, endothelial cells, immune cells and normal stromal cells (fibroblast). ## Description -Please provide a description of your module, including: - -- What type of analysis is included? -- What methods or tools are used? - -If there are multiple steps in the module, please include an outline of the analysis steps and scripts used. +In this module, we reviewed the literature to compile a table of marker genes for each of the expected cell types in the dataset. ## Usage -Please provide instructions on how to run the analysis module. -What commands are needed to execute all steps in the analysis? - -## Input files - -Please include a description of the required inputs to run the analysis module (e.g., processed `SingleCellExperiment` objects from the ScPCA Portal). -If the input to this module is dependent on running any other scripts (e.g., `download-data.py`) or on the output of another module, please state that. -If possible, include examples of specific commands used to obtain data. +This module is a resource for later validation of the annotated cell types. The table of marker genes can be found in the folder results under the name CellType_metadata.csv ## Output files -Please include a description of the output from your analysis, including: +The table contains the following column and information: +- "gene_symbol" contains the symbol of the described gene, using the HUGO Gene Nomenclature +- ENSEMBL_ID contains the stable identifier from the ENSEMBL database +- cell_class is either "malignant" for marker genes specific to malignant population, or "non-malignant" for markers genes specific to non-malignant tissue or "both" for marker genes that can be found in malignant as well as non-malignant tissue but are still informative in respect to the cell type. +- cell_type contains the list of the cell types that are attributed to the marker gene +- DOI contains the list of main publication identifiers supporting the choice of the marker gene +- comment can be empty or contains any additional information -- What type of files are created? -- What are the contents of the output files? -- Where are the files stored? -- Are any intermediate files generated? -If so, where are they stored? ## Software requirements -Please describe the environment system used to manage software dependencies for the module (e.g., `conda`, `renv`, `docker`). -Include the locations of any files used to set up the environment. +No software required. ## Computational resources -Please indicate the computational resources that are required to run the module. -If there are specific memory, CPU, and/or GPU requirements, please state that. +No need to run any analysis, just open the metadata table! From 999d2f2528625401dfa1b7c3b811bc99a9bce86c Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 13:58:51 +0200 Subject: [PATCH 05/47] Update README.md --- analyses/module1/README.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/analyses/module1/README.md b/analyses/module1/README.md index 80713b140..8ba33dd24 100644 --- a/analyses/module1/README.md +++ b/analyses/module1/README.md @@ -4,15 +4,15 @@ Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an ## Description -In this module, we reviewed the literature to compile a table of marker genes for each of the expected cell types in the dataset. +In this module, we reviewed the literature to compile a table of marker genes for each of the expected cell types in the dataset. Additionally, we provide a table of know genetic alterations in Wilms tumor that can be useful to validate CNV profiles obtained after running inferCNV function. ## Usage -This module is a resource for later validation of the annotated cell types. The table of marker genes can be found in the folder results under the name CellType_metadata.csv +This module is a resource for later validation of the annotated cell types. The table of marker genes can be found in the folder results under the name CellType_metadata.csv. The table of known genetic alterations can also be found in the results folder under the name GeneticAlterations_metadata.csv. ## Output files -The table contains the following column and information: +### The table CellType_metadata.csv contains the following column and information: - "gene_symbol" contains the symbol of the described gene, using the HUGO Gene Nomenclature - ENSEMBL_ID contains the stable identifier from the ENSEMBL database - cell_class is either "malignant" for marker genes specific to malignant population, or "non-malignant" for markers genes specific to non-malignant tissue or "both" for marker genes that can be found in malignant as well as non-malignant tissue but are still informative in respect to the cell type. @@ -20,6 +20,14 @@ The table contains the following column and information: - DOI contains the list of main publication identifiers supporting the choice of the marker gene - comment can be empty or contains any additional information +### The table GeneticAlterations_metadata.csv contains the following column and information: +- alteration contains the number and portion of the affected chromosome +- gain_loss contains the information regarding the gain or loss of the corresponding genetic alteration +- cell_class is "malignant" +- cell_type contains the list of the malignant cell types that are attributed to the marker gene, either blastemal, stromal, epithelial or NA if none of the three histology is more prone to the described genetic alteration +- DOI contains the list of main publication identifiers supporting the choice of the genetic alteration +- comment can be empty or contains any additional information + ## Software requirements From 671d4d78b5dd77726ca40f29fdf703b7a4e57818 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 13:24:57 +0000 Subject: [PATCH 06/47] Add files via upload --- .../module1/results/CellType_metadata.csv | 23 +++++++++++++++++++ .../results/GeneticAlterations_metadata.csv | 6 +++++ 2 files changed, 29 insertions(+) create mode 100644 analyses/module1/results/CellType_metadata.csv create mode 100644 analyses/module1/results/GeneticAlterations_metadata.csv diff --git a/analyses/module1/results/CellType_metadata.csv b/analyses/module1/results/CellType_metadata.csv new file mode 100644 index 000000000..b74ca5a03 --- /dev/null +++ b/analyses/module1/results/CellType_metadata.csv @@ -0,0 +1,23 @@ +gene_symbol,ENSEMBL_ID,cell_class,cell_type,DOI,comment +WT1,ENSG00000184937,malignant,cancer_cell,10.1242/dev.153163,Tumor_suppressor_WT1_is_lost_in_some_WT_cells +IGF2,ENSG00000167244,malignant,cancer_cell,10.1038/ng1293-408,NA +TP53,ENSG00000141510,malignant,anaplastic,10.1158/1078-0432.CCR-16-0985,Might_also_be_in_small_non_anaplastic_subset +MYCN,ENSG00000134323,malignant,anaplastic,10.18632/oncotarget.3377,Also_in_non_anaplastic_poor_outcome +MAX,ENSG00000125952,malignant,anaplastic,10.1016/j.ccell.2015.01.002,Also_in_non_anaplastic_poor_outcome +SIX1,ENSG00000126778,malignant,blastema,10.1016/j.ccell.2015.01.002,NA +SIX2,ENSG00000170577,malignant,blastema,10.1016/j.ccell.2015.01.002,NA +CITED1,ENSG00000125931,malignant,blastema,10.1593/neo.07358,Also_in_embryonic_kidney +PTPRC,ENSG00000081237,immune,NA,10.1101/gr.273300.120,NA +CD68,ENSG00000129226,immune,myeloid,10.1186/1746-1596-7-12,NA +CD163,ENSG00000177575,immune,macrophage,10.1186/1746-1596-7-12,NA +VWF,ENSG00000110799,endothelium,endothelium,10.1134/S1990747819030140,NA +CD3E,ENSG00000198851,immune,T_cell,10.1101/gr.273300.120,NA +MS4A1,ENSG00000156738,immune,B_cell,10.1101/gr.273300.120,NA +FOXP3,ENSG00000049768,immune,T_cell,10.1101/gr.273300.120,Treg +CD4,ENSG00000010610,immune,T_cell,10.1101/gr.273300.120,NA +CD8A,ENSG00000153563,immune,T_cell,10.1101/gr.273300.120,NA +EPCAM,ENSG00000119888,NA,epithelial,10.1016/j.stemcr.2014.05.013,epithelial_malignant_and_non_malignant +NCAM1,ENSG00000149294,malignant,blastema,10.1016/j.stemcr.2014.05.013,might_also_be_expressed_in_non_malignant +PODXL,ENSG00000128567,non-malignant,podocyte,10.1016/j.stem.2019.06.009,NA +COL6A3,ENSG00000163359,malignant,mesenchymal,10.2147/OTT.S256654,might_also_be_expressed_in_non_malignant_stroma +THY1,ENSG00000154096,malignant,mesenchymal,10.1093/hmg/ddq042,might_also_be_expressed_in_non_malignant_stroma diff --git a/analyses/module1/results/GeneticAlterations_metadata.csv b/analyses/module1/results/GeneticAlterations_metadata.csv new file mode 100644 index 000000000..c29b2700c --- /dev/null +++ b/analyses/module1/results/GeneticAlterations_metadata.csv @@ -0,0 +1,6 @@ +alteration,gain_loss,cell_class,cell_type,DOI,PMID,comment +11p13,loss,malignant,NA,10.1242/dev.153163,,NA +11p15,loss,malignant,NA,10.1128/mcb.9.4.1799,,NA +16q,loss,malignant,NA,NA,1317258,Associated_with_relapse +1p,loss,malignant,NA,NA,8162576,Associated_with_relapse +1q,gain,malignant,NA,10.1016/S0002-9440(10)63982-X,NA,Associated_with_relapse From ef22cb66cc7f22983d080dc6e35042e1a1d6356b Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 15:25:40 +0200 Subject: [PATCH 07/47] Update GeneticAlterations_metadata.csv --- analyses/module1/results/GeneticAlterations_metadata.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/analyses/module1/results/GeneticAlterations_metadata.csv b/analyses/module1/results/GeneticAlterations_metadata.csv index c29b2700c..1d6823153 100644 --- a/analyses/module1/results/GeneticAlterations_metadata.csv +++ b/analyses/module1/results/GeneticAlterations_metadata.csv @@ -1,6 +1,6 @@ alteration,gain_loss,cell_class,cell_type,DOI,PMID,comment -11p13,loss,malignant,NA,10.1242/dev.153163,,NA -11p15,loss,malignant,NA,10.1128/mcb.9.4.1799,,NA +11p13,loss,malignant,NA,10.1242/dev.153163,NA,NA +11p15,loss,malignant,NA,10.1128/mcb.9.4.1799,NA,NA 16q,loss,malignant,NA,NA,1317258,Associated_with_relapse 1p,loss,malignant,NA,NA,8162576,Associated_with_relapse 1q,gain,malignant,NA,10.1016/S0002-9440(10)63982-X,NA,Associated_with_relapse From ab263d380b95530012849d2b7cb674afef4a7162 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 15:31:49 +0200 Subject: [PATCH 08/47] Update README.md --- analyses/module1/README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/analyses/module1/README.md b/analyses/module1/README.md index 8ba33dd24..6c14cccbb 100644 --- a/analyses/module1/README.md +++ b/analyses/module1/README.md @@ -20,6 +20,13 @@ This module is a resource for later validation of the annotated cell types. The - DOI contains the list of main publication identifiers supporting the choice of the marker gene - comment can be empty or contains any additional information + |gene_symbol|ENSEMBL_ID|cell_class|cell_type|DOI|comment| + |---|---|---|---|---|---| +|WT1|ENSG00000184937|malignant|cancer_cell|10.1242/dev.153163|Tumor_suppressor_WT1_is_lost_in_some_WT_cells| + +![image](https://github.com/user-attachments/assets/97074dd9-255c-4c1d-9b6f-3d9086954bea) + + ### The table GeneticAlterations_metadata.csv contains the following column and information: - alteration contains the number and portion of the affected chromosome - gain_loss contains the information regarding the gain or loss of the corresponding genetic alteration From 201bd539b382e74c18a33af26292409fbea88fd0 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 15:32:44 +0200 Subject: [PATCH 09/47] Update README.md --- analyses/module1/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/analyses/module1/README.md b/analyses/module1/README.md index 6c14cccbb..f7871c97c 100644 --- a/analyses/module1/README.md +++ b/analyses/module1/README.md @@ -22,9 +22,8 @@ This module is a resource for later validation of the annotated cell types. The |gene_symbol|ENSEMBL_ID|cell_class|cell_type|DOI|comment| |---|---|---|---|---|---| -|WT1|ENSG00000184937|malignant|cancer_cell|10.1242/dev.153163|Tumor_suppressor_WT1_is_lost_in_some_WT_cells| + |WT1|ENSG00000184937|malignant|cancer_cell|10.1242/dev.153163|Tumor_suppressor_WT1_is_lost_in_some_WT_cells| -![image](https://github.com/user-attachments/assets/97074dd9-255c-4c1d-9b6f-3d9086954bea) ### The table GeneticAlterations_metadata.csv contains the following column and information: From 3f7d64be37eddb131d37e752440d141dfb5fd0d2 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 15:34:23 +0200 Subject: [PATCH 10/47] Update README.md --- analyses/module1/README.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/analyses/module1/README.md b/analyses/module1/README.md index f7871c97c..fb581b131 100644 --- a/analyses/module1/README.md +++ b/analyses/module1/README.md @@ -23,6 +23,29 @@ This module is a resource for later validation of the annotated cell types. The |gene_symbol|ENSEMBL_ID|cell_class|cell_type|DOI|comment| |---|---|---|---|---|---| |WT1|ENSG00000184937|malignant|cancer_cell|10.1242/dev.153163|Tumor_suppressor_WT1_is_lost_in_some_WT_cells| + |IGF2|ENSG00000167244|malignant|cancer_cell|10.1038/ng1293-408|NA| + |TP53|ENSG00000141510|malignant|anaplastic|10.1158/1078-0432.CCR-16-0985|Might_also_be_in_small_non_anaplastic_subset| + |MYCN|ENSG00000134323|malignant|anaplastic|10.18632/oncotarget.3377|Also_in_non_anaplastic_poor_outcome| + |MAX|ENSG00000125952|malignant|anaplastic|10.1016/j.ccell.2015.01.002|Also_in_non_anaplastic_poor_outcome| + |SIX1|ENSG00000126778|malignant|blastema|10.1016/j.ccell.2015.01.002|NA| + |SIX2|ENSG00000170577|malignant|blastema|10.1016/j.ccell.2015.01.002|NA| + |CITED1|ENSG00000125931|malignant|blastema|10.1593/neo.07358|Also_in_embryonic_kidney| + |PTPRC|ENSG00000081237|immune|NA|10.1101/gr.273300.120|NA| + |CD68|ENSG00000129226|immune|myeloid|10.1186/1746-1596-7-12|NA| + |CD163|ENSG00000177575|immune|macrophage|10.1186/1746-1596-7-12|NA| + |VWF|ENSG00000110799|endothelium|endothelium|10.1134/S1990747819030140|NA| + |CD3E|ENSG00000198851|immune|T_cell|10.1101/gr.273300.120|NA| + |MS4A1|ENSG00000156738|immune|B_cell|10.1101/gr.273300.120|NA| + |FOXP3|ENSG00000049768|immune|T_cell|10.1101/gr.273300.120|Treg| + |CD4|ENSG00000010610|immune|T_cell|10.1101/gr.273300.120|NA| + |CD8A|ENSG00000153563|immune|T_cell|10.1101/gr.273300.120|NA| + |EPCAM|ENSG00000119888|NA|epithelial|10.1016/j.stemcr.2014.05.013|epithelial_malignant_and_non_malignant| + |NCAM1|ENSG00000149294|malignant|blastema|10.1016/j.stemcr.2014.05.013|might_also_be_expressed_in_non_malignant| + |PODXL|ENSG00000128567|non-malignant|podocyte|10.1016/j.stem.2019.06.009|NA| + |COL6A3|ENSG00000163359|malignant|mesenchymal|10.2147/OTT.S256654|might_also_be_expressed_in_non_malignant_stroma| + |THY1|ENSG00000154096|malignant|mesenchymal|10.1093/hmg/ddq042|might_also_be_expressed_in_non_malignant_stroma| + + From 81e1478eef4ddc7d097016e2a9467cbf9cd9037d Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 29 Jul 2024 15:36:28 +0200 Subject: [PATCH 11/47] Update README.md --- analyses/module1/README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/analyses/module1/README.md b/analyses/module1/README.md index fb581b131..978c41967 100644 --- a/analyses/module1/README.md +++ b/analyses/module1/README.md @@ -57,6 +57,15 @@ This module is a resource for later validation of the annotated cell types. The - DOI contains the list of main publication identifiers supporting the choice of the genetic alteration - comment can be empty or contains any additional information +|alteration|gain_loss|cell_class|cell_type|DOI|PMID|comment +|---|---|---|---|---|---|---| +|11p13|loss|malignant|NA|10.1242/dev.153163|NA|NA| +|11p15|loss|malignant|NA|10.1128/mcb.9.4.1799|NA|NA| +|16q|loss|malignant|NA|NA|1317258|Associated_with_relapse| +|1p|loss|malignant|NA|NA|8162576|Associated_with_relapse| +|1q|gain|malignant|NA|10.1016/S0002-9440(10)63982-X|NA|Associated_with_relapse| + + ## Software requirements From b754e5de88d7ec9d99be0b50db00e34d0b183a4b Mon Sep 17 00:00:00 2001 From: "maud.plaschka" Date: Tue, 30 Jul 2024 21:53:44 +0200 Subject: [PATCH 12/47] changes to issue #671 --- .../.dockerignore | 0 .../.gitignore | 0 analyses/cell-type-wilms-tumor-06/Dockerfile | 30 + .../README.md | 54 +- analyses/cell-type-wilms-tumor-06/config.yaml | 17 + .../marker-sets}/CellType_metadata.csv | 0 .../GeneticAlterations_metadata.csv | 0 .../plots/.gitkeep | 0 .../results/README.md | 0 analyses/cell-type-wilms-tumor-06/run.sh | 29 + .../scratch/.gitkeep | 0 .../scripts/.gitkeep | 0 analyses/module1/Dockerfile | 216 ------- data/download-data.py | 537 ------------------ 14 files changed, 123 insertions(+), 760 deletions(-) rename analyses/{module1 => cell-type-wilms-tumor-06}/.dockerignore (100%) rename analyses/{module1 => cell-type-wilms-tumor-06}/.gitignore (100%) create mode 100644 analyses/cell-type-wilms-tumor-06/Dockerfile rename analyses/{module1 => cell-type-wilms-tumor-06}/README.md (60%) create mode 100644 analyses/cell-type-wilms-tumor-06/config.yaml rename analyses/{module1/results => cell-type-wilms-tumor-06/marker-sets}/CellType_metadata.csv (100%) rename analyses/{module1/results => cell-type-wilms-tumor-06/marker-sets}/GeneticAlterations_metadata.csv (100%) rename analyses/{module1 => cell-type-wilms-tumor-06}/plots/.gitkeep (100%) rename analyses/{module1 => cell-type-wilms-tumor-06}/results/README.md (100%) create mode 100644 analyses/cell-type-wilms-tumor-06/run.sh rename analyses/{module1 => cell-type-wilms-tumor-06}/scratch/.gitkeep (100%) rename analyses/{module1 => cell-type-wilms-tumor-06}/scripts/.gitkeep (100%) delete mode 100644 analyses/module1/Dockerfile delete mode 100644 data/download-data.py diff --git a/analyses/module1/.dockerignore b/analyses/cell-type-wilms-tumor-06/.dockerignore similarity index 100% rename from analyses/module1/.dockerignore rename to analyses/cell-type-wilms-tumor-06/.dockerignore diff --git a/analyses/module1/.gitignore b/analyses/cell-type-wilms-tumor-06/.gitignore similarity index 100% rename from analyses/module1/.gitignore rename to analyses/cell-type-wilms-tumor-06/.gitignore diff --git a/analyses/cell-type-wilms-tumor-06/Dockerfile b/analyses/cell-type-wilms-tumor-06/Dockerfile new file mode 100644 index 000000000..2a71150ba --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/Dockerfile @@ -0,0 +1,30 @@ +# pull base image +FROM bioconductor/tidyverse:3.19 + + +# Change the default CRAN mirror +RUN echo "options(repos = c(CRAN = 'https://mran.microsoft.com/snapshot/2022-02-01'), download.file.method = 'libcurl')" >> ${R_HOME}/etc/Rprofile.site + + +# Set global R options +RUN echo "options(repos = 'https://cloud.r-project.org')" > $(R --no-echo --no-save -e "cat(Sys.getenv('R_HOME'))")/etc/Rprofile.site +ENV RETICULATE_MINICONDA_ENABLED=FALSE + + +RUN R -e "devtools::install_github('enblacar/SCpubr')" +RUN R --no-echo --no-restore --no-save -e "install.packages('remotes')" +RUN R -e "remotes::install_github('satijalab/seurat', 'seurat5', quiet = TRUE)" # this also install patchwork (and others) +RUN R -e "remotes::install_github('satijalab/azimuth', quiet = TRUE)" # this also install SingleCellExperiment, DT (and others) + + +#RUN chmod -R a+rw ${R_HOME}/site-library # so that everyone can dynamically install more libraries within container +#RUN chmod -R a+rw ${R_HOME}/library + +# add custom options for rstudio sessions +# make sure sessions stay alive forever +RUN echo "session-timeout-minutes=0" >> /etc/rstudio/rsession.conf +# make sure we get rstudio server logs in the container +# RUN echo $'[*]\nlog-level=warn\nlogger-type=file\n' > /etc/rstudio/logging.conf + +# make sure all R related binaries are in PATH in case we want to call them directly +ENV PATH ${R_HOME}/bin:$PATH diff --git a/analyses/module1/README.md b/analyses/cell-type-wilms-tumor-06/README.md similarity index 60% rename from analyses/module1/README.md rename to analyses/cell-type-wilms-tumor-06/README.md index 978c41967..92ec67cc9 100644 --- a/analyses/module1/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -1,17 +1,44 @@ -# Module 1: Compilation of a metadata file of marker genes for expected cell types +# Wilms Tumor Dataset Annotation (SCPCP000006) Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an exacerbated intra- and inter- tumor heterogeneity. The genetic landscape of WT is very diverse in each of the histological contingents. The COG classifies WT patients into two groups: the favorable histology and diffuse anaplasia. Each of these groups is composed of the blastemal, epithelial, and stromal populations of cancer cells in different proportions, as well as cells from the normal kidney, mostly kidney epithelial cells, endothelial cells, immune cells and normal stromal cells (fibroblast). ## Description -In this module, we reviewed the literature to compile a table of marker genes for each of the expected cell types in the dataset. Additionally, we provide a table of know genetic alterations in Wilms tumor that can be useful to validate CNV profiles obtained after running inferCNV function. +Here, we first aim to annotate the Wilms Tumor snRNA-seq samples in the SCPCP000006 (n=40) dataset. To do so we will: + +• Provide annotations of normal cells composing the kidney, including normal kidney epithelium, endothelium, stroma and immune cells +• Provide annotations of tumor cell populations that may be present in the WT samples, including blastemal, epithelial, and stromal populations of cancer cells +Based on the provided annotation, we would like to additionally provide a reference of marker genes for the three cancer cell populations, which is so far lacking for the WT community. + +The analysis is/will be divided as the following: + +[x] Metadata file: compilation of a metadata file of marker genes for expected cell types that will be used for validation at a later step +[ ] Script: clustering of cells across a set of parameters for few samples +[ ] Script: label transfer from the fetal kidney atlas reference using runAzimuth +[ ] Script: run InferCNV +[ ] Notebook: explore results from steps 2 to 4 for about 5 to 10 samples +[ ] Script: compile scripts 2 to 4 in a RMardown file with required adjustements and render it across all samples +[ ] Notebook: explore results from step 6, integrate all samples together and annotate the dataset using (i) metadatafile, (ii) CNV information, (iii) label transfer information ## Usage +From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). Please before running the script, make sure that the paths are correct. +You can also simply have a look at the html reports in the notebook folder. Here, no need to run anything, we try to guide you through the analysis. Have a look at the code using the unhide code button on the top right of each chunk! + +## Input files -This module is a resource for later validation of the annotated cell types. The table of marker genes can be found in the folder results under the name CellType_metadata.csv. The table of known genetic alterations can also be found in the results folder under the name GeneticAlterations_metadata.csv. +In this module, we start with the processed `SingleCellExperiment` objects from the ScPCA Portal. +Data have been downloaded locally and are found in mnt_data. the mnt_data folder has to be define in the config.yaml file or changed in the notebook accordingly. + +```{r paths} +path_to_data <- "~/mnt_data/Wilms ALSF/SCPCP000006_2024-06-25" +``` ## Output files +## Marker sets + +This folder is a resource for later validation of the annotated cell types. + ### The table CellType_metadata.csv contains the following column and information: - "gene_symbol" contains the symbol of the described gene, using the HUGO Gene Nomenclature - ENSEMBL_ID contains the stable identifier from the ENSEMBL database @@ -46,9 +73,6 @@ This module is a resource for later validation of the annotated cell types. The |THY1|ENSG00000154096|malignant|mesenchymal|10.1093/hmg/ddq042|might_also_be_expressed_in_non_malignant_stroma| - - - ### The table GeneticAlterations_metadata.csv contains the following column and information: - alteration contains the number and portion of the affected chromosome - gain_loss contains the information regarding the gain or loss of the corresponding genetic alteration @@ -69,7 +93,23 @@ This module is a resource for later validation of the annotated cell types. The ## Software requirements -No software required. +To perform the analysis, run the RMarkdown script in R (version 4.4.1). +The main packages used are: +- Seurat version 5 +- Azimuth version 5 +- inferCNV +- SCpubr for visualization +- DT for table visualization +- DElegate for differential expression analysis + +For complete reproducibility of the results, you can build and run the docker image using the Dockerfile. This will allow you to work on RStudio (R version 4.4.1) from the based image bioconductor/tidyverse:3.19. + +In the config.yaml file, define your system specific parameter and paths (e.g. to the data). +Execute the run.sh file and open RStudio in your browser (http://localhost:8080/). +By default, username = rstudio, password = wordpass. + + + ## Computational resources diff --git a/analyses/cell-type-wilms-tumor-06/config.yaml b/analyses/cell-type-wilms-tumor-06/config.yaml new file mode 100644 index 000000000..d4f4e4776 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/config.yaml @@ -0,0 +1,17 @@ +project_name: maudp_ScPCA +project_docker: cancerbits/dockr:maudp_ScPCAOpen_podman + + +# SYSTEM-SPECIFIC PARAMETERS (please change to match your local setup): +project_root_host: $CODEBASE/OpenScPCA-analysis/ +data_root_host: $DATA +out_root_host: $OUT +resource_root_host: $RESOURCES + +# PATHS AS VISIBLE WITHIN RSTUDIO (should not be changed): +project_root: /home/rstudio +data_root: /home/rstudio/mnt_data +out_root: /home/rstudio/mnt_out +resource_root: /home/rstudio/mnt_resources/ +tmp_root: /home/rstudio/mnt_tmp/ + diff --git a/analyses/module1/results/CellType_metadata.csv b/analyses/cell-type-wilms-tumor-06/marker-sets/CellType_metadata.csv similarity index 100% rename from analyses/module1/results/CellType_metadata.csv rename to analyses/cell-type-wilms-tumor-06/marker-sets/CellType_metadata.csv diff --git a/analyses/module1/results/GeneticAlterations_metadata.csv b/analyses/cell-type-wilms-tumor-06/marker-sets/GeneticAlterations_metadata.csv similarity index 100% rename from analyses/module1/results/GeneticAlterations_metadata.csv rename to analyses/cell-type-wilms-tumor-06/marker-sets/GeneticAlterations_metadata.csv diff --git a/analyses/module1/plots/.gitkeep b/analyses/cell-type-wilms-tumor-06/plots/.gitkeep similarity index 100% rename from analyses/module1/plots/.gitkeep rename to analyses/cell-type-wilms-tumor-06/plots/.gitkeep diff --git a/analyses/module1/results/README.md b/analyses/cell-type-wilms-tumor-06/results/README.md similarity index 100% rename from analyses/module1/results/README.md rename to analyses/cell-type-wilms-tumor-06/results/README.md diff --git a/analyses/cell-type-wilms-tumor-06/run.sh b/analyses/cell-type-wilms-tumor-06/run.sh new file mode 100644 index 000000000..dd24357a8 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/run.sh @@ -0,0 +1,29 @@ +#!/bin/bash + + +# parse config parameters: +source bash/parse_yaml.sh +eval $(parse_yaml config.yaml CONF_) + +# ids defined in image for the rstudio user +uid=1000 +gid=1000 +# subid ranges on host +subuidSize=$(( $(podman info --format "{{ range .Host.IDMappings.UIDMap }}+{{.Size }}{{end }}" ) - 1 )) +subgidSize=$(( $(podman info --format "{{ range .Host.IDMappings.GIDMap }}+{{.Size }}{{end }}" ) - 1 )) + + +podman run -d --rm \ + --name ${CONF_project_name}_${USER} \ + -e RUNROOTLESS=false \ + --uidmap $uid:0:1 --uidmap 0:1:$uid --uidmap $(($uid+1)):$(($uid+1)):$(($subuidSize-$uid)) \ + --gidmap $gid:0:1 --gidmap 0:1:$gid --gidmap $(($gid+1)):$(($gid+1)):$(($subgidSize-$gid)) \ + --group-add=keep-groups \ + -p 8080:8787 \ + -e PASSWORD=wordpass \ + -e TZ=Europe/Vienna \ + --volume=$(realpath ${CONF_project_root_host%%*##*( )}):${CONF_project_root} \ + --volume=$(realpath ${CONF_resource_root_host%%*##*( )}):${CONF_resource_root}:ro \ + --volume=$(realpath ${CONF_out_root_host%%*##*( )}):${CONF_out_root} \ + --volume=$(realpath ${CONF_data_root_host%%*##*( )}):${CONF_data_root} \ + ${CONF_project_docker} \ No newline at end of file diff --git a/analyses/module1/scratch/.gitkeep b/analyses/cell-type-wilms-tumor-06/scratch/.gitkeep similarity index 100% rename from analyses/module1/scratch/.gitkeep rename to analyses/cell-type-wilms-tumor-06/scratch/.gitkeep diff --git a/analyses/module1/scripts/.gitkeep b/analyses/cell-type-wilms-tumor-06/scripts/.gitkeep similarity index 100% rename from analyses/module1/scripts/.gitkeep rename to analyses/cell-type-wilms-tumor-06/scripts/.gitkeep diff --git a/analyses/module1/Dockerfile b/analyses/module1/Dockerfile deleted file mode 100644 index 736d185a5..000000000 --- a/analyses/module1/Dockerfile +++ /dev/null @@ -1,216 +0,0 @@ -# pull base image -FROM rocker/tidyverse:4.3.0 - - -RUN apt-get update \ - && apt-get install -y --no-install-recommends \ - lbzip2 \ - libfftw3-dev \ - libgdal-dev \ - libgeos-dev \ - libgsl0-dev \ - libgl1-mesa-dev \ - libglu1-mesa-dev \ - libhdf4-alt-dev \ - libhdf5-dev \ - libjq-dev \ - libgeos-dev \ - libpq-dev \ - libproj-dev \ - libprotobuf-dev \ - libnetcdf-dev \ - libsqlite3-dev \ - libssl-dev \ - libudunits2-dev \ - netcdf-bin \ - postgis \ - protobuf-compiler \ - sqlite3 \ - tk-dev \ - unixodbc-dev - -# Change the default CRAN mirror -RUN echo "options(repos = c(CRAN = 'https://mran.microsoft.com/snapshot/2022-02-01'), download.file.method = 'libcurl')" >> ${R_HOME}/etc/Rprofile.site - -RUN apt-get update -qq \ - && apt-get -y --no-install-recommends install \ - htop \ - nano \ - libigraph-dev \ - libcairo2-dev \ - libxt-dev \ - libcurl4-openssl-dev \ - libcurl4 \ - libxml2-dev \ - libxt-dev \ - openssl \ - libssl-dev \ - wget \ - curl \ - bzip2 \ - libbz2-dev \ - libpng-dev \ - libhdf5-dev \ - pigz \ - libudunits2-dev \ - libgdal-dev \ - libgeos-dev \ - libboost-dev \ - libboost-iostreams-dev \ - libboost-log-dev \ - libboost-system-dev \ - libboost-test-dev \ - libz-dev \ - libarmadillo-dev \ - libglpk-dev \ - jags \ - libgsl-dev \ - libharfbuzz-dev \ - libfribidi-dev \ - cmake \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - - - - - - -# Set global R options -RUN echo "options(repos = 'https://cloud.r-project.org')" > $(R --no-echo --no-save -e "cat(Sys.getenv('R_HOME'))")/etc/Rprofile.site -ENV RETICULATE_MINICONDA_ENABLED=FALSE - -# Install Seurat's system dependencies -RUN apt-get update -RUN apt-get install -y \ - libhdf5-dev \ - libcurl4-openssl-dev \ - libssl-dev \ - libpng-dev \ - libboost-all-dev \ - libxml2-dev \ - openjdk-8-jdk \ - python3-dev \ - python3-pip \ - wget \ - git \ - libfftw3-dev \ - libgsl-dev \ - pkg-config - - - -# Install UMAP -RUN LLVM_CONFIG=/usr/lib/llvm-10/bin/llvm-config pip3 install llvmlite -RUN pip3 install numpy -RUN pip3 install umap-learn - -# Install FIt-SNE -RUN git clone --branch v1.2.1 https://github.com/KlugerLab/FIt-SNE.git -RUN g++ -std=c++11 -O3 FIt-SNE/src/sptree.cpp FIt-SNE/src/tsne.cpp FIt-SNE/src/nbodyfft.cpp -o bin/fast_tsne -pthread -lfftw3 -lm - - - -# Install latest Matrix -RUN R --no-echo --no-restore --no-save -e "install.packages('Matrix')" - -# Install Seurat -RUN R --no-echo --no-restore --no-save -e "install.packages('remotes')" -RUN R -e "remotes::install_github('satijalab/seurat', 'seurat5', quiet = TRUE)" -RUN R -e "remotes::install_github(repo = 'satijalab/azimuth', dependencies = TRUE)" - -RUN R -e "devtools::install_github('enblacar/SCpubr')" -RUN R -e "install.packages('scatterpie')" -RUN R -e "install.packages('concaveman')" - - -RUN R -e "update.packages(ask = FALSE)" - -RUN install2.r --error \ - DT \ - profvis \ - tictoc \ - markdown \ - plotly \ - bench \ - mclust - -RUN R -e "BiocManager::install(version = "3.17", ask = FALSE)" -RUN R -e "BiocManager::install('Biobase')" - -RUN R -e "BiocManager::install('glmGamPoi')" - -RUN R -e "devtools::install_github('YingMa0107/CARD')" -RUN R -e "devtools::install_github('carter-allen/spruce')" -RUN R -e "devtools::install_github('carter-allen/maple')" -RUN R -e "BiocManager::install('TOAST')" -RUN R -e "devtools::install_github('xuranw/MuSiC')" -RUN R -e "remotes::install_github('cancerbits/DElegate')" -RUN R -e "BiocManager::install('edgeR')" - - -RUN R -e "BiocManager::install(c('clusterProfiler', 'msigdb'))" -RUN R -e "devtools::install_github('wjawaid/enrichR')" - -RUN R -e "devtools::install_github('CBIIT-CGBB/scCorr')" -RUN R -e "install.packages('corrplot')" -RUN R -e "install.packages('DT')" -RUN R -e "install.packages('pheatmap')" -#RUN R -e "devtools::install_github('kassambara/ggpubr')" -#RUN R -e "BiocManager::install('scater')" -#RUN R -e "remotes::install_github('XiaoZhangryy/iSC.MEB')" - -RUN R -e "install.packages('msigdbr')" - -RUN apt-get install -y libmagick++-dev -RUN R -e "remotes::install_github('jbergenstrahle/STUtility')" -RUN R -e "devtools::install_github('davidgohel/ggiraph')" -RUN R -e "remotes::install_github('ludvigla/semla')" -RUN R -e "install.packages(c('shinyBS', 'beakr', 'colourpicker'))" -RUN R -e "devtools::install_github('kassambara/ggpubr')" -RUN R -e "remotes::install_github('dgrun/RaceID3_StemID2_package')" -RUN R -e "BiocManager::install('TSCAN')" -RUN R -e "BiocManager::install('dittoSeq')" -RUN R -e "BiocManager::install('infercnv')" - -RUN R -e "devtools::install_github('lme4/lme4',dependencies=TRUE)" -RUN R -e "devtools::install_github('hojsgaard/pbkrtest')" -RUN R -e "devtools::install_github('statistikat/VIM')" -RUN R -e "BiocManager::install('destiny')" -RUN R -e "remotes::install_github('aet21/SCENT')" -RUN R -e "devtools::install_github('hwarden162/SCEnt')" -RUN R -e "BiocManager::install('scater')" - -# Intsall SPATA2 and dependencies -RUN R -e "BiocManager::install(c('batchelor', 'Matrix.utils', 'EBImage'))" - -RUN R -e "devtools::install_github('kueckelj/confuns')" -RUN R -e "devtools::install_github('theMILOlab/SPATAData')" -RUN R -e "remotes::install_github('cvarrichio/Matrix.utils')" -RUN R -e "install.packages('anndata')" -RUN R -e "devtools::install_github('theMILOlab/SPATA2')" - -RUN R -e "install.packages('glmnet')" -RUN R -e "install.packages('simpleCache')" -RUN R -e "install.packages('caret')" -RUN R -e "install.packages('SoupX')" -RUN R -e "remotes::install_github(repo = 'cancerbits/canceRbits')" -RUN R -e "BiocManager::install('scRepertoire')" - - -RUN R -e "remotes::install_github('satijalab/seurat-wrappers')" -RUN R -e "devtools::install_github('YuLab-SMU/ggtree')" -RUN R -e "BiocManager::install(c('clusterProfiler'))" - -#RUN chmod -R a+rw ${R_HOME}/site-library # so that everyone can dynamically install more libraries within container -#RUN chmod -R a+rw ${R_HOME}/library - -# add custom options for rstudio sessions -# make sure sessions stay alive forever -RUN echo "session-timeout-minutes=0" >> /etc/rstudio/rsession.conf -# make sure we get rstudio server logs in the container -# RUN echo $'[*]\nlog-level=warn\nlogger-type=file\n' > /etc/rstudio/logging.conf - -# make sure all R related binaries are in PATH in case we want to call them directly -ENV PATH ${R_HOME}/bin:$PATH - diff --git a/data/download-data.py b/data/download-data.py deleted file mode 100644 index 8fdda6700..000000000 --- a/data/download-data.py +++ /dev/null @@ -1,537 +0,0 @@ -#!/usr/bin/env python3 - -# Script for downloading data from an OpenScPCA data release - -import argparse -import datetime -import fnmatch -import os -import pathlib -import re -import subprocess -import sys -from typing import List, Set - -# enable text formatting on Windows -os.system("") - -RELEASE_BUCKET = "openscpca-data-release" -TEST_BUCKET = "openscpca-test-data-release-public-access" - - -def get_releases(bucket: str, profile: str, test_data: bool) -> List[str]: - """ - Get the list of available releases from an OpenScPCA bucket. - """ - ls_cmd = ["aws", "s3", "ls", f"s3://{bucket}/"] - if profile: - ls_cmd += ["--profile", profile] - if test_data: - ls_cmd += ["--no-sign-request"] - ls_result = subprocess.run(ls_cmd, capture_output=True, text=True) - if ls_result.returncode: # authentication errors, usually - print( - "Error listing release versions from the OpenScPCA bucket.\n\n" - "Make sure you have the correct profile active (or use the --profile option)" - " and run `aws sso login` before running this script.\n\n" - "AWS Error: ", - ls_result.stderr, # print the AWS error text too - file=sys.stderr, - ) - sys.exit(ls_result.returncode) - - # get only date-based versions and remove the trailing slash - date_re = re.compile(r"PRE\s+(20\d{2}-[01]\d-[0123]\d)/$") - return [ - m.group(1) - for m in (date_re.search(line) for line in ls_result.stdout.splitlines()) - if m - ] - - -def build_sync_cmd( - bucket: str, - release: str, - test_data: bool, - download_dir: pathlib.Path, - include_patterns: List[str] = [], - dryrun: bool = False, - profile: str = "", -) -> List[str]: - sync_cmd = [ - "aws", - "s3", - "sync", - f"s3://{bucket}/{release}/", - download_dir, - "--exact-timestamps", # replace if a file has changed at all - "--no-progress", # don't show progress animations - ] - - if include_patterns: - sync_cmd += ["--exclude", "*"] - - for pattern in include_patterns: - sync_cmd += ["--include", pattern] - - if dryrun: - sync_cmd += ["--dryrun"] - - if profile: - sync_cmd += ["--profile", profile] - - if test_data: - sync_cmd += ["--no-sign-request"] - - return sync_cmd - - -def get_download_size( - bucket: str, - release: str, - test_data: bool, - include_patterns: List[str] = ["*"], - profile: str = "", -) -> int: - """ - Get the total size of files that will be downloaded from AWS S3 that match the include patterns. - """ - ls_cmd = ["aws", "s3", "ls", f"s3://{bucket}/{release}/", "--recursive"] - if profile: - ls_cmd += ["--profile", profile] - if test_data: - ls_cmd += ["--no-sign-request"] - file_list = subprocess.run(ls_cmd, capture_output=True, text=True) - file_list.check_returncode() - - total_size = 0 - for line in file_list.stdout.splitlines(): - size, file = line.split()[-2:] - if any( - fnmatch.fnmatch(file, release + "/" + pattern) - for pattern in include_patterns - ): - total_size += int(size) - return total_size - - -def make_size_human(size: int) -> str: - """ - Convert a size in bytes to something human readable. - """ - for unit in ["B", "KiB", "MiB", "GiB", "TiB"]: - if size < 1024.0 or unit == "TiB": - break - size /= 1024.0 - if unit == "B": - return f"{size:.0f} B" - return f"{size:.2f} {unit}" - - -def add_parent_dirs(patterns: List[str], dirs: List[str]) -> List[str]: - """ - Add parent directories to each AWS include pattern. - """ - parent_patterns = [] - for pattern in patterns: - # Prepend only if the pattern starts with a wildcard - if pattern.startswith("*"): - parent_patterns += [ - # add parent directory exact or final sample in multiplexed - f"*{d}/{pattern}" - for d in dirs - ] - parent_patterns += [ - # add partial parent directory for multiplexed samples - f"*{d}_*/{pattern}" - for d in dirs - ] - else: - parent_patterns += [pattern] - return parent_patterns - - -def update_symlink(data_dir: pathlib.Path, target: str, dryrun: bool = False) -> None: - """ - Update the {data_dir}/current symlink to direct to target. - If `dryrun` is True, this function will print the expected outcome only. - """ - target_path = data_dir / target - - # Ensure the target path exists before updating symlink - if not target_path.exists(): - print( - f"\nThe requested target directory '{target}' does not exist, so the symlink will not be changed.\n", - "Please instead download the desired release with the `--release` flag.", - file=sys.stderr, - ) - sys.exit(1) - else: - if dryrun: - print(f"\nThe 'current' symlink would be updated to point to '{target}'.") - else: - current_symlink = data_dir / "current" - current_symlink.unlink(missing_ok=True) - current_symlink.symlink_to(target_path) - print(f"Updated 'current' symlink to point to '{target}'.") - - -def download_release_data( - bucket: str, - release: str, - test_data: bool, - data_dir: pathlib.Path, - formats: Set[str], - stages: Set[str], - include_reports: bool = False, - projects: Set[str] = {}, - samples: Set[str] = {}, - dryrun: bool = False, - profile: str = "", - update_current: bool = True, -) -> None: - """ - Download data for a specific release of OpenScPCA. - """ - # Build the basic sync command - download_dir = data_dir / release - - # Always include json, tsv metadata files and DATA_USAGE.md - patterns = ["*.json", "*_metadata.tsv", "DATA_USAGE.md"] - - # separate bulk from other stages - include_bulk = "bulk" in stages - stages = stages - {"bulk"} - - if include_reports: - patterns += ["*.html"] - - if "sce" in formats: - patterns += [f"*_{level}.rds" for level in stages] - - if "anndata" in formats: - patterns += [f"*_{level}_*.h5ad" for level in stages] - patterns += [f"*_{level}_*.hdf5" for level in stages] - - # If projects or samples are specified, extend the file-only patterns to specify parent directories - if projects: - patterns = add_parent_dirs(patterns, projects) - elif samples: - patterns = add_parent_dirs(patterns, samples) - - # if samples are specified, bulk is excluded, as it is not associated with individual samples - if include_bulk and not samples: - if projects: - patterns += [f"{project}/*_bulk_*.tsv" for project in projects] - else: - patterns += ["*_bulk_*.tsv"] - - ### build sync command and run ### - sync_cmd = build_sync_cmd( - bucket=bucket, - release=release, - test_data=test_data, - download_dir=download_dir, - include_patterns=patterns, - dryrun=dryrun, - profile=profile, - ) - - subprocess.run(sync_cmd, check=True) - - download_size = get_download_size( - bucket=bucket, - release=release, - test_data=test_data, - include_patterns=patterns, - profile=profile, - ) - - ### Print summary messages ### - print("\n\n\033[1mDownload Summary\033[0m") # bold - print("Release:", release) - if formats: - print("Data Format:", ", ".join(formats)) - if stages: - print("Processing levels:", ", ".join(stages)) - if projects: - print("Projects:", ", ".join(projects)) - if samples: - print("Samples:", ", ".join(samples)) - if dryrun: - print("Data download location:", download_dir) - else: - print("Downloaded data to:", download_dir) - print( - "Total download size (includes previous downloads):", - make_size_human(download_size), - ) - - ### Update current link to point to new or test data if required ### - # only do this if we are using test data or the specified release is "current" or "latest", not for specific dates - if update_current: - if not dryrun: - update_symlink(data_dir, release) - else: - print(f"\nThe 'current' symlink would be updated to point to '{release}'.") - - -def main() -> None: - parser = argparse.ArgumentParser( - description="Download data for OpenScPCA.", - ) - parser.add_argument( - "--list-releases", - action="store_true", - help="List the available release versions and exit.", - ) - parser.add_argument( - "--projects", - type=str, - default="", - help=( - "The project(s) to download." - " A comma separated list of Project IDs to download." - " Defaults to all. Can not be combined with `--samples`." - ), - ) - parser.add_argument( - "--samples", - type=str, - default="", - help="The sample(s) to download." - " A comma separated list of Sample IDs to download." - " Defaults to all. Can not be combined with `--projects`." - " If specified, bulk files are always excluded.", - ) - parser.add_argument( - "--format", - type=str, - help=( - "The format to download the data in. Either 'SCE' or 'AnnData'." - " Defaults to 'SCE'." - " For more than one format, use a comma separated list with no spaces." - ), - default="SCE", - ) - parser.add_argument( - "--process-stage", - type=str, - default="processed", - help=( - "The stage of processing for the data files to include." - " One or more of 'processed', 'filtered', 'unfiltered', or 'bulk'." - " Defaults to 'processed'." - " For more than one level, use a comma separated list." - ), - ) - parser.add_argument( - "--release", - type=str, - help="The release version to download. Defaults to 'current'.", - default="", # set in code - ) - parser.add_argument( - "--test-data", - action="store_true", - help="Download test data from the test bucket and direct the `current` symlink to the test data directory." - " To switch back, rerun this script with either the `--release current` option or the `--update-symlink` flag.", - ) - parser.add_argument( - "--metadata-only", - action="store_true", - help="Download only the metadata files and not the data files." - " To also download QC reports, combine with the --include-reports option." - " Can be combined with --projects, but not with --samples. --format and --process-stage are ignored.", - ) - parser.add_argument( - "--include-reports", - action="store_true", - help="Include html report files in the download." - " Note that test data does not include report files.", - ) - parser.add_argument( - "--data-dir", - type=pathlib.Path, - help=( - "The directory to download the data to." - " Defaults to the `data` directory in this repository." - ), - default=pathlib.Path(__file__).parent / "data", - ) - parser.add_argument( - "--dryrun", - action="store_true", - help="Perform a dry run of the download: show what would be done but do not download anything.", - ) - parser.add_argument( - "--profile", - type=str, - default="", - help="The AWS profile to use for the download. Uses the current default profile if undefined.", - ) - parser.add_argument( - "--update-symlink", - action="store_true", - help="Whether to update the 'current' symlink to direct to a different data release." - " By default, the symlink will be updated to direct to the latest local release." - " Provide the --release flag to specify a different release." - " To update the symlink to direct to test data, use the --test-data flag." - " No data will be downloaded if this flag is used.", - ) - args = parser.parse_args() - - ### Validate the arguments ### - validation_error = False - # Check formats are valid and make a set - sce_formats = {"sce", "rds"} - anndata_formats = {"anndata", "h5ad", "hdf5"} - formats = {f.lower() for f in args.format.split(",")} - if not all(f in sce_formats | anndata_formats for f in formats): - print( - f"Format '{args.format}' not available.", - "Must be 'SCE', 'AnnData', or a comma separated list of those options.", - file=sys.stderr, - ) - validation_error = True - - # Check include levels are valid & make a set - process_stages = {"unfiltered", "filtered", "processed", "bulk"} - stages = {x.strip().lower() for x in args.process_stage.split(",")} - if not all(x in process_stages for x in stages): - print( - f"process-stage option '{args.process_stage}' is not valid.", - "Must be 'processed', 'filtered', 'unfiltered', 'bulk', or a comma separated list of those.", - file=sys.stderr, - ) - validation_error = True - - # Check that only a release or test-data was set, and set buckets and default release - if args.release and args.test_data: - print( - "Only one of `--release` or `--test-data` can be set.", - file=sys.stderr, - ) - validation_error = True - elif args.test_data: - bucket = TEST_BUCKET - else: - args.release = args.release or "current" - bucket = RELEASE_BUCKET - # Check that projects and samples are not requested together - if args.projects and args.samples: - print( - "Using both `--projects` and `--samples` options together is not supported.", - file=sys.stderr, - ) - validation_error = True - - if args.metadata_only and args.samples: - print( - "Using `--metadata-only` and `--samples` options together is not supported.", - file=sys.stderr, - ) - validation_error = True - - if validation_error: - sys.exit(1) - - # check project and sample names - projects = {p.strip() for p in args.projects.split(",")} if args.projects else {} - samples = {s.strip() for s in args.samples.split(",")} if args.samples else {} - if projects and not all(p.startswith("SCPCP") for p in projects): - print( - "Some project ids do not start with 'SCPCP' as expected.", - file=sys.stderr, - ) - if samples and not all(s.startswith("SCPCS") for s in samples): - print( - "Some sample ids do not start with 'SCPCS' as expected.", - file=sys.stderr, - ) - - if args.samples and "bulk" in stages: - print( - "Bulk data is not available for individual samples, so bulk data will be skipped.", - file=sys.stderr, - ) - - ### Update symlink if requested, without downloading data, if the target directory exists - if args.update_symlink: - if args.test_data: - target = "test" - else: - target = args.release - - if target == "current": - # find the most recent local release to use as target - dated_releases = ( - x.name - for x in args.data_dir.iterdir() - if x.is_dir() - and re.match(r"\d{4}-\d{2}-\d{2}$", x.name) - and x.name <= datetime.date.today().isoformat() - ) - most_recent = max(dated_releases) - update_symlink(args.data_dir, most_recent, dryrun=args.dryrun) - else: - update_symlink(args.data_dir, target, dryrun=args.dryrun) - - sys.exit(0) - - ### List the available releases or modules ### - all_releases = get_releases( - bucket=bucket, profile=args.profile, test_data=args.test_data - ) - - # hide any future releases and sort in reverse order - current_releases = [ - r for r in all_releases if r <= datetime.date.today().isoformat() - ] - current_releases.sort(reverse=True) - - # list the current releases and exit if that was what was requested - if args.list_releases: - print("Available release dates:\n", "\n".join(current_releases), sep="\n") - return - - # get the release to use or exit if it is not available - if args.test_data: - release = "test" - elif args.release.casefold() in {"current", "latest"}: - release = current_releases[0] - elif args.release in all_releases: # allow downloads from the future - release = args.release - else: - print( - f"Release dated '{args.release}' is not available. Available release dates are:\n", - "\n".join(all_releases), - sep="\n", - file=sys.stderr, - ) - sys.exit(1) - - if args.metadata_only: - formats = set() - stages = set() - - ### Download the data ### - download_release_data( - bucket=bucket, - release=release, - test_data=args.test_data, - data_dir=args.data_dir, - formats=formats, - stages=stages, - include_reports=args.include_reports, - projects=args.projects.split(",") if args.projects else [], - samples=args.samples.split(",") if args.samples else [], - dryrun=args.dryrun, - profile=args.profile, - update_current=args.test_data - or args.release.casefold() in {"current", "latest"}, - ) - - -if __name__ == "__main__": - main() From b2a1167f1003100fd1b5aceea217f9613d9f1d96 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 1 Aug 2024 21:24:08 +0200 Subject: [PATCH 13/47] Update analyses/cell-type-wilms-tumor-06/Dockerfile Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/Dockerfile b/analyses/cell-type-wilms-tumor-06/Dockerfile index 2a71150ba..a48619ef4 100644 --- a/analyses/cell-type-wilms-tumor-06/Dockerfile +++ b/analyses/cell-type-wilms-tumor-06/Dockerfile @@ -3,7 +3,6 @@ FROM bioconductor/tidyverse:3.19 # Change the default CRAN mirror -RUN echo "options(repos = c(CRAN = 'https://mran.microsoft.com/snapshot/2022-02-01'), download.file.method = 'libcurl')" >> ${R_HOME}/etc/Rprofile.site # Set global R options From b096507717e86c74b021a9e710b6f4ac1870e080 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 1 Aug 2024 21:24:36 +0200 Subject: [PATCH 14/47] Update analyses/cell-type-wilms-tumor-06/Dockerfile Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/Dockerfile b/analyses/cell-type-wilms-tumor-06/Dockerfile index a48619ef4..32794ecd7 100644 --- a/analyses/cell-type-wilms-tumor-06/Dockerfile +++ b/analyses/cell-type-wilms-tumor-06/Dockerfile @@ -10,10 +10,10 @@ RUN echo "options(repos = 'https://cloud.r-project.org')" > $(R --no-echo --no-s ENV RETICULATE_MINICONDA_ENABLED=FALSE -RUN R -e "devtools::install_github('enblacar/SCpubr')" RUN R --no-echo --no-restore --no-save -e "install.packages('remotes')" -RUN R -e "remotes::install_github('satijalab/seurat', 'seurat5', quiet = TRUE)" # this also install patchwork (and others) -RUN R -e "remotes::install_github('satijalab/azimuth', quiet = TRUE)" # this also install SingleCellExperiment, DT (and others) +RUN R -e "remotes::install_version('SCpubr', version = '2.0.2', quiet = TRUE)" +RUN R -e "remotes::install_github('satijalab/seurat@v5.1.0', quiet = TRUE)" # this also install patchwork (and others) +RUN R -e "remotes::install_github('satijalab/azimuth@v0.5.0', quiet = TRUE)" # this also install SingleCellExperiment, DT (and others) #RUN chmod -R a+rw ${R_HOME}/site-library # so that everyone can dynamically install more libraries within container From 89d829997f1c0d28f54747d3b4108361845010f0 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 1 Aug 2024 21:24:58 +0200 Subject: [PATCH 15/47] Update analyses/cell-type-wilms-tumor-06/README.md Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 92ec67cc9..9c1423e1f 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -1,6 +1,9 @@ # Wilms Tumor Dataset Annotation (SCPCP000006) -Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an exacerbated intra- and inter- tumor heterogeneity. The genetic landscape of WT is very diverse in each of the histological contingents. The COG classifies WT patients into two groups: the favorable histology and diffuse anaplasia. Each of these groups is composed of the blastemal, epithelial, and stromal populations of cancer cells in different proportions, as well as cells from the normal kidney, mostly kidney epithelial cells, endothelial cells, immune cells and normal stromal cells (fibroblast). +Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an exacerbated intra- and inter- tumor heterogeneity. +The genetic landscape of WT is very diverse in each of the histological contingents. +The COG classifies WT patients into two groups: the favorable histology and diffuse anaplasia. +Each of these groups is composed of the blastemal, epithelial, and stromal populations of cancer cells in different proportions, as well as cells from the normal kidney, mostly kidney epithelial cells, endothelial cells, immune cells and normal stromal cells (fibroblast). ## Description From e25c391bb7b6307942df81504960065259627585 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 1 Aug 2024 21:25:47 +0200 Subject: [PATCH 16/47] Update analyses/cell-type-wilms-tumor-06/README.md Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 9c1423e1f..199dd3671 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -29,7 +29,7 @@ You can also simply have a look at the html reports in the notebook folder. Here ## Input files -In this module, we start with the processed `SingleCellExperiment` objects from the ScPCA Portal. +In this module, we start with the processed `SingleCellExperiment` objects from the ScPCA Portal for `SCPCP000006`. Data have been downloaded locally and are found in mnt_data. the mnt_data folder has to be define in the config.yaml file or changed in the notebook accordingly. ```{r paths} From 97799c2f1fad93b1fb3cb8b17eaf415cdd08a1dd Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 1 Aug 2024 21:26:24 +0200 Subject: [PATCH 17/47] Update analyses/cell-type-wilms-tumor-06/README.md Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 199dd3671..5955f6f0c 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -24,8 +24,10 @@ The analysis is/will be divided as the following: [ ] Notebook: explore results from step 6, integrate all samples together and annotate the dataset using (i) metadatafile, (ii) CNV information, (iii) label transfer information ## Usage -From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). Please before running the script, make sure that the paths are correct. -You can also simply have a look at the html reports in the notebook folder. Here, no need to run anything, we try to guide you through the analysis. Have a look at the code using the unhide code button on the top right of each chunk! +From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). +Please before running the script, make sure that the paths are correct. +You can also simply have a look at the html reports in the notebook folder. +Here, no need to run anything, we try to guide you through the analysis. Have a look at the code using the unhide code button on the top right of each chunk! ## Input files From 85d4a0912e602f05af341f7f85fe904fa83f0664 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Thu, 1 Aug 2024 21:27:46 +0200 Subject: [PATCH 18/47] Update analyses/cell-type-wilms-tumor-06/README.md Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 5955f6f0c..e92669112 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -15,13 +15,13 @@ Based on the provided annotation, we would like to additionally provide a refere The analysis is/will be divided as the following: -[x] Metadata file: compilation of a metadata file of marker genes for expected cell types that will be used for validation at a later step -[ ] Script: clustering of cells across a set of parameters for few samples -[ ] Script: label transfer from the fetal kidney atlas reference using runAzimuth -[ ] Script: run InferCNV -[ ] Notebook: explore results from steps 2 to 4 for about 5 to 10 samples -[ ] Script: compile scripts 2 to 4 in a RMardown file with required adjustements and render it across all samples -[ ] Notebook: explore results from step 6, integrate all samples together and annotate the dataset using (i) metadatafile, (ii) CNV information, (iii) label transfer information +- [x] Metadata file: compilation of a metadata file of marker genes for expected cell types that will be used for validation at a later step +- [ ] Script: clustering of cells across a set of parameters for few samples +- [ ] Script: label transfer from the fetal kidney atlas reference using runAzimuth +- [ ] Script: run InferCNV +- [ ] Notebook: explore results from steps 2 to 4 for about 5 to 10 samples +- [ ] Script: compile scripts 2 to 4 in a RMardown file with required adjustements and render it across all samples +- [ ] Notebook: explore results from step 6, integrate all samples together and annotate the dataset using (i) metadatafile, (ii) CNV information, (iii) label transfer information ## Usage From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). From 09e102b4cb6920b9595b164863055f755a4b0ced Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 13:17:36 +0200 Subject: [PATCH 19/47] Update Dockerfile --- analyses/cell-type-wilms-tumor-06/Dockerfile | 24 ++++++-------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/Dockerfile b/analyses/cell-type-wilms-tumor-06/Dockerfile index 32794ecd7..819287093 100644 --- a/analyses/cell-type-wilms-tumor-06/Dockerfile +++ b/analyses/cell-type-wilms-tumor-06/Dockerfile @@ -1,29 +1,19 @@ # pull base image FROM bioconductor/tidyverse:3.19 - -# Change the default CRAN mirror - - # Set global R options RUN echo "options(repos = 'https://cloud.r-project.org')" > $(R --no-echo --no-save -e "cat(Sys.getenv('R_HOME'))")/etc/Rprofile.site ENV RETICULATE_MINICONDA_ENABLED=FALSE - RUN R --no-echo --no-restore --no-save -e "install.packages('remotes')" -RUN R -e "remotes::install_version('SCpubr', version = '2.0.2', quiet = TRUE)" -RUN R -e "remotes::install_github('satijalab/seurat@v5.1.0', quiet = TRUE)" # this also install patchwork (and others) -RUN R -e "remotes::install_github('satijalab/azimuth@v0.5.0', quiet = TRUE)" # this also install SingleCellExperiment, DT (and others) - - -#RUN chmod -R a+rw ${R_HOME}/site-library # so that everyone can dynamically install more libraries within container -#RUN chmod -R a+rw ${R_HOME}/library -# add custom options for rstudio sessions -# make sure sessions stay alive forever -RUN echo "session-timeout-minutes=0" >> /etc/rstudio/rsession.conf -# make sure we get rstudio server logs in the container -# RUN echo $'[*]\nlog-level=warn\nlogger-type=file\n' > /etc/rstudio/logging.conf +RUN R -e "devtools::install_github('enblacar/SCpubr')" +RUN R -e "remotes::install_github('satijalab/seurat', 'seurat5', quiet = TRUE)" # this also install patchwork (and others) +RUN R -e "remotes::install_github('satijalab/azimuth', quiet = TRUE)" # this also install SingleCellExperiment, DT (and others) +RUN R -e "remotes::install_github('cancerbits/DElegate')" +RUN R -e "install.packages('viridis')" +RUN R -e "install.packages('ggplotify')" +RUN R -e "BiocManager::install('edgeR')" # make sure all R related binaries are in PATH in case we want to call them directly ENV PATH ${R_HOME}/bin:$PATH From 09de604e3d99507d3f577a2459410b653659849f Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 13:28:24 +0200 Subject: [PATCH 20/47] change inpu data --- analyses/cell-type-wilms-tumor-06/README.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index e92669112..0cf574a81 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -31,12 +31,16 @@ Here, no need to run anything, we try to guide you through the analysis. Have a ## Input files -In this module, we start with the processed `SingleCellExperiment` objects from the ScPCA Portal for `SCPCP000006`. -Data have been downloaded locally and are found in mnt_data. the mnt_data folder has to be define in the config.yaml file or changed in the notebook accordingly. +We work with the _processed.rds SingleCellExperiment objects. +From the module directory, use download-data.py to download the data as the following: -```{r paths} -path_to_data <- "~/mnt_data/Wilms ALSF/SCPCP000006_2024-06-25" +```shell +../../download-data.py --projects SCPCP000006 ``` +This is saving the data in OpenScPCA-analysis/data/ + +Of note, this requires AWS CLI setup to run as intended: https://openscpca.readthedocs.io/en/latest/technical-setup/environment-setup/configure-aws-cli/ + ## Output files From fa2d6a5417948800d838aef1c6f6bf10a2839ec1 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:03:23 +0200 Subject: [PATCH 21/47] update_data_download_steps --- analyses/cell-type-wilms-tumor-06/README.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 0cf574a81..74963a0f2 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -32,8 +32,20 @@ Here, no need to run anything, we try to guide you through the analysis. Have a ## Input files We work with the _processed.rds SingleCellExperiment objects. -From the module directory, use download-data.py to download the data as the following: +From the module directory, make sure that the conda environment is set-up: +```shell +conda activate openscpca +``` + +log into AWS CLI: +```shell +# replace `openscpca` with your AWS CLI profile name if it differs +export AWS_PROFILE=openscpca +aws sso login +``` + +use download-data.py to download the data as the following: ```shell ../../download-data.py --projects SCPCP000006 ``` From 38c1ae2414d69660d8c5a8cf12e18c3b44314a8e Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:30:13 +0200 Subject: [PATCH 22/47] add sample metadata information --- analyses/cell-type-wilms-tumor-06/README.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 74963a0f2..41abba550 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -31,6 +31,8 @@ Here, no need to run anything, we try to guide you through the analysis. Have a ## Input files +### single nuclei data + We work with the _processed.rds SingleCellExperiment objects. From the module directory, make sure that the conda environment is set-up: @@ -49,10 +51,20 @@ use download-data.py to download the data as the following: ```shell ../../download-data.py --projects SCPCP000006 ``` -This is saving the data in OpenScPCA-analysis/data/ +This is saving the data in OpenScPCA-analysis/data/current/SCPCP000006 Of note, this requires AWS CLI setup to run as intended: https://openscpca.readthedocs.io/en/latest/technical-setup/environment-setup/configure-aws-cli/ +### sample metadata + +The OpenScPCA-analysis/data/current/SCPCP000006/single_cell_metadata.tsv file contains clinical information related to the samples in the dataset. +Some information can be helpful for annotation and validation: + +- treatment: Some of the samples have been pre-treated with chemotherapy and some are upfront resection. +We expect few changes between the 2 conditions, including a higher immune infiltration and more DNA damages pathways in treated samples. + +- histology: the COG classifies Wilms tumor as either (i) Favorable or (ii) Anaplastic. +Some differenices are expected, some marker genes or pathways are associated with anaplasia (see sets of marker gene). ## Output files From cbd6be300e9e5cfec48a4c584c13829ecf35da7c Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:46:35 +0200 Subject: [PATCH 23/47] remove unused mount directories --- analyses/cell-type-wilms-tumor-06/config.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/config.yaml b/analyses/cell-type-wilms-tumor-06/config.yaml index d4f4e4776..37c992179 100644 --- a/analyses/cell-type-wilms-tumor-06/config.yaml +++ b/analyses/cell-type-wilms-tumor-06/config.yaml @@ -4,14 +4,9 @@ project_docker: cancerbits/dockr:maudp_ScPCAOpen_podman # SYSTEM-SPECIFIC PARAMETERS (please change to match your local setup): project_root_host: $CODEBASE/OpenScPCA-analysis/ -data_root_host: $DATA -out_root_host: $OUT -resource_root_host: $RESOURCES + # PATHS AS VISIBLE WITHIN RSTUDIO (should not be changed): project_root: /home/rstudio -data_root: /home/rstudio/mnt_data -out_root: /home/rstudio/mnt_out -resource_root: /home/rstudio/mnt_resources/ tmp_root: /home/rstudio/mnt_tmp/ From 835b0c56c474977fa02726666a6495ed319ec31b Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:47:55 +0200 Subject: [PATCH 24/47] remove unused volumes --- analyses/cell-type-wilms-tumor-06/run.sh | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/run.sh b/analyses/cell-type-wilms-tumor-06/run.sh index dd24357a8..6933e8f3b 100644 --- a/analyses/cell-type-wilms-tumor-06/run.sh +++ b/analyses/cell-type-wilms-tumor-06/run.sh @@ -23,7 +23,4 @@ podman run -d --rm \ -e PASSWORD=wordpass \ -e TZ=Europe/Vienna \ --volume=$(realpath ${CONF_project_root_host%%*##*( )}):${CONF_project_root} \ - --volume=$(realpath ${CONF_resource_root_host%%*##*( )}):${CONF_resource_root}:ro \ - --volume=$(realpath ${CONF_out_root_host%%*##*( )}):${CONF_out_root} \ - --volume=$(realpath ${CONF_data_root_host%%*##*( )}):${CONF_data_root} \ - ${CONF_project_docker} \ No newline at end of file + ${CONF_project_docker} From 3adc01b771ba855591eb745c5eaca58ee7f544d9 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Fri, 2 Aug 2024 13:44:12 +0000 Subject: [PATCH 25/47] adding renv.lock file --- analyses/cell-type-wilms-tumor-06/renv.lock | 3815 +++++++++++++++++++ 1 file changed, 3815 insertions(+) create mode 100644 analyses/cell-type-wilms-tumor-06/renv.lock diff --git a/analyses/cell-type-wilms-tumor-06/renv.lock b/analyses/cell-type-wilms-tumor-06/renv.lock new file mode 100644 index 000000000..bc2a5be30 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/renv.lock @@ -0,0 +1,3815 @@ +{ + "R": { + "Version": "4.4.1", + "Repositories": [ + { + "Name": "https://cloud.r-project.org", + "URL": "https://cloud.r-project.org" + } + ] + }, + "Bioconductor": { + "Version": "3.19" + }, + "Packages": { + "AnnotationDbi": { + "Package": "AnnotationDbi", + "Version": "1.64.1", + "Source": "Bioconductor", + "Requirements": [ + "Biobase", + "BiocGenerics", + "DBI", + "IRanges", + "KEGGREST", + "R", + "RSQLite", + "S4Vectors", + "methods", + "stats", + "stats4" + ], + "Hash": "27587689922e22f60ec9ad0182a0a825" + }, + "AnnotationFilter": { + "Package": "AnnotationFilter", + "Version": "1.26.0", + "Source": "Bioconductor", + "Requirements": [ + "GenomicRanges", + "R", + "lazyeval", + "methods", + "utils" + ], + "Hash": "759acec0b1522c1a85c6ba703d4c0ec5" + }, + "Azimuth": { + "Package": "Azimuth", + "Version": "0.5.0", + "Source": "GitHub", + "Remotes": "immunogenomics/presto, satijalab/seurat-data, mojaveazure/seurat-disk", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "azimuth", + "RemoteUsername": "satijalab", + "RemoteRef": "HEAD", + "RemoteSha": "243ee5db80fcbffa3452c944254a325a3da2ef9e", + "Requirements": [ + "BSgenome.Hsapiens.UCSC.hg38", + "DT", + "EnsDb.Hsapiens.v86", + "JASPAR2020", + "Matrix", + "R", + "Rcpp", + "Seurat", + "SeuratData", + "SeuratDisk", + "SeuratObject", + "Signac", + "TFBSTools", + "future", + "ggplot2", + "glmGamPoi", + "googlesheets4", + "hdf5r", + "htmltools", + "httr", + "jsonlite", + "methods", + "patchwork", + "plotly", + "presto", + "rlang", + "scales", + "shiny", + "shinyBS", + "shinydashboard", + "shinyjs", + "stats", + "stringr", + "tools", + "utils", + "withr" + ], + "Hash": "59d0a6084aa8b75b77a5da511d0786f6" + }, + "BH": { + "Package": "BH", + "Version": "1.84.0-0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "a8235afbcd6316e6e91433ea47661013" + }, + "BSgenome": { + "Package": "BSgenome", + "Version": "1.70.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "BiocIO", + "Biostrings", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "Rsamtools", + "S4Vectors", + "XVector", + "matrixStats", + "methods", + "rtracklayer", + "stats", + "utils" + ], + "Hash": "41a60ca70f713322ca31026f6b9e052b" + }, + "BSgenome.Hsapiens.UCSC.hg38": { + "Package": "BSgenome.Hsapiens.UCSC.hg38", + "Version": "1.4.5", + "Source": "Bioconductor", + "Requirements": [ + "BSgenome", + "GenomeInfoDb", + "R" + ], + "Hash": "0ba28cc20a4f8629fbb30d0bf1a133ac" + }, + "Biobase": { + "Package": "Biobase", + "Version": "2.62.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "R", + "methods", + "utils" + ], + "Hash": "38252a34e82d3ff6bb46b4e2252d2dce" + }, + "BiocFileCache": { + "Package": "BiocFileCache", + "Version": "2.10.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "DBI", + "R", + "RSQLite", + "curl", + "dbplyr", + "dplyr", + "filelock", + "httr", + "methods", + "stats", + "utils" + ], + "Hash": "d59a927de08cce606299009cc595b2cb" + }, + "BiocGenerics": { + "Package": "BiocGenerics", + "Version": "0.48.1", + "Source": "Bioconductor", + "Requirements": [ + "R", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "e34278c65d7dffcc08f737bf0944ca9a" + }, + "BiocIO": { + "Package": "BiocIO", + "Version": "1.12.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "R", + "S4Vectors", + "methods", + "tools" + ], + "Hash": "aa543468283543c9a8dad23a4897be96" + }, + "BiocManager": { + "Package": "BiocManager", + "Version": "1.30.23", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "47e968dfe563c1b22c2e20a067ec21d5" + }, + "BiocParallel": { + "Package": "BiocParallel", + "Version": "1.36.0", + "Source": "Bioconductor", + "Requirements": [ + "BH", + "R", + "codetools", + "cpp11", + "futile.logger", + "methods", + "parallel", + "snow", + "stats", + "utils" + ], + "Hash": "6d1689ee8b65614ba6ef4012a67b663a" + }, + "BiocVersion": { + "Package": "BiocVersion", + "Version": "3.19.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.19", + "Requirements": [ + "R" + ], + "Hash": "b892e27fc9659a4c8f8787d34c37b8b2" + }, + "Biostrings": { + "Package": "Biostrings", + "Version": "2.70.3", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDb", + "IRanges", + "R", + "S4Vectors", + "XVector", + "crayon", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "86ffa781f132f54e9c963a13fd6cf9fc" + }, + "CNEr": { + "Package": "CNEr", + "Version": "1.38.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "Biostrings", + "DBI", + "GO.db", + "GenomeInfoDb", + "GenomicAlignments", + "GenomicRanges", + "IRanges", + "KEGGREST", + "R", + "R.utils", + "RSQLite", + "S4Vectors", + "XVector", + "annotate", + "ggplot2", + "methods", + "parallel", + "poweRlaw", + "readr", + "reshape2", + "rtracklayer", + "tools" + ], + "Hash": "a6b6bf0df150fe2869b81059eddfb5a2" + }, + "DBI": { + "Package": "DBI", + "Version": "1.2.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods" + ], + "Hash": "065ae649b05f1ff66bb0c793107508f5" + }, + "DElegate": { + "Package": "DElegate", + "Version": "1.2.1", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "DElegate", + "RemoteUsername": "cancerbits", + "RemoteRef": "HEAD", + "RemoteSha": "43591860dfdaf6b6f9d03907e37ae6c7c84b030e", + "Requirements": [ + "Matrix", + "R", + "dplyr", + "magrittr", + "rlang", + "tibble" + ], + "Hash": "c3762bb10e8aeeee633df34436463f95" + }, + "DT": { + "Package": "DT", + "Version": "0.33", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "crosstalk", + "htmltools", + "htmlwidgets", + "httpuv", + "jquerylib", + "jsonlite", + "magrittr", + "promises" + ], + "Hash": "64ff3427f559ce3f2597a4fe13255cb6" + }, + "DelayedArray": { + "Package": "DelayedArray", + "Version": "0.28.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "IRanges", + "Matrix", + "MatrixGenerics", + "R", + "S4Arrays", + "S4Vectors", + "SparseArray", + "methods", + "stats", + "stats4" + ], + "Hash": "0e5c84e543a3d04ce64c6f60ed46d7eb" + }, + "DelayedMatrixStats": { + "Package": "DelayedMatrixStats", + "Version": "1.24.0", + "Source": "Bioconductor", + "Requirements": [ + "DelayedArray", + "IRanges", + "Matrix", + "MatrixGenerics", + "S4Vectors", + "methods", + "sparseMatrixStats" + ], + "Hash": "71c2d178d33f9d91999f67dc2d53b747" + }, + "DirichletMultinomial": { + "Package": "DirichletMultinomial", + "Version": "1.44.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "IRanges", + "S4Vectors", + "methods", + "stats4" + ], + "Hash": "18131c758b36c44d13e2ca9fdf656343" + }, + "EnsDb.Hsapiens.v86": { + "Package": "EnsDb.Hsapiens.v86", + "Version": "2.99.0", + "Source": "Bioconductor", + "Requirements": [ + "ensembldb" + ], + "Hash": "626af36a8d6de3c44779ff2a073952e6" + }, + "FNN": { + "Package": "FNN", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "eaabdc7938aa3632a28273f53a0d226d" + }, + "GO.db": { + "Package": "GO.db", + "Version": "3.18.0", + "Source": "Bioconductor", + "Requirements": [ + "AnnotationDbi", + "R", + "methods" + ], + "Hash": "1ec786f8b958a01ceb245883701873b1" + }, + "GenomeInfoDb": { + "Package": "GenomeInfoDb", + "Version": "1.38.8", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDbData", + "IRanges", + "R", + "RCurl", + "S4Vectors", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "155053909d2831bfac154a1118151d6b" + }, + "GenomeInfoDbData": { + "Package": "GenomeInfoDbData", + "Version": "1.2.11", + "Source": "Bioconductor", + "Requirements": [ + "R" + ], + "Hash": "10f32956181d1d46bd8402c93ac193e8" + }, + "GenomicAlignments": { + "Package": "GenomicAlignments", + "Version": "1.38.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "BiocParallel", + "Biostrings", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "Rsamtools", + "S4Vectors", + "SummarizedExperiment", + "methods", + "stats", + "utils" + ], + "Hash": "3447de036330c8c2ae54f064c8f4e299" + }, + "GenomicFeatures": { + "Package": "GenomicFeatures", + "Version": "1.54.4", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "AnnotationDbi", + "Biobase", + "BiocGenerics", + "BiocIO", + "Biostrings", + "DBI", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "RSQLite", + "S4Vectors", + "XVector", + "biomaRt", + "httr", + "methods", + "rjson", + "rtracklayer", + "stats", + "tools", + "utils" + ], + "Hash": "28667ac05b72cf841adf792154f387de" + }, + "GenomicRanges": { + "Package": "GenomicRanges", + "Version": "1.54.1", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDb", + "IRanges", + "R", + "S4Vectors", + "XVector", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "7e0c1399af35369312d9c399454374e8" + }, + "HDF5Array": { + "Package": "HDF5Array", + "Version": "1.30.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "IRanges", + "Matrix", + "R", + "Rhdf5lib", + "S4Arrays", + "S4Vectors", + "methods", + "rhdf5", + "rhdf5filters", + "stats", + "tools", + "utils" + ], + "Hash": "9b8deb4fd34fa439c16c829457d1968f" + }, + "IRanges": { + "Package": "IRanges", + "Version": "2.36.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "R", + "S4Vectors", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "f98500eeb93e8a66ad65be955a848595" + }, + "JASPAR2020": { + "Package": "JASPAR2020", + "Version": "0.99.10", + "Source": "Bioconductor", + "Requirements": [ + "R", + "methods" + ], + "Hash": "779f73c6fcd71f791c0985fde2aff785" + }, + "KEGGREST": { + "Package": "KEGGREST", + "Version": "1.42.0", + "Source": "Bioconductor", + "Requirements": [ + "Biostrings", + "R", + "httr", + "methods", + "png" + ], + "Hash": "8d6e9f4dce69aec9c588c27ae79be08e" + }, + "KernSmooth": { + "Package": "KernSmooth", + "Version": "2.23-24", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats" + ], + "Hash": "9f33a1ee37bbe8919eb2ec4b9f2473a5" + }, + "MASS": { + "Package": "MASS", + "Version": "7.3-61", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "0cafd6f0500e5deba33be22c46bf6055" + }, + "Matrix": { + "Package": "Matrix", + "Version": "1.7-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "1920b2f11133b12350024297d8a4ff4a" + }, + "MatrixGenerics": { + "Package": "MatrixGenerics", + "Version": "1.14.0", + "Source": "Bioconductor", + "Requirements": [ + "matrixStats", + "methods" + ], + "Hash": "088cd2077b5619fcb7b373b1a45174e7" + }, + "ProtGenerics": { + "Package": "ProtGenerics", + "Version": "1.34.0", + "Source": "Bioconductor", + "Requirements": [ + "methods" + ], + "Hash": "f9cf8f8dac1d3e1bd9a5e3215286b700" + }, + "R.methodsS3": { + "Package": "R.methodsS3", + "Version": "1.8.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "278c286fd6e9e75d0c2e8f731ea445c8" + }, + "R.oo": { + "Package": "R.oo", + "Version": "1.26.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R.methodsS3", + "methods", + "utils" + ], + "Hash": "4fed809e53ddb5407b3da3d0f572e591" + }, + "R.utils": { + "Package": "R.utils", + "Version": "2.12.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R.methodsS3", + "R.oo", + "methods", + "tools", + "utils" + ], + "Hash": "3dc2829b790254bfba21e60965787651" + }, + "R6": { + "Package": "R6", + "Version": "2.5.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "470851b6d5d0ac559e9d01bb352b4021" + }, + "RANN": { + "Package": "RANN", + "Version": "2.6.1", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "d128ea05a972d3e67c6f39de52c72bd7" + }, + "RColorBrewer": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "45f0398006e83a5b10b72a90663d8d8c" + }, + "RCurl": { + "Package": "RCurl", + "Version": "1.98-1.16", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bitops", + "methods" + ], + "Hash": "ddbdf53d15b47be4407ede6914f56fbb" + }, + "ROCR": { + "Package": "ROCR", + "Version": "1.0-11", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "gplots", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "cc151930e20e16427bc3d0daec62b4a9" + }, + "RSQLite": { + "Package": "RSQLite", + "Version": "2.3.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "DBI", + "R", + "bit64", + "blob", + "cpp11", + "memoise", + "methods", + "pkgconfig", + "plogr", + "rlang" + ], + "Hash": "46b45a4dd7bb0e0f4e3fc22245817240" + }, + "RSpectra": { + "Package": "RSpectra", + "Version": "0.16-2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppEigen" + ], + "Hash": "5ffd7a70479497271e57cd0cc2465b3b" + }, + "Rcpp": { + "Package": "Rcpp", + "Version": "1.0.13", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods", + "utils" + ], + "Hash": "f27411eb6d9c3dada5edd444b8416675" + }, + "RcppAnnoy": { + "Package": "RcppAnnoy", + "Version": "0.0.22", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "methods" + ], + "Hash": "f6baa1e06fb6c3724f601a764266cb0d" + }, + "RcppArmadillo": { + "Package": "RcppArmadillo", + "Version": "14.0.0-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "methods", + "stats", + "utils" + ], + "Hash": "a711769be34214addf7805278b72d56b" + }, + "RcppEigen": { + "Package": "RcppEigen", + "Version": "0.3.4.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "stats", + "utils" + ], + "Hash": "df49e3306f232ec28f1604e36a202847" + }, + "RcppHNSW": { + "Package": "RcppHNSW", + "Version": "0.6.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Rcpp", + "methods" + ], + "Hash": "1f2dc32c27746a35196aaf95adb357be" + }, + "RcppProgress": { + "Package": "RcppProgress", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "1c0aa18b97e6aaa17f93b8b866c0ace5" + }, + "RcppRoll": { + "Package": "RcppRoll", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "6659c0ecb7b85f322f93e7f1e6ac7d35" + }, + "RcppTOML": { + "Package": "RcppTOML", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "c232938949fcd8126034419cc529333a" + }, + "Rhdf5lib": { + "Package": "Rhdf5lib", + "Version": "1.24.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "R" + ], + "Hash": "3cf103db29d75af0221d71946509a30c" + }, + "Rhtslib": { + "Package": "Rhtslib", + "Version": "2.4.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "zlibbioc" + ], + "Hash": "ee7abc23ddeada73fedfee74c633bffe" + }, + "Rsamtools": { + "Package": "Rsamtools", + "Version": "2.18.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "BiocParallel", + "Biostrings", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "Rhtslib", + "S4Vectors", + "XVector", + "bitops", + "methods", + "stats", + "utils", + "zlibbioc" + ], + "Hash": "242517db56d7fe7214120ecc77a5890d" + }, + "Rtsne": { + "Package": "Rtsne", + "Version": "0.17", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Rcpp", + "stats" + ], + "Hash": "f81f7764a3c3e310b1d40e1a8acee19e" + }, + "S4Arrays": { + "Package": "S4Arrays", + "Version": "1.2.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "IRanges", + "Matrix", + "R", + "S4Vectors", + "abind", + "crayon", + "methods", + "stats" + ], + "Hash": "3213a9826adb8f48e51af1e7b30fa568" + }, + "S4Vectors": { + "Package": "S4Vectors", + "Version": "0.40.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "R", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "1716e201f81ced0f456dd5ec85fe20f8" + }, + "SCpubr": { + "Package": "SCpubr", + "Version": "2.0.2.9000", + "Source": "GitHub", + "Remotes": "saezlab/liana", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "SCpubr", + "RemoteUsername": "enblacar", + "RemoteRef": "HEAD", + "RemoteSha": "fea9b84ebcd1ed92890dbf219ca90eb807824bee", + "Requirements": [ + "R" + ], + "Hash": "f35495a894b17db011b381b1275f5a5e" + }, + "Seurat": { + "Package": "Seurat", + "Version": "5.0.0", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "seurat", + "RemoteUsername": "satijalab", + "RemoteRef": "seurat5", + "RemoteSha": "a4075e78d52a67e5f901459c6eb024bb8b3c9c44", + "Requirements": [ + "KernSmooth", + "MASS", + "Matrix", + "R", + "RANN", + "RColorBrewer", + "ROCR", + "RSpectra", + "Rcpp", + "RcppAnnoy", + "RcppEigen", + "RcppHNSW", + "RcppProgress", + "Rtsne", + "SeuratObject", + "cluster", + "cowplot", + "fastDummies", + "fitdistrplus", + "future", + "future.apply", + "generics", + "ggplot2", + "ggrepel", + "ggridges", + "grDevices", + "graphics", + "grid", + "httr", + "ica", + "igraph", + "irlba", + "jsonlite", + "leiden", + "lifecycle", + "lmtest", + "matrixStats", + "methods", + "miniUI", + "patchwork", + "pbapply", + "plotly", + "png", + "progressr", + "purrr", + "reticulate", + "rlang", + "scales", + "scattermore", + "sctransform", + "shiny", + "spatstat.explore", + "spatstat.geom", + "stats", + "tibble", + "tools", + "utils", + "uwot" + ], + "Hash": "f340b47991cf4e2cc21441217f183c45" + }, + "SeuratData": { + "Package": "SeuratData", + "Version": "0.2.2.9001", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "seurat-data", + "RemoteUsername": "satijalab", + "RemoteRef": "HEAD", + "RemoteSha": "4dc08e022f51c324bc7bf785b1b5771d2742701d", + "Requirements": [ + "R", + "SeuratObject", + "cli", + "crayon", + "rappdirs", + "stats", + "utils" + ], + "Hash": "58823864a94ee08545fb114c5c629f51" + }, + "SeuratDisk": { + "Package": "SeuratDisk", + "Version": "0.0.0.9021", + "Source": "GitHub", + "Remotes": "satijalab/seurat-data", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "seurat-disk", + "RemoteUsername": "mojaveazure", + "RemoteRef": "HEAD", + "RemoteSha": "877d4e18ab38c686f5db54f8cd290274ccdbe295", + "Requirements": [ + "Matrix", + "R", + "R6", + "Seurat", + "SeuratObject", + "cli", + "crayon", + "hdf5r", + "methods", + "rlang", + "stats", + "stringi", + "tools", + "utils", + "withr" + ], + "Hash": "d9eddfd211bbe8278b1805fe08ffd523" + }, + "SeuratObject": { + "Package": "SeuratObject", + "Version": "5.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppEigen", + "future", + "future.apply", + "generics", + "grDevices", + "grid", + "lifecycle", + "methods", + "progressr", + "rlang", + "sp", + "spam", + "stats", + "tools", + "utils" + ], + "Hash": "e9b70412b7e04571b46101f5dcbaacad" + }, + "Signac": { + "Package": "Signac", + "Version": "1.13.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "Matrix", + "R", + "Rcpp", + "RcppRoll", + "Rsamtools", + "S4Vectors", + "SeuratObject", + "data.table", + "dplyr", + "fastmatch", + "future", + "future.apply", + "ggplot2", + "grid", + "irlba", + "lifecycle", + "methods", + "patchwork", + "pbapply", + "rlang", + "scales", + "stats", + "stringi", + "tidyr", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "e29e5a01bf36b5d979a54a7650df301a" + }, + "SingleCellExperiment": { + "Package": "SingleCellExperiment", + "Version": "1.24.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "GenomicRanges", + "S4Vectors", + "SummarizedExperiment", + "methods", + "stats", + "utils" + ], + "Hash": "e21b3571ce76eb4dfe6bf7900960aa6a" + }, + "SparseArray": { + "Package": "SparseArray", + "Version": "1.2.4", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "IRanges", + "Matrix", + "MatrixGenerics", + "R", + "S4Arrays", + "S4Vectors", + "XVector", + "matrixStats", + "methods", + "stats" + ], + "Hash": "391092e7b81373ab624bd6471cebccd4" + }, + "SummarizedExperiment": { + "Package": "SummarizedExperiment", + "Version": "1.32.0", + "Source": "Bioconductor", + "Requirements": [ + "Biobase", + "BiocGenerics", + "DelayedArray", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "Matrix", + "MatrixGenerics", + "R", + "S4Arrays", + "S4Vectors", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "caee529bf9710ff6fe1776612fcaa266" + }, + "TFBSTools": { + "Package": "TFBSTools", + "Version": "1.40.0", + "Source": "Bioconductor", + "Requirements": [ + "BSgenome", + "Biobase", + "BiocGenerics", + "BiocParallel", + "Biostrings", + "CNEr", + "DBI", + "DirichletMultinomial", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "RSQLite", + "S4Vectors", + "TFMPvalue", + "XML", + "XVector", + "caTools", + "grid", + "gtools", + "methods", + "parallel", + "rtracklayer", + "seqLogo" + ], + "Hash": "2d81d93dc84b76c570719689328682bd" + }, + "TFMPvalue": { + "Package": "TFMPvalue", + "Version": "0.0.9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "d2974f239e0c14cade60062fe2cbdf0b" + }, + "XML": { + "Package": "XML", + "Version": "3.99-0.17", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "bc2a8a1139d8d4bd9c46086708945124" + }, + "XVector": { + "Package": "XVector", + "Version": "0.42.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "IRanges", + "R", + "S4Vectors", + "methods", + "tools", + "utils", + "zlibbioc" + ], + "Hash": "65c0b6bca03f88758f86ef0aa18c4873" + }, + "abind": { + "Package": "abind", + "Version": "1.4-5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "4f57884290cc75ab22f4af9e9d4ca862" + }, + "annotate": { + "Package": "annotate", + "Version": "1.80.0", + "Source": "Bioconductor", + "Requirements": [ + "AnnotationDbi", + "Biobase", + "BiocGenerics", + "DBI", + "R", + "XML", + "graphics", + "httr", + "methods", + "stats", + "utils", + "xtable" + ], + "Hash": "08359e5ce909c14a936ec1f9712ca830" + }, + "askpass": { + "Package": "askpass", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "sys" + ], + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" + }, + "base64enc": { + "Package": "base64enc", + "Version": "0.1-3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "543776ae6848fde2f48ff3816d0628bc" + }, + "beachmat": { + "Package": "beachmat", + "Version": "2.18.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "Matrix", + "Rcpp", + "SparseArray", + "methods" + ], + "Hash": "c1c423ca7149d9e7f55d1e609342c2bd" + }, + "biomaRt": { + "Package": "biomaRt", + "Version": "2.58.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "AnnotationDbi", + "BiocFileCache", + "XML", + "digest", + "httr", + "methods", + "progress", + "rappdirs", + "stringr", + "utils", + "xml2" + ], + "Hash": "d6e043a6bfb4e2e256d00b8eee9c4266" + }, + "bit": { + "Package": "bit", + "Version": "4.0.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "d242abec29412ce988848d0294b208fd" + }, + "bit64": { + "Package": "bit64", + "Version": "4.0.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "bit", + "methods", + "stats", + "utils" + ], + "Hash": "9fe98599ca456d6552421db0d6772d8f" + }, + "bitops": { + "Package": "bitops", + "Version": "1.0-8", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "da69e6b6f8feebec0827205aad3fdbd8" + }, + "blob": { + "Package": "blob", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "methods", + "rlang", + "vctrs" + ], + "Hash": "40415719b5a479b87949f3aa0aee737c" + }, + "bslib": { + "Package": "bslib", + "Version": "0.8.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "cachem", + "fastmap", + "grDevices", + "htmltools", + "jquerylib", + "jsonlite", + "lifecycle", + "memoise", + "mime", + "rlang", + "sass" + ], + "Hash": "b299c6741ca9746fb227debcb0f9fb6c" + }, + "caTools": { + "Package": "caTools", + "Version": "1.18.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bitops" + ], + "Hash": "34d90fa5845004236b9eacafc51d07b2" + }, + "cachem": { + "Package": "cachem", + "Version": "1.1.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "fastmap", + "rlang" + ], + "Hash": "cd9a672193789068eb5a2aad65a0dedf" + }, + "cellranger": { + "Package": "cellranger", + "Version": "1.1.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "rematch", + "tibble" + ], + "Hash": "f61dbaec772ccd2e17705c1e872e9e7c" + }, + "cli": { + "Package": "cli", + "Version": "3.6.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "utils" + ], + "Hash": "b21916dd77a27642b447374a5d30ecf3" + }, + "clipr": { + "Package": "clipr", + "Version": "0.8.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "utils" + ], + "Hash": "3f038e5ac7f41d4ac41ce658c85e3042" + }, + "cluster": { + "Package": "cluster", + "Version": "2.1.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats", + "utils" + ], + "Hash": "0aaa05204035dc43ea0004b9c76611dd" + }, + "codetools": { + "Package": "codetools", + "Version": "0.2-20", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "61e097f35917d342622f21cdc79c256e" + }, + "colorspace": { + "Package": "colorspace", + "Version": "2.1-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "d954cb1c57e8d8b756165d7ba18aa55a" + }, + "commonmark": { + "Package": "commonmark", + "Version": "1.9.1", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "5d8225445acb167abf7797de48b2ee3c" + }, + "cowplot": { + "Package": "cowplot", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "ggplot2", + "grDevices", + "grid", + "gtable", + "methods", + "rlang", + "scales" + ], + "Hash": "8ef2084dd7d28847b374e55440e4f8cb" + }, + "cpp11": { + "Package": "cpp11", + "Version": "0.4.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" + }, + "crayon": { + "Package": "crayon", + "Version": "1.5.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "grDevices", + "methods", + "utils" + ], + "Hash": "859d96e65ef198fd43e82b9628d593ef" + }, + "crosstalk": { + "Package": "crosstalk", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "htmltools", + "jsonlite", + "lazyeval" + ], + "Hash": "ab12c7b080a57475248a30f4db6298c0" + }, + "curl": { + "Package": "curl", + "Version": "5.2.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" + }, + "data.table": { + "Package": "data.table", + "Version": "1.15.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods" + ], + "Hash": "8ee9ac56ef633d0c7cab8b2ca87d683e" + }, + "dbplyr": { + "Package": "dbplyr", + "Version": "2.5.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "DBI", + "R", + "R6", + "blob", + "cli", + "dplyr", + "glue", + "lifecycle", + "magrittr", + "methods", + "pillar", + "purrr", + "rlang", + "tibble", + "tidyr", + "tidyselect", + "utils", + "vctrs", + "withr" + ], + "Hash": "39b2e002522bfd258039ee4e889e0fd1" + }, + "deldir": { + "Package": "deldir", + "Version": "2.0-4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics" + ], + "Hash": "24754fce82729ff85317dd195b6646a8" + }, + "digest": { + "Package": "digest", + "Version": "0.6.36", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "utils" + ], + "Hash": "fd6824ad91ede64151e93af67df6376b" + }, + "dotCall64": { + "Package": "dotCall64", + "Version": "1.1-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "80f374ef8500fcdc5d84a0345b837227" + }, + "dplyr": { + "Package": "dplyr", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "cli", + "generics", + "glue", + "lifecycle", + "magrittr", + "methods", + "pillar", + "rlang", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" + }, + "dqrng": { + "Package": "dqrng", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "BH", + "R", + "Rcpp", + "sitmo" + ], + "Hash": "6d7b942d8f615705f89a7883998fc839" + }, + "edgeR": { + "Package": "edgeR", + "Version": "4.2.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.19", + "Requirements": [ + "R", + "Rcpp", + "graphics", + "limma", + "locfit", + "methods", + "stats", + "utils" + ], + "Hash": "729daec53b663926458ccde421f5c2fb" + }, + "ensembldb": { + "Package": "ensembldb", + "Version": "2.26.0", + "Source": "Bioconductor", + "Requirements": [ + "AnnotationDbi", + "AnnotationFilter", + "Biobase", + "BiocGenerics", + "Biostrings", + "DBI", + "GenomeInfoDb", + "GenomicFeatures", + "GenomicRanges", + "IRanges", + "ProtGenerics", + "R", + "RSQLite", + "Rsamtools", + "S4Vectors", + "curl", + "methods", + "rtracklayer" + ], + "Hash": "6be48b1a96556976a4e9ee6836f88b97" + }, + "evaluate": { + "Package": "evaluate", + "Version": "0.24.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods" + ], + "Hash": "a1066cbc05caee9a4bf6d90f194ff4da" + }, + "fansi": { + "Package": "fansi", + "Version": "1.0.6", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "utils" + ], + "Hash": "962174cf2aeb5b9eea581522286a911f" + }, + "farver": { + "Package": "farver", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "680887028577f3fa2a81e410ed0d6e42" + }, + "fastDummies": { + "Package": "fastDummies", + "Version": "1.7.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "data.table", + "stringr", + "tibble" + ], + "Hash": "e0f9c0c051e0e8d89996d7f0c400539f" + }, + "fastmap": { + "Package": "fastmap", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "aa5e1cd11c2d15497494c5292d7ffcc8" + }, + "fastmatch": { + "Package": "fastmatch", + "Version": "1.1-4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "8c406b7284bbaef08e01c6687367f195" + }, + "filelock": { + "Package": "filelock", + "Version": "1.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "192053c276525c8495ccfd523aa8f2d1" + }, + "fitdistrplus": { + "Package": "fitdistrplus", + "Version": "1.2-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "R", + "grDevices", + "methods", + "rlang", + "stats", + "survival" + ], + "Hash": "78f15d68e31a6d9a378c546c783bac15" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "htmltools", + "rlang" + ], + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" + }, + "formatR": { + "Package": "formatR", + "Version": "1.14", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "63cb26d12517c7863f5abb006c5e0f25" + }, + "fs": { + "Package": "fs", + "Version": "1.6.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" + }, + "futile.logger": { + "Package": "futile.logger", + "Version": "1.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "futile.options", + "lambda.r", + "utils" + ], + "Hash": "99f0ace8c05ec7d3683d27083c4f1e7e" + }, + "futile.options": { + "Package": "futile.options", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "0d9bf02413ddc2bbe8da9ce369dcdd2b" + }, + "future": { + "Package": "future", + "Version": "1.34.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "digest", + "globals", + "listenv", + "parallel", + "parallelly", + "utils" + ], + "Hash": "475771e3edb711591476be387c9a8c2e" + }, + "future.apply": { + "Package": "future.apply", + "Version": "1.11.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "future", + "globals", + "parallel", + "utils" + ], + "Hash": "afe1507511629f44572e6c53b9baeb7c" + }, + "gargle": { + "Package": "gargle", + "Version": "1.5.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "fs", + "glue", + "httr", + "jsonlite", + "lifecycle", + "openssl", + "rappdirs", + "rlang", + "stats", + "utils", + "withr" + ], + "Hash": "fc0b272e5847c58cd5da9b20eedbd026" + }, + "generics": { + "Package": "generics", + "Version": "0.1.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15e9634c0fcd294799e9b2e929ed1b86" + }, + "ggplot2": { + "Package": "ggplot2", + "Version": "3.5.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "MASS", + "R", + "cli", + "glue", + "grDevices", + "grid", + "gtable", + "isoband", + "lifecycle", + "mgcv", + "rlang", + "scales", + "stats", + "tibble", + "vctrs", + "withr" + ], + "Hash": "44c6a2f8202d5b7e878ea274b1092426" + }, + "ggplotify": { + "Package": "ggplotify", + "Version": "0.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "ggplot2", + "grDevices", + "graphics", + "grid", + "gridGraphics", + "yulab.utils" + ], + "Hash": "1547863db3b472cf7181973acf649f1a" + }, + "ggrepel": { + "Package": "ggrepel", + "Version": "0.9.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "ggplot2", + "grid", + "rlang", + "scales", + "withr" + ], + "Hash": "cc3361e234c4a5050e29697d675764aa" + }, + "ggridges": { + "Package": "ggridges", + "Version": "0.5.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "ggplot2", + "grid", + "scales", + "withr" + ], + "Hash": "66488692cb8621bc78df1b9b819497a6" + }, + "glmGamPoi": { + "Package": "glmGamPoi", + "Version": "1.14.3", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "DelayedMatrixStats", + "HDF5Array", + "MatrixGenerics", + "Rcpp", + "RcppArmadillo", + "SingleCellExperiment", + "SummarizedExperiment", + "beachmat", + "matrixStats", + "methods", + "rlang", + "splines", + "stats", + "utils", + "vctrs" + ], + "Hash": "ccbc016a32fb8e0fe7205497c814e691" + }, + "globals": { + "Package": "globals", + "Version": "0.16.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "codetools" + ], + "Hash": "2580567908cafd4f187c1e5a91e98b7f" + }, + "glue": { + "Package": "glue", + "Version": "1.7.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods" + ], + "Hash": "e0b3a53876554bd45879e596cdb10a52" + }, + "goftest": { + "Package": "goftest", + "Version": "1.2-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats" + ], + "Hash": "dbe0201f91eeb15918dd3fbf01ee689a" + }, + "googledrive": { + "Package": "googledrive", + "Version": "2.1.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "gargle", + "glue", + "httr", + "jsonlite", + "lifecycle", + "magrittr", + "pillar", + "purrr", + "rlang", + "tibble", + "utils", + "uuid", + "vctrs", + "withr" + ], + "Hash": "e99641edef03e2a5e87f0a0b1fcc97f4" + }, + "googlesheets4": { + "Package": "googlesheets4", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cellranger", + "cli", + "curl", + "gargle", + "glue", + "googledrive", + "httr", + "ids", + "lifecycle", + "magrittr", + "methods", + "purrr", + "rematch2", + "rlang", + "tibble", + "utils", + "vctrs", + "withr" + ], + "Hash": "d6db1667059d027da730decdc214b959" + }, + "gplots": { + "Package": "gplots", + "Version": "3.1.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "KernSmooth", + "R", + "caTools", + "gtools", + "methods", + "stats" + ], + "Hash": "f72b5d1ed587f8905e38ee7295e88d80" + }, + "gridExtra": { + "Package": "gridExtra", + "Version": "2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "graphics", + "grid", + "gtable", + "utils" + ], + "Hash": "7d7f283939f563670a697165b2cf5560" + }, + "gridGraphics": { + "Package": "gridGraphics", + "Version": "0.5-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "graphics", + "grid" + ], + "Hash": "5b79228594f02385d4df4979284879ae" + }, + "gtable": { + "Package": "gtable", + "Version": "0.3.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "glue", + "grid", + "lifecycle", + "rlang" + ], + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" + }, + "gtools": { + "Package": "gtools", + "Version": "3.9.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods", + "stats", + "utils" + ], + "Hash": "588d091c35389f1f4a9d533c8d709b35" + }, + "hdf5r": { + "Package": "hdf5r", + "Version": "1.3.11", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "bit64", + "methods", + "utils" + ], + "Hash": "8f066454d3c306fa34e2885fbbfd4e1c" + }, + "here": { + "Package": "here", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "rprojroot" + ], + "Hash": "24b224366f9c2e7534d2344d10d59211" + }, + "highr": { + "Package": "highr", + "Version": "0.11", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "xfun" + ], + "Hash": "d65ba49117ca223614f71b60d85b8ab7" + }, + "hms": { + "Package": "hms", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "lifecycle", + "methods", + "pkgconfig", + "rlang", + "vctrs" + ], + "Hash": "b59377caa7ed00fa41808342002138f9" + }, + "htmltools": { + "Package": "htmltools", + "Version": "0.5.8.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "base64enc", + "digest", + "fastmap", + "grDevices", + "rlang", + "utils" + ], + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + }, + "htmlwidgets": { + "Package": "htmlwidgets", + "Version": "1.6.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "grDevices", + "htmltools", + "jsonlite", + "knitr", + "rmarkdown", + "yaml" + ], + "Hash": "04291cc45198225444a397606810ac37" + }, + "httpuv": { + "Package": "httpuv", + "Version": "1.6.15", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "Rcpp", + "later", + "promises", + "utils" + ], + "Hash": "d55aa087c47a63ead0f6fc10f8fa1ee0" + }, + "httr": { + "Package": "httr", + "Version": "1.4.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "curl", + "jsonlite", + "mime", + "openssl" + ], + "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" + }, + "ica": { + "Package": "ica", + "Version": "1.0-3", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "d9b52ced14e24a0e69e228c20eb5eb27" + }, + "ids": { + "Package": "ids", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "openssl", + "uuid" + ], + "Hash": "99df65cfef20e525ed38c3d2577f7190" + }, + "igraph": { + "Package": "igraph", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "cli", + "cpp11", + "grDevices", + "graphics", + "lifecycle", + "magrittr", + "methods", + "pkgconfig", + "rlang", + "stats", + "utils", + "vctrs" + ], + "Hash": "c3b7d801d722e26e4cd888e042bf9af5" + }, + "irlba": { + "Package": "irlba", + "Version": "2.3.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "methods", + "stats" + ], + "Hash": "acb06a47b732c6251afd16e19c3201ff" + }, + "isoband": { + "Package": "isoband", + "Version": "0.2.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "grid", + "utils" + ], + "Hash": "0080607b4a1a7b28979aecef976d8bc2" + }, + "jquerylib": { + "Package": "jquerylib", + "Version": "0.1.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "htmltools" + ], + "Hash": "5aab57a3bd297eee1c1d862735972182" + }, + "jsonlite": { + "Package": "jsonlite", + "Version": "1.8.8", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "methods" + ], + "Hash": "e1b9c55281c5adc4dd113652d9e26768" + }, + "knitr": { + "Package": "knitr", + "Version": "1.48", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "evaluate", + "highr", + "methods", + "tools", + "xfun", + "yaml" + ], + "Hash": "acf380f300c721da9fde7df115a5f86f" + }, + "labeling": { + "Package": "labeling", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "graphics", + "stats" + ], + "Hash": "b64ec208ac5bc1852b285f665d6368b3" + }, + "lambda.r": { + "Package": "lambda.r", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "formatR" + ], + "Hash": "b1e925c4b9ffeb901bacf812cbe9a6ad" + }, + "later": { + "Package": "later", + "Version": "1.3.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Rcpp", + "rlang" + ], + "Hash": "a3e051d405326b8b0012377434c62b37" + }, + "lattice": { + "Package": "lattice", + "Version": "0.22-6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "stats", + "utils" + ], + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" + }, + "lazyeval": { + "Package": "lazyeval", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "d908914ae53b04d4c0c0fd72ecc35370" + }, + "leiden": { + "Package": "leiden", + "Version": "0.4.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "igraph", + "methods", + "reticulate" + ], + "Hash": "b21c4ae2bb7935504c42bcdf749c04e6" + }, + "lifecycle": { + "Package": "lifecycle", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "glue", + "rlang" + ], + "Hash": "b8552d117e1b808b09a832f589b79035" + }, + "limma": { + "Package": "limma", + "Version": "3.60.4", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.19", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "statmod", + "stats", + "utils" + ], + "Hash": "b75950d7143715041064b21f3120f19e" + }, + "listenv": { + "Package": "listenv", + "Version": "0.9.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" + }, + "lmtest": { + "Package": "lmtest", + "Version": "0.9-40", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "graphics", + "stats", + "zoo" + ], + "Hash": "c6fafa6cccb1e1dfe7f7d122efd6e6a7" + }, + "locfit": { + "Package": "locfit", + "Version": "1.5-9.10", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "lattice" + ], + "Hash": "7d8e0ac914051ca0254332387d9b5816" + }, + "magrittr": { + "Package": "magrittr", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "7ce2733a9826b3aeb1775d56fd305472" + }, + "matrixStats": { + "Package": "matrixStats", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "4b3ea27a19d669c0405b38134d89a9d1" + }, + "memoise": { + "Package": "memoise", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "cachem", + "rlang" + ], + "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" + }, + "mgcv": { + "Package": "mgcv", + "Version": "1.9-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "graphics", + "methods", + "nlme", + "splines", + "stats", + "utils" + ], + "Hash": "110ee9d83b496279960e162ac97764ce" + }, + "mime": { + "Package": "mime", + "Version": "0.12", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "tools" + ], + "Hash": "18e9c28c1d3ca1560ce30658b22ce104" + }, + "miniUI": { + "Package": "miniUI", + "Version": "0.1.1.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "htmltools", + "shiny", + "utils" + ], + "Hash": "fec5f52652d60615fdb3957b3d74324a" + }, + "munsell": { + "Package": "munsell", + "Version": "0.5.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "colorspace", + "methods" + ], + "Hash": "4fd8900853b746af55b81fda99da7695" + }, + "nlme": { + "Package": "nlme", + "Version": "3.1-165", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "2769a88be217841b1f33ed469675c3cc" + }, + "openssl": { + "Package": "openssl", + "Version": "2.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "askpass" + ], + "Hash": "2bcca3848e4734eb3b16103bc9aa4b8e" + }, + "parallelly": { + "Package": "parallelly", + "Version": "1.38.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "parallel", + "tools", + "utils" + ], + "Hash": "6e8b139c1904f5e9e14c69db64453bbe" + }, + "patchwork": { + "Package": "patchwork", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cli", + "ggplot2", + "grDevices", + "graphics", + "grid", + "gtable", + "rlang", + "stats", + "utils" + ], + "Hash": "9c8ab14c00ac07e9e04d1664c0b74486" + }, + "pbapply": { + "Package": "pbapply", + "Version": "1.7-2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "parallel" + ], + "Hash": "68a2d681e10cf72f0afa1d84d45380e5" + }, + "pillar": { + "Package": "pillar", + "Version": "1.9.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "cli", + "fansi", + "glue", + "lifecycle", + "rlang", + "utf8", + "utils", + "vctrs" + ], + "Hash": "15da5a8412f317beeee6175fbc76f4bb" + }, + "pkgconfig": { + "Package": "pkgconfig", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "utils" + ], + "Hash": "01f28d4278f15c76cddbea05899c5d6f" + }, + "plogr": { + "Package": "plogr", + "Version": "0.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "09eb987710984fc2905c7129c7d85e65" + }, + "plotly": { + "Package": "plotly", + "Version": "4.10.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "RColorBrewer", + "base64enc", + "crosstalk", + "data.table", + "digest", + "dplyr", + "ggplot2", + "htmltools", + "htmlwidgets", + "httr", + "jsonlite", + "lazyeval", + "magrittr", + "promises", + "purrr", + "rlang", + "scales", + "tibble", + "tidyr", + "tools", + "vctrs", + "viridisLite" + ], + "Hash": "a1ac5c03ad5ad12b9d1597e00e23c3dd" + }, + "plyr": { + "Package": "plyr", + "Version": "1.8.9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "6b8177fd19982f0020743fadbfdbd933" + }, + "png": { + "Package": "png", + "Version": "0.1-8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "bd54ba8a0a5faded999a7aab6e46b374" + }, + "polyclip": { + "Package": "polyclip", + "Version": "1.10-7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5879bf5aae702ffef0a315c44328f984" + }, + "poweRlaw": { + "Package": "poweRlaw", + "Version": "0.80.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods", + "parallel", + "pracma", + "stats", + "utils" + ], + "Hash": "5426de2f982c69863ea338e5df80b9ef" + }, + "pracma": { + "Package": "pracma", + "Version": "2.4.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats", + "utils" + ], + "Hash": "44bc172d47d1ea0a638d9f299e321203" + }, + "presto": { + "Package": "presto", + "Version": "1.0.0", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "presto", + "RemoteUsername": "immunogenomics", + "RemoteRef": "HEAD", + "RemoteSha": "7636b3d0465c468c35853f82f1717d3a64b3c8f6", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppArmadillo", + "data.table", + "dplyr", + "methods", + "purrr", + "rlang", + "stats", + "tibble", + "tidyr", + "utils" + ], + "Hash": "c682f57757230a29913ad71f22aef990" + }, + "prettyunits": { + "Package": "prettyunits", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" + }, + "progress": { + "Package": "progress", + "Version": "1.2.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "crayon", + "hms", + "prettyunits" + ], + "Hash": "f4625e061cb2865f111b47ff163a5ca6" + }, + "progressr": { + "Package": "progressr", + "Version": "0.14.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "digest", + "utils" + ], + "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" + }, + "promises": { + "Package": "promises", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R6", + "Rcpp", + "fastmap", + "later", + "magrittr", + "rlang", + "stats" + ], + "Hash": "434cd5388a3979e74be5c219bcd6e77d" + }, + "purrr": { + "Package": "purrr", + "Version": "1.0.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "lifecycle", + "magrittr", + "rlang", + "vctrs" + ], + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" + }, + "rappdirs": { + "Package": "rappdirs", + "Version": "0.3.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "5e3c5dc0b071b21fa128676560dbe94d" + }, + "readr": { + "Package": "readr", + "Version": "2.1.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "cli", + "clipr", + "cpp11", + "crayon", + "hms", + "lifecycle", + "methods", + "rlang", + "tibble", + "tzdb", + "utils", + "vroom" + ], + "Hash": "9de96463d2117f6ac49980577939dfb3" + }, + "rematch": { + "Package": "rematch", + "Version": "2.0.0", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "cbff1b666c6fa6d21202f07e2318d4f1" + }, + "rematch2": { + "Package": "rematch2", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "tibble" + ], + "Hash": "76c9e04c712a05848ae7a23d2f170a40" + }, + "renv": { + "Package": "renv", + "Version": "1.0.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "397b7b2a265bc5a7a06852524dabae20" + }, + "reshape2": { + "Package": "reshape2", + "Version": "1.4.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "plyr", + "stringr" + ], + "Hash": "bb5996d0bd962d214a11140d77589917" + }, + "restfulr": { + "Package": "restfulr", + "Version": "0.0.15", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "RCurl", + "S4Vectors", + "XML", + "methods", + "rjson", + "yaml" + ], + "Hash": "44651c1e68eda9d462610aca9f15a815" + }, + "reticulate": { + "Package": "reticulate", + "Version": "1.38.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppTOML", + "graphics", + "here", + "jsonlite", + "methods", + "png", + "rappdirs", + "rlang", + "utils", + "withr" + ], + "Hash": "8810e64cfe0240afe926617a854a38a4" + }, + "rhdf5": { + "Package": "rhdf5", + "Version": "2.46.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "R", + "Rhdf5lib", + "S4Vectors", + "methods", + "rhdf5filters" + ], + "Hash": "b0a244022c3427cd8213c33804c6b5de" + }, + "rhdf5filters": { + "Package": "rhdf5filters", + "Version": "1.14.1", + "Source": "Bioconductor", + "Requirements": [ + "Rhdf5lib" + ], + "Hash": "d27a2f6a89def6388fad5b0aae026220" + }, + "rjson": { + "Package": "rjson", + "Version": "0.2.21", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "f9da75e6444e95a1baf8ca24909d63b9" + }, + "rlang": { + "Package": "rlang", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "utils" + ], + "Hash": "3eec01f8b1dee337674b2e34ab1f9bc1" + }, + "rmarkdown": { + "Package": "rmarkdown", + "Version": "2.27", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "bslib", + "evaluate", + "fontawesome", + "htmltools", + "jquerylib", + "jsonlite", + "knitr", + "methods", + "tinytex", + "tools", + "utils", + "xfun", + "yaml" + ], + "Hash": "27f9502e1cdbfa195f94e03b0f517484" + }, + "rprojroot": { + "Package": "rprojroot", + "Version": "2.0.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" + }, + "rtracklayer": { + "Package": "rtracklayer", + "Version": "1.62.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "BiocIO", + "Biostrings", + "GenomeInfoDb", + "GenomicAlignments", + "GenomicRanges", + "IRanges", + "R", + "RCurl", + "Rsamtools", + "S4Vectors", + "XML", + "XVector", + "methods", + "restfulr", + "tools", + "zlibbioc" + ], + "Hash": "e940c622725a16a0069505876051b077" + }, + "sass": { + "Package": "sass", + "Version": "0.4.9", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R6", + "fs", + "htmltools", + "rappdirs", + "rlang" + ], + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" + }, + "scales": { + "Package": "scales", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "RColorBrewer", + "cli", + "farver", + "glue", + "labeling", + "lifecycle", + "munsell", + "rlang", + "viridisLite" + ], + "Hash": "c19df082ba346b0ffa6f833e92de34d1" + }, + "scattermore": { + "Package": "scattermore", + "Version": "1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "ggplot2", + "grDevices", + "graphics", + "grid", + "scales" + ], + "Hash": "d316e4abb854dd1677f7bd3ad08bc4e8" + }, + "sctransform": { + "Package": "sctransform", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "Matrix", + "R", + "Rcpp", + "RcppArmadillo", + "dplyr", + "future", + "future.apply", + "ggplot2", + "gridExtra", + "magrittr", + "matrixStats", + "methods", + "reshape2", + "rlang" + ], + "Hash": "0242402f321be0246fb67cf8c63b3572" + }, + "seqLogo": { + "Package": "seqLogo", + "Version": "1.68.0", + "Source": "Bioconductor", + "Requirements": [ + "R", + "grDevices", + "grid", + "methods", + "stats4" + ], + "Hash": "422323877fb63ab24ae09cc429a8a4b1" + }, + "shiny": { + "Package": "shiny", + "Version": "1.9.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "bslib", + "cachem", + "commonmark", + "crayon", + "fastmap", + "fontawesome", + "glue", + "grDevices", + "htmltools", + "httpuv", + "jsonlite", + "later", + "lifecycle", + "methods", + "mime", + "promises", + "rlang", + "sourcetools", + "tools", + "utils", + "withr", + "xtable" + ], + "Hash": "6a293995a66e12c48d13aa1f957d09c7" + }, + "shinyBS": { + "Package": "shinyBS", + "Version": "0.61.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "htmltools", + "shiny" + ], + "Hash": "e44255f073ecdc26ba6bc2ce3fcf174d" + }, + "shinydashboard": { + "Package": "shinydashboard", + "Version": "0.7.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmltools", + "promises", + "shiny", + "utils" + ], + "Hash": "e418b532e9bb4eb22a714b9a9f1acee7" + }, + "shinyjs": { + "Package": "shinyjs", + "Version": "2.1.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "digest", + "jsonlite", + "shiny" + ], + "Hash": "802e4786b353a4bb27116957558548d5" + }, + "sitmo": { + "Package": "sitmo", + "Version": "2.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "c956d93f6768a9789edbc13072b70c78" + }, + "snow": { + "Package": "snow", + "Version": "0.4-4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "40b74690debd20c57d93d8c246b305d4" + }, + "sourcetools": { + "Package": "sourcetools", + "Version": "0.1.7-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "5f5a7629f956619d519205ec475fe647" + }, + "sp": { + "Package": "sp", + "Version": "2.1-4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "75940133cca2e339afce15a586f85b11" + }, + "spam": { + "Package": "spam", + "Version": "2.10-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "Rcpp", + "dotCall64", + "grid", + "methods" + ], + "Hash": "ffe1f9e95a4375530747b268f82b5086" + }, + "sparseMatrixStats": { + "Package": "sparseMatrixStats", + "Version": "1.14.0", + "Source": "Bioconductor", + "Requirements": [ + "Matrix", + "MatrixGenerics", + "Rcpp", + "matrixStats", + "methods" + ], + "Hash": "49383d0f6c6152ff7cb594f254c23cc8" + }, + "spatstat.data": { + "Package": "spatstat.data", + "Version": "3.1-2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "spatstat.utils" + ], + "Hash": "69781a4d1dd8d1575d24b8b133e1e09f" + }, + "spatstat.explore": { + "Package": "spatstat.explore", + "Version": "3.3-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "abind", + "goftest", + "grDevices", + "graphics", + "methods", + "nlme", + "spatstat.data", + "spatstat.geom", + "spatstat.random", + "spatstat.sparse", + "spatstat.univar", + "spatstat.utils", + "stats", + "utils" + ], + "Hash": "f067b8be947762544fccff7b7e8a1d09" + }, + "spatstat.geom": { + "Package": "spatstat.geom", + "Version": "3.3-2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "deldir", + "grDevices", + "graphics", + "methods", + "polyclip", + "spatstat.data", + "spatstat.univar", + "spatstat.utils", + "stats", + "utils" + ], + "Hash": "9e8f1f54eb492b1af425b1206220a278" + }, + "spatstat.random": { + "Package": "spatstat.random", + "Version": "3.3-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "methods", + "spatstat.data", + "spatstat.geom", + "spatstat.univar", + "spatstat.utils", + "stats", + "utils" + ], + "Hash": "73b89da6fe26aa529564a8dbb5ebbc8a" + }, + "spatstat.sparse": { + "Package": "spatstat.sparse", + "Version": "3.1-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "abind", + "methods", + "spatstat.utils", + "stats", + "tensor", + "utils" + ], + "Hash": "3a0f41a2a77847f2bc1a909160cace56" + }, + "spatstat.univar": { + "Package": "spatstat.univar", + "Version": "3.0-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "spatstat.utils", + "stats" + ], + "Hash": "1af5f385ec0df813c9d1bff8859b1056" + }, + "spatstat.utils": { + "Package": "spatstat.utils", + "Version": "3.0-5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "b7af29c1a4e649734ac1d9b423d762c9" + }, + "statmod": { + "Package": "statmod", + "Version": "1.5.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "graphics", + "stats" + ], + "Hash": "26e158d12052c279bdd4ba858b80fb1f" + }, + "stringi": { + "Package": "stringi", + "Version": "1.8.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "stats", + "tools", + "utils" + ], + "Hash": "39e1144fd75428983dc3f63aa53dfa91" + }, + "stringr": { + "Package": "stringr", + "Version": "1.5.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "magrittr", + "rlang", + "stringi", + "vctrs" + ], + "Hash": "960e2ae9e09656611e0b8214ad543207" + }, + "survival": { + "Package": "survival", + "Version": "3.7-0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "graphics", + "methods", + "splines", + "stats", + "utils" + ], + "Hash": "5aaa9cbaf4aba20f8e06fdea1850a398" + }, + "sys": { + "Package": "sys", + "Version": "3.4.2", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" + }, + "tensor": { + "Package": "tensor", + "Version": "1.5", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "25cfab6cf405c15bccf7e69ec39df090" + }, + "tibble": { + "Package": "tibble", + "Version": "3.2.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "fansi", + "lifecycle", + "magrittr", + "methods", + "pillar", + "pkgconfig", + "rlang", + "utils", + "vctrs" + ], + "Hash": "a84e2cc86d07289b3b6f5069df7a004c" + }, + "tidyr": { + "Package": "tidyr", + "Version": "1.3.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "cpp11", + "dplyr", + "glue", + "lifecycle", + "magrittr", + "purrr", + "rlang", + "stringr", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" + }, + "tidyselect": { + "Package": "tidyselect", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang", + "vctrs", + "withr" + ], + "Hash": "829f27b9c4919c16b593794a6344d6c0" + }, + "tinytex": { + "Package": "tinytex", + "Version": "0.52", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "xfun" + ], + "Hash": "cfbad971a71f0e27cec22e544a08bc3b" + }, + "tzdb": { + "Package": "tzdb", + "Version": "0.4.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "f561504ec2897f4d46f0c7657e488ae1" + }, + "utf8": { + "Package": "utf8", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "62b65c52671e6665f803ff02954446e9" + }, + "uuid": { + "Package": "uuid", + "Version": "1.2-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "34e965e62a41fcafb1ca60e9b142085b" + }, + "uwot": { + "Package": "uwot", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "FNN", + "Matrix", + "RSpectra", + "Rcpp", + "RcppAnnoy", + "RcppProgress", + "dqrng", + "irlba", + "methods" + ], + "Hash": "f693a0ca6d34b02eb432326388021805" + }, + "vctrs": { + "Package": "vctrs", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang" + ], + "Hash": "c03fa420630029418f7e6da3667aac4a" + }, + "viridis": { + "Package": "viridis", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "ggplot2", + "gridExtra", + "viridisLite" + ], + "Hash": "acd96d9fa70adeea4a5a1150609b9745" + }, + "viridisLite": { + "Package": "viridisLite", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" + }, + "vroom": { + "Package": "vroom", + "Version": "1.6.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "bit64", + "cli", + "cpp11", + "crayon", + "glue", + "hms", + "lifecycle", + "methods", + "progress", + "rlang", + "stats", + "tibble", + "tidyselect", + "tzdb", + "vctrs", + "withr" + ], + "Hash": "390f9315bc0025be03012054103d227c" + }, + "withr": { + "Package": "withr", + "Version": "3.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics" + ], + "Hash": "07909200e8bbe90426fbfeb73e1e27aa" + }, + "xfun": { + "Package": "xfun", + "Version": "0.46", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "stats", + "tools" + ], + "Hash": "00ce32f398db0415dde61abfef11300c" + }, + "xml2": { + "Package": "xml2", + "Version": "1.3.6", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "cli", + "methods", + "rlang" + ], + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" + }, + "xtable": { + "Package": "xtable", + "Version": "1.8-4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "stats", + "utils" + ], + "Hash": "b8acdf8af494d9ec19ccb2481a9b11c2" + }, + "yaml": { + "Package": "yaml", + "Version": "2.3.10", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "51dab85c6c98e50a18d7551e9d49f76c" + }, + "yulab.utils": { + "Package": "yulab.utils", + "Version": "0.1.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cli", + "digest", + "fs", + "memoise", + "rlang", + "stats", + "tools", + "utils" + ], + "Hash": "a48f7cc93890f8285c5ab9476197163e" + }, + "zlibbioc": { + "Package": "zlibbioc", + "Version": "1.48.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Hash": "2344be62c2da4d9e9942b5d8db346e59" + }, + "zoo": { + "Package": "zoo", + "Version": "1.8-12", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "5c715954112b45499fb1dadc6ee6ee3e" + } + } +} From 9a2f1cf35ca3acd726a0ee0e881af1b7fc418c34 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 11:53:57 -0400 Subject: [PATCH 26/47] Remove lock file (potentially temporarily!) --- analyses/cell-type-wilms-tumor-06/renv.lock | 3815 ------------------- 1 file changed, 3815 deletions(-) delete mode 100644 analyses/cell-type-wilms-tumor-06/renv.lock diff --git a/analyses/cell-type-wilms-tumor-06/renv.lock b/analyses/cell-type-wilms-tumor-06/renv.lock deleted file mode 100644 index bc2a5be30..000000000 --- a/analyses/cell-type-wilms-tumor-06/renv.lock +++ /dev/null @@ -1,3815 +0,0 @@ -{ - "R": { - "Version": "4.4.1", - "Repositories": [ - { - "Name": "https://cloud.r-project.org", - "URL": "https://cloud.r-project.org" - } - ] - }, - "Bioconductor": { - "Version": "3.19" - }, - "Packages": { - "AnnotationDbi": { - "Package": "AnnotationDbi", - "Version": "1.64.1", - "Source": "Bioconductor", - "Requirements": [ - "Biobase", - "BiocGenerics", - "DBI", - "IRanges", - "KEGGREST", - "R", - "RSQLite", - "S4Vectors", - "methods", - "stats", - "stats4" - ], - "Hash": "27587689922e22f60ec9ad0182a0a825" - }, - "AnnotationFilter": { - "Package": "AnnotationFilter", - "Version": "1.26.0", - "Source": "Bioconductor", - "Requirements": [ - "GenomicRanges", - "R", - "lazyeval", - "methods", - "utils" - ], - "Hash": "759acec0b1522c1a85c6ba703d4c0ec5" - }, - "Azimuth": { - "Package": "Azimuth", - "Version": "0.5.0", - "Source": "GitHub", - "Remotes": "immunogenomics/presto, satijalab/seurat-data, mojaveazure/seurat-disk", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "azimuth", - "RemoteUsername": "satijalab", - "RemoteRef": "HEAD", - "RemoteSha": "243ee5db80fcbffa3452c944254a325a3da2ef9e", - "Requirements": [ - "BSgenome.Hsapiens.UCSC.hg38", - "DT", - "EnsDb.Hsapiens.v86", - "JASPAR2020", - "Matrix", - "R", - "Rcpp", - "Seurat", - "SeuratData", - "SeuratDisk", - "SeuratObject", - "Signac", - "TFBSTools", - "future", - "ggplot2", - "glmGamPoi", - "googlesheets4", - "hdf5r", - "htmltools", - "httr", - "jsonlite", - "methods", - "patchwork", - "plotly", - "presto", - "rlang", - "scales", - "shiny", - "shinyBS", - "shinydashboard", - "shinyjs", - "stats", - "stringr", - "tools", - "utils", - "withr" - ], - "Hash": "59d0a6084aa8b75b77a5da511d0786f6" - }, - "BH": { - "Package": "BH", - "Version": "1.84.0-0", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "a8235afbcd6316e6e91433ea47661013" - }, - "BSgenome": { - "Package": "BSgenome", - "Version": "1.70.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "BiocIO", - "Biostrings", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "R", - "Rsamtools", - "S4Vectors", - "XVector", - "matrixStats", - "methods", - "rtracklayer", - "stats", - "utils" - ], - "Hash": "41a60ca70f713322ca31026f6b9e052b" - }, - "BSgenome.Hsapiens.UCSC.hg38": { - "Package": "BSgenome.Hsapiens.UCSC.hg38", - "Version": "1.4.5", - "Source": "Bioconductor", - "Requirements": [ - "BSgenome", - "GenomeInfoDb", - "R" - ], - "Hash": "0ba28cc20a4f8629fbb30d0bf1a133ac" - }, - "Biobase": { - "Package": "Biobase", - "Version": "2.62.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "R", - "methods", - "utils" - ], - "Hash": "38252a34e82d3ff6bb46b4e2252d2dce" - }, - "BiocFileCache": { - "Package": "BiocFileCache", - "Version": "2.10.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "DBI", - "R", - "RSQLite", - "curl", - "dbplyr", - "dplyr", - "filelock", - "httr", - "methods", - "stats", - "utils" - ], - "Hash": "d59a927de08cce606299009cc595b2cb" - }, - "BiocGenerics": { - "Package": "BiocGenerics", - "Version": "0.48.1", - "Source": "Bioconductor", - "Requirements": [ - "R", - "graphics", - "methods", - "stats", - "utils" - ], - "Hash": "e34278c65d7dffcc08f737bf0944ca9a" - }, - "BiocIO": { - "Package": "BiocIO", - "Version": "1.12.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "R", - "S4Vectors", - "methods", - "tools" - ], - "Hash": "aa543468283543c9a8dad23a4897be96" - }, - "BiocManager": { - "Package": "BiocManager", - "Version": "1.30.23", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "utils" - ], - "Hash": "47e968dfe563c1b22c2e20a067ec21d5" - }, - "BiocParallel": { - "Package": "BiocParallel", - "Version": "1.36.0", - "Source": "Bioconductor", - "Requirements": [ - "BH", - "R", - "codetools", - "cpp11", - "futile.logger", - "methods", - "parallel", - "snow", - "stats", - "utils" - ], - "Hash": "6d1689ee8b65614ba6ef4012a67b663a" - }, - "BiocVersion": { - "Package": "BiocVersion", - "Version": "3.19.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.19", - "Requirements": [ - "R" - ], - "Hash": "b892e27fc9659a4c8f8787d34c37b8b2" - }, - "Biostrings": { - "Package": "Biostrings", - "Version": "2.70.3", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "GenomeInfoDb", - "IRanges", - "R", - "S4Vectors", - "XVector", - "crayon", - "grDevices", - "graphics", - "methods", - "stats", - "utils" - ], - "Hash": "86ffa781f132f54e9c963a13fd6cf9fc" - }, - "CNEr": { - "Package": "CNEr", - "Version": "1.38.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "Biostrings", - "DBI", - "GO.db", - "GenomeInfoDb", - "GenomicAlignments", - "GenomicRanges", - "IRanges", - "KEGGREST", - "R", - "R.utils", - "RSQLite", - "S4Vectors", - "XVector", - "annotate", - "ggplot2", - "methods", - "parallel", - "poweRlaw", - "readr", - "reshape2", - "rtracklayer", - "tools" - ], - "Hash": "a6b6bf0df150fe2869b81059eddfb5a2" - }, - "DBI": { - "Package": "DBI", - "Version": "1.2.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods" - ], - "Hash": "065ae649b05f1ff66bb0c793107508f5" - }, - "DElegate": { - "Package": "DElegate", - "Version": "1.2.1", - "Source": "GitHub", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "DElegate", - "RemoteUsername": "cancerbits", - "RemoteRef": "HEAD", - "RemoteSha": "43591860dfdaf6b6f9d03907e37ae6c7c84b030e", - "Requirements": [ - "Matrix", - "R", - "dplyr", - "magrittr", - "rlang", - "tibble" - ], - "Hash": "c3762bb10e8aeeee633df34436463f95" - }, - "DT": { - "Package": "DT", - "Version": "0.33", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "crosstalk", - "htmltools", - "htmlwidgets", - "httpuv", - "jquerylib", - "jsonlite", - "magrittr", - "promises" - ], - "Hash": "64ff3427f559ce3f2597a4fe13255cb6" - }, - "DelayedArray": { - "Package": "DelayedArray", - "Version": "0.28.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "IRanges", - "Matrix", - "MatrixGenerics", - "R", - "S4Arrays", - "S4Vectors", - "SparseArray", - "methods", - "stats", - "stats4" - ], - "Hash": "0e5c84e543a3d04ce64c6f60ed46d7eb" - }, - "DelayedMatrixStats": { - "Package": "DelayedMatrixStats", - "Version": "1.24.0", - "Source": "Bioconductor", - "Requirements": [ - "DelayedArray", - "IRanges", - "Matrix", - "MatrixGenerics", - "S4Vectors", - "methods", - "sparseMatrixStats" - ], - "Hash": "71c2d178d33f9d91999f67dc2d53b747" - }, - "DirichletMultinomial": { - "Package": "DirichletMultinomial", - "Version": "1.44.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "IRanges", - "S4Vectors", - "methods", - "stats4" - ], - "Hash": "18131c758b36c44d13e2ca9fdf656343" - }, - "EnsDb.Hsapiens.v86": { - "Package": "EnsDb.Hsapiens.v86", - "Version": "2.99.0", - "Source": "Bioconductor", - "Requirements": [ - "ensembldb" - ], - "Hash": "626af36a8d6de3c44779ff2a073952e6" - }, - "FNN": { - "Package": "FNN", - "Version": "1.1.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "eaabdc7938aa3632a28273f53a0d226d" - }, - "GO.db": { - "Package": "GO.db", - "Version": "3.18.0", - "Source": "Bioconductor", - "Requirements": [ - "AnnotationDbi", - "R", - "methods" - ], - "Hash": "1ec786f8b958a01ceb245883701873b1" - }, - "GenomeInfoDb": { - "Package": "GenomeInfoDb", - "Version": "1.38.8", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "GenomeInfoDbData", - "IRanges", - "R", - "RCurl", - "S4Vectors", - "methods", - "stats", - "stats4", - "utils" - ], - "Hash": "155053909d2831bfac154a1118151d6b" - }, - "GenomeInfoDbData": { - "Package": "GenomeInfoDbData", - "Version": "1.2.11", - "Source": "Bioconductor", - "Requirements": [ - "R" - ], - "Hash": "10f32956181d1d46bd8402c93ac193e8" - }, - "GenomicAlignments": { - "Package": "GenomicAlignments", - "Version": "1.38.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "BiocParallel", - "Biostrings", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "R", - "Rsamtools", - "S4Vectors", - "SummarizedExperiment", - "methods", - "stats", - "utils" - ], - "Hash": "3447de036330c8c2ae54f064c8f4e299" - }, - "GenomicFeatures": { - "Package": "GenomicFeatures", - "Version": "1.54.4", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "AnnotationDbi", - "Biobase", - "BiocGenerics", - "BiocIO", - "Biostrings", - "DBI", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "R", - "RSQLite", - "S4Vectors", - "XVector", - "biomaRt", - "httr", - "methods", - "rjson", - "rtracklayer", - "stats", - "tools", - "utils" - ], - "Hash": "28667ac05b72cf841adf792154f387de" - }, - "GenomicRanges": { - "Package": "GenomicRanges", - "Version": "1.54.1", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "GenomeInfoDb", - "IRanges", - "R", - "S4Vectors", - "XVector", - "methods", - "stats", - "stats4", - "utils" - ], - "Hash": "7e0c1399af35369312d9c399454374e8" - }, - "HDF5Array": { - "Package": "HDF5Array", - "Version": "1.30.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "DelayedArray", - "IRanges", - "Matrix", - "R", - "Rhdf5lib", - "S4Arrays", - "S4Vectors", - "methods", - "rhdf5", - "rhdf5filters", - "stats", - "tools", - "utils" - ], - "Hash": "9b8deb4fd34fa439c16c829457d1968f" - }, - "IRanges": { - "Package": "IRanges", - "Version": "2.36.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "R", - "S4Vectors", - "methods", - "stats", - "stats4", - "utils" - ], - "Hash": "f98500eeb93e8a66ad65be955a848595" - }, - "JASPAR2020": { - "Package": "JASPAR2020", - "Version": "0.99.10", - "Source": "Bioconductor", - "Requirements": [ - "R", - "methods" - ], - "Hash": "779f73c6fcd71f791c0985fde2aff785" - }, - "KEGGREST": { - "Package": "KEGGREST", - "Version": "1.42.0", - "Source": "Bioconductor", - "Requirements": [ - "Biostrings", - "R", - "httr", - "methods", - "png" - ], - "Hash": "8d6e9f4dce69aec9c588c27ae79be08e" - }, - "KernSmooth": { - "Package": "KernSmooth", - "Version": "2.23-24", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "stats" - ], - "Hash": "9f33a1ee37bbe8919eb2ec4b9f2473a5" - }, - "MASS": { - "Package": "MASS", - "Version": "7.3-61", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "grDevices", - "graphics", - "methods", - "stats", - "utils" - ], - "Hash": "0cafd6f0500e5deba33be22c46bf6055" - }, - "Matrix": { - "Package": "Matrix", - "Version": "1.7-0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "grid", - "lattice", - "methods", - "stats", - "utils" - ], - "Hash": "1920b2f11133b12350024297d8a4ff4a" - }, - "MatrixGenerics": { - "Package": "MatrixGenerics", - "Version": "1.14.0", - "Source": "Bioconductor", - "Requirements": [ - "matrixStats", - "methods" - ], - "Hash": "088cd2077b5619fcb7b373b1a45174e7" - }, - "ProtGenerics": { - "Package": "ProtGenerics", - "Version": "1.34.0", - "Source": "Bioconductor", - "Requirements": [ - "methods" - ], - "Hash": "f9cf8f8dac1d3e1bd9a5e3215286b700" - }, - "R.methodsS3": { - "Package": "R.methodsS3", - "Version": "1.8.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "utils" - ], - "Hash": "278c286fd6e9e75d0c2e8f731ea445c8" - }, - "R.oo": { - "Package": "R.oo", - "Version": "1.26.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R.methodsS3", - "methods", - "utils" - ], - "Hash": "4fed809e53ddb5407b3da3d0f572e591" - }, - "R.utils": { - "Package": "R.utils", - "Version": "2.12.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R.methodsS3", - "R.oo", - "methods", - "tools", - "utils" - ], - "Hash": "3dc2829b790254bfba21e60965787651" - }, - "R6": { - "Package": "R6", - "Version": "2.5.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "470851b6d5d0ac559e9d01bb352b4021" - }, - "RANN": { - "Package": "RANN", - "Version": "2.6.1", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "d128ea05a972d3e67c6f39de52c72bd7" - }, - "RColorBrewer": { - "Package": "RColorBrewer", - "Version": "1.1-3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "45f0398006e83a5b10b72a90663d8d8c" - }, - "RCurl": { - "Package": "RCurl", - "Version": "1.98-1.16", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "bitops", - "methods" - ], - "Hash": "ddbdf53d15b47be4407ede6914f56fbb" - }, - "ROCR": { - "Package": "ROCR", - "Version": "1.0-11", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "gplots", - "grDevices", - "graphics", - "methods", - "stats" - ], - "Hash": "cc151930e20e16427bc3d0daec62b4a9" - }, - "RSQLite": { - "Package": "RSQLite", - "Version": "2.3.7", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "DBI", - "R", - "bit64", - "blob", - "cpp11", - "memoise", - "methods", - "pkgconfig", - "plogr", - "rlang" - ], - "Hash": "46b45a4dd7bb0e0f4e3fc22245817240" - }, - "RSpectra": { - "Package": "RSpectra", - "Version": "0.16-2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "Rcpp", - "RcppEigen" - ], - "Hash": "5ffd7a70479497271e57cd0cc2465b3b" - }, - "Rcpp": { - "Package": "Rcpp", - "Version": "1.0.13", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "methods", - "utils" - ], - "Hash": "f27411eb6d9c3dada5edd444b8416675" - }, - "RcppAnnoy": { - "Package": "RcppAnnoy", - "Version": "0.0.22", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "methods" - ], - "Hash": "f6baa1e06fb6c3724f601a764266cb0d" - }, - "RcppArmadillo": { - "Package": "RcppArmadillo", - "Version": "14.0.0-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "methods", - "stats", - "utils" - ], - "Hash": "a711769be34214addf7805278b72d56b" - }, - "RcppEigen": { - "Package": "RcppEigen", - "Version": "0.3.4.0.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "stats", - "utils" - ], - "Hash": "df49e3306f232ec28f1604e36a202847" - }, - "RcppHNSW": { - "Package": "RcppHNSW", - "Version": "0.6.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Rcpp", - "methods" - ], - "Hash": "1f2dc32c27746a35196aaf95adb357be" - }, - "RcppProgress": { - "Package": "RcppProgress", - "Version": "0.4.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "1c0aa18b97e6aaa17f93b8b866c0ace5" - }, - "RcppRoll": { - "Package": "RcppRoll", - "Version": "0.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp" - ], - "Hash": "6659c0ecb7b85f322f93e7f1e6ac7d35" - }, - "RcppTOML": { - "Package": "RcppTOML", - "Version": "0.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp" - ], - "Hash": "c232938949fcd8126034419cc529333a" - }, - "Rhdf5lib": { - "Package": "Rhdf5lib", - "Version": "1.24.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "R" - ], - "Hash": "3cf103db29d75af0221d71946509a30c" - }, - "Rhtslib": { - "Package": "Rhtslib", - "Version": "2.4.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "zlibbioc" - ], - "Hash": "ee7abc23ddeada73fedfee74c633bffe" - }, - "Rsamtools": { - "Package": "Rsamtools", - "Version": "2.18.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "BiocParallel", - "Biostrings", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "R", - "Rhtslib", - "S4Vectors", - "XVector", - "bitops", - "methods", - "stats", - "utils", - "zlibbioc" - ], - "Hash": "242517db56d7fe7214120ecc77a5890d" - }, - "Rtsne": { - "Package": "Rtsne", - "Version": "0.17", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Rcpp", - "stats" - ], - "Hash": "f81f7764a3c3e310b1d40e1a8acee19e" - }, - "S4Arrays": { - "Package": "S4Arrays", - "Version": "1.2.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "IRanges", - "Matrix", - "R", - "S4Vectors", - "abind", - "crayon", - "methods", - "stats" - ], - "Hash": "3213a9826adb8f48e51af1e7b30fa568" - }, - "S4Vectors": { - "Package": "S4Vectors", - "Version": "0.40.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "R", - "methods", - "stats", - "stats4", - "utils" - ], - "Hash": "1716e201f81ced0f456dd5ec85fe20f8" - }, - "SCpubr": { - "Package": "SCpubr", - "Version": "2.0.2.9000", - "Source": "GitHub", - "Remotes": "saezlab/liana", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "SCpubr", - "RemoteUsername": "enblacar", - "RemoteRef": "HEAD", - "RemoteSha": "fea9b84ebcd1ed92890dbf219ca90eb807824bee", - "Requirements": [ - "R" - ], - "Hash": "f35495a894b17db011b381b1275f5a5e" - }, - "Seurat": { - "Package": "Seurat", - "Version": "5.0.0", - "Source": "GitHub", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "seurat", - "RemoteUsername": "satijalab", - "RemoteRef": "seurat5", - "RemoteSha": "a4075e78d52a67e5f901459c6eb024bb8b3c9c44", - "Requirements": [ - "KernSmooth", - "MASS", - "Matrix", - "R", - "RANN", - "RColorBrewer", - "ROCR", - "RSpectra", - "Rcpp", - "RcppAnnoy", - "RcppEigen", - "RcppHNSW", - "RcppProgress", - "Rtsne", - "SeuratObject", - "cluster", - "cowplot", - "fastDummies", - "fitdistrplus", - "future", - "future.apply", - "generics", - "ggplot2", - "ggrepel", - "ggridges", - "grDevices", - "graphics", - "grid", - "httr", - "ica", - "igraph", - "irlba", - "jsonlite", - "leiden", - "lifecycle", - "lmtest", - "matrixStats", - "methods", - "miniUI", - "patchwork", - "pbapply", - "plotly", - "png", - "progressr", - "purrr", - "reticulate", - "rlang", - "scales", - "scattermore", - "sctransform", - "shiny", - "spatstat.explore", - "spatstat.geom", - "stats", - "tibble", - "tools", - "utils", - "uwot" - ], - "Hash": "f340b47991cf4e2cc21441217f183c45" - }, - "SeuratData": { - "Package": "SeuratData", - "Version": "0.2.2.9001", - "Source": "GitHub", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "seurat-data", - "RemoteUsername": "satijalab", - "RemoteRef": "HEAD", - "RemoteSha": "4dc08e022f51c324bc7bf785b1b5771d2742701d", - "Requirements": [ - "R", - "SeuratObject", - "cli", - "crayon", - "rappdirs", - "stats", - "utils" - ], - "Hash": "58823864a94ee08545fb114c5c629f51" - }, - "SeuratDisk": { - "Package": "SeuratDisk", - "Version": "0.0.0.9021", - "Source": "GitHub", - "Remotes": "satijalab/seurat-data", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "seurat-disk", - "RemoteUsername": "mojaveazure", - "RemoteRef": "HEAD", - "RemoteSha": "877d4e18ab38c686f5db54f8cd290274ccdbe295", - "Requirements": [ - "Matrix", - "R", - "R6", - "Seurat", - "SeuratObject", - "cli", - "crayon", - "hdf5r", - "methods", - "rlang", - "stats", - "stringi", - "tools", - "utils", - "withr" - ], - "Hash": "d9eddfd211bbe8278b1805fe08ffd523" - }, - "SeuratObject": { - "Package": "SeuratObject", - "Version": "5.0.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "Rcpp", - "RcppEigen", - "future", - "future.apply", - "generics", - "grDevices", - "grid", - "lifecycle", - "methods", - "progressr", - "rlang", - "sp", - "spam", - "stats", - "tools", - "utils" - ], - "Hash": "e9b70412b7e04571b46101f5dcbaacad" - }, - "Signac": { - "Package": "Signac", - "Version": "1.13.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "BiocGenerics", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "Matrix", - "R", - "Rcpp", - "RcppRoll", - "Rsamtools", - "S4Vectors", - "SeuratObject", - "data.table", - "dplyr", - "fastmatch", - "future", - "future.apply", - "ggplot2", - "grid", - "irlba", - "lifecycle", - "methods", - "patchwork", - "pbapply", - "rlang", - "scales", - "stats", - "stringi", - "tidyr", - "tidyselect", - "utils", - "vctrs" - ], - "Hash": "e29e5a01bf36b5d979a54a7650df301a" - }, - "SingleCellExperiment": { - "Package": "SingleCellExperiment", - "Version": "1.24.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "DelayedArray", - "GenomicRanges", - "S4Vectors", - "SummarizedExperiment", - "methods", - "stats", - "utils" - ], - "Hash": "e21b3571ce76eb4dfe6bf7900960aa6a" - }, - "SparseArray": { - "Package": "SparseArray", - "Version": "1.2.4", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "IRanges", - "Matrix", - "MatrixGenerics", - "R", - "S4Arrays", - "S4Vectors", - "XVector", - "matrixStats", - "methods", - "stats" - ], - "Hash": "391092e7b81373ab624bd6471cebccd4" - }, - "SummarizedExperiment": { - "Package": "SummarizedExperiment", - "Version": "1.32.0", - "Source": "Bioconductor", - "Requirements": [ - "Biobase", - "BiocGenerics", - "DelayedArray", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "Matrix", - "MatrixGenerics", - "R", - "S4Arrays", - "S4Vectors", - "methods", - "stats", - "tools", - "utils" - ], - "Hash": "caee529bf9710ff6fe1776612fcaa266" - }, - "TFBSTools": { - "Package": "TFBSTools", - "Version": "1.40.0", - "Source": "Bioconductor", - "Requirements": [ - "BSgenome", - "Biobase", - "BiocGenerics", - "BiocParallel", - "Biostrings", - "CNEr", - "DBI", - "DirichletMultinomial", - "GenomeInfoDb", - "GenomicRanges", - "IRanges", - "R", - "RSQLite", - "S4Vectors", - "TFMPvalue", - "XML", - "XVector", - "caTools", - "grid", - "gtools", - "methods", - "parallel", - "rtracklayer", - "seqLogo" - ], - "Hash": "2d81d93dc84b76c570719689328682bd" - }, - "TFMPvalue": { - "Package": "TFMPvalue", - "Version": "0.0.9", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp" - ], - "Hash": "d2974f239e0c14cade60062fe2cbdf0b" - }, - "XML": { - "Package": "XML", - "Version": "3.99-0.17", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods", - "utils" - ], - "Hash": "bc2a8a1139d8d4bd9c46086708945124" - }, - "XVector": { - "Package": "XVector", - "Version": "0.42.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "IRanges", - "R", - "S4Vectors", - "methods", - "tools", - "utils", - "zlibbioc" - ], - "Hash": "65c0b6bca03f88758f86ef0aa18c4873" - }, - "abind": { - "Package": "abind", - "Version": "1.4-5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods", - "utils" - ], - "Hash": "4f57884290cc75ab22f4af9e9d4ca862" - }, - "annotate": { - "Package": "annotate", - "Version": "1.80.0", - "Source": "Bioconductor", - "Requirements": [ - "AnnotationDbi", - "Biobase", - "BiocGenerics", - "DBI", - "R", - "XML", - "graphics", - "httr", - "methods", - "stats", - "utils", - "xtable" - ], - "Hash": "08359e5ce909c14a936ec1f9712ca830" - }, - "askpass": { - "Package": "askpass", - "Version": "1.2.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "sys" - ], - "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" - }, - "base64enc": { - "Package": "base64enc", - "Version": "0.1-3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "543776ae6848fde2f48ff3816d0628bc" - }, - "beachmat": { - "Package": "beachmat", - "Version": "2.18.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "DelayedArray", - "Matrix", - "Rcpp", - "SparseArray", - "methods" - ], - "Hash": "c1c423ca7149d9e7f55d1e609342c2bd" - }, - "biomaRt": { - "Package": "biomaRt", - "Version": "2.58.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "AnnotationDbi", - "BiocFileCache", - "XML", - "digest", - "httr", - "methods", - "progress", - "rappdirs", - "stringr", - "utils", - "xml2" - ], - "Hash": "d6e043a6bfb4e2e256d00b8eee9c4266" - }, - "bit": { - "Package": "bit", - "Version": "4.0.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "d242abec29412ce988848d0294b208fd" - }, - "bit64": { - "Package": "bit64", - "Version": "4.0.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "bit", - "methods", - "stats", - "utils" - ], - "Hash": "9fe98599ca456d6552421db0d6772d8f" - }, - "bitops": { - "Package": "bitops", - "Version": "1.0-8", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "da69e6b6f8feebec0827205aad3fdbd8" - }, - "blob": { - "Package": "blob", - "Version": "1.2.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "methods", - "rlang", - "vctrs" - ], - "Hash": "40415719b5a479b87949f3aa0aee737c" - }, - "bslib": { - "Package": "bslib", - "Version": "0.8.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "base64enc", - "cachem", - "fastmap", - "grDevices", - "htmltools", - "jquerylib", - "jsonlite", - "lifecycle", - "memoise", - "mime", - "rlang", - "sass" - ], - "Hash": "b299c6741ca9746fb227debcb0f9fb6c" - }, - "caTools": { - "Package": "caTools", - "Version": "1.18.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "bitops" - ], - "Hash": "34d90fa5845004236b9eacafc51d07b2" - }, - "cachem": { - "Package": "cachem", - "Version": "1.1.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "fastmap", - "rlang" - ], - "Hash": "cd9a672193789068eb5a2aad65a0dedf" - }, - "cellranger": { - "Package": "cellranger", - "Version": "1.1.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "rematch", - "tibble" - ], - "Hash": "f61dbaec772ccd2e17705c1e872e9e7c" - }, - "cli": { - "Package": "cli", - "Version": "3.6.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "utils" - ], - "Hash": "b21916dd77a27642b447374a5d30ecf3" - }, - "clipr": { - "Package": "clipr", - "Version": "0.8.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "utils" - ], - "Hash": "3f038e5ac7f41d4ac41ce658c85e3042" - }, - "cluster": { - "Package": "cluster", - "Version": "2.1.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "stats", - "utils" - ], - "Hash": "0aaa05204035dc43ea0004b9c76611dd" - }, - "codetools": { - "Package": "codetools", - "Version": "0.2-20", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "61e097f35917d342622f21cdc79c256e" - }, - "colorspace": { - "Package": "colorspace", - "Version": "2.1-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "methods", - "stats" - ], - "Hash": "d954cb1c57e8d8b756165d7ba18aa55a" - }, - "commonmark": { - "Package": "commonmark", - "Version": "1.9.1", - "Source": "Repository", - "Repository": "RSPM", - "Hash": "5d8225445acb167abf7797de48b2ee3c" - }, - "cowplot": { - "Package": "cowplot", - "Version": "1.1.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "ggplot2", - "grDevices", - "grid", - "gtable", - "methods", - "rlang", - "scales" - ], - "Hash": "8ef2084dd7d28847b374e55440e4f8cb" - }, - "cpp11": { - "Package": "cpp11", - "Version": "0.4.7", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "5a295d7d963cc5035284dcdbaf334f4e" - }, - "crayon": { - "Package": "crayon", - "Version": "1.5.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "grDevices", - "methods", - "utils" - ], - "Hash": "859d96e65ef198fd43e82b9628d593ef" - }, - "crosstalk": { - "Package": "crosstalk", - "Version": "1.2.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R6", - "htmltools", - "jsonlite", - "lazyeval" - ], - "Hash": "ab12c7b080a57475248a30f4db6298c0" - }, - "curl": { - "Package": "curl", - "Version": "5.2.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" - }, - "data.table": { - "Package": "data.table", - "Version": "1.15.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods" - ], - "Hash": "8ee9ac56ef633d0c7cab8b2ca87d683e" - }, - "dbplyr": { - "Package": "dbplyr", - "Version": "2.5.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "DBI", - "R", - "R6", - "blob", - "cli", - "dplyr", - "glue", - "lifecycle", - "magrittr", - "methods", - "pillar", - "purrr", - "rlang", - "tibble", - "tidyr", - "tidyselect", - "utils", - "vctrs", - "withr" - ], - "Hash": "39b2e002522bfd258039ee4e889e0fd1" - }, - "deldir": { - "Package": "deldir", - "Version": "2.0-4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics" - ], - "Hash": "24754fce82729ff85317dd195b6646a8" - }, - "digest": { - "Package": "digest", - "Version": "0.6.36", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "utils" - ], - "Hash": "fd6824ad91ede64151e93af67df6376b" - }, - "dotCall64": { - "Package": "dotCall64", - "Version": "1.1-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "80f374ef8500fcdc5d84a0345b837227" - }, - "dplyr": { - "Package": "dplyr", - "Version": "1.1.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "cli", - "generics", - "glue", - "lifecycle", - "magrittr", - "methods", - "pillar", - "rlang", - "tibble", - "tidyselect", - "utils", - "vctrs" - ], - "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" - }, - "dqrng": { - "Package": "dqrng", - "Version": "0.4.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "BH", - "R", - "Rcpp", - "sitmo" - ], - "Hash": "6d7b942d8f615705f89a7883998fc839" - }, - "edgeR": { - "Package": "edgeR", - "Version": "4.2.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.19", - "Requirements": [ - "R", - "Rcpp", - "graphics", - "limma", - "locfit", - "methods", - "stats", - "utils" - ], - "Hash": "729daec53b663926458ccde421f5c2fb" - }, - "ensembldb": { - "Package": "ensembldb", - "Version": "2.26.0", - "Source": "Bioconductor", - "Requirements": [ - "AnnotationDbi", - "AnnotationFilter", - "Biobase", - "BiocGenerics", - "Biostrings", - "DBI", - "GenomeInfoDb", - "GenomicFeatures", - "GenomicRanges", - "IRanges", - "ProtGenerics", - "R", - "RSQLite", - "Rsamtools", - "S4Vectors", - "curl", - "methods", - "rtracklayer" - ], - "Hash": "6be48b1a96556976a4e9ee6836f88b97" - }, - "evaluate": { - "Package": "evaluate", - "Version": "0.24.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods" - ], - "Hash": "a1066cbc05caee9a4bf6d90f194ff4da" - }, - "fansi": { - "Package": "fansi", - "Version": "1.0.6", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "grDevices", - "utils" - ], - "Hash": "962174cf2aeb5b9eea581522286a911f" - }, - "farver": { - "Package": "farver", - "Version": "2.1.2", - "Source": "Repository", - "Repository": "RSPM", - "Hash": "680887028577f3fa2a81e410ed0d6e42" - }, - "fastDummies": { - "Package": "fastDummies", - "Version": "1.7.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "data.table", - "stringr", - "tibble" - ], - "Hash": "e0f9c0c051e0e8d89996d7f0c400539f" - }, - "fastmap": { - "Package": "fastmap", - "Version": "1.2.0", - "Source": "Repository", - "Repository": "RSPM", - "Hash": "aa5e1cd11c2d15497494c5292d7ffcc8" - }, - "fastmatch": { - "Package": "fastmatch", - "Version": "1.1-4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "8c406b7284bbaef08e01c6687367f195" - }, - "filelock": { - "Package": "filelock", - "Version": "1.0.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "192053c276525c8495ccfd523aa8f2d1" - }, - "fitdistrplus": { - "Package": "fitdistrplus", - "Version": "1.2-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "MASS", - "R", - "grDevices", - "methods", - "rlang", - "stats", - "survival" - ], - "Hash": "78f15d68e31a6d9a378c546c783bac15" - }, - "fontawesome": { - "Package": "fontawesome", - "Version": "0.5.2", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "htmltools", - "rlang" - ], - "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" - }, - "formatR": { - "Package": "formatR", - "Version": "1.14", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "63cb26d12517c7863f5abb006c5e0f25" - }, - "fs": { - "Package": "fs", - "Version": "1.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods" - ], - "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" - }, - "futile.logger": { - "Package": "futile.logger", - "Version": "1.4.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "futile.options", - "lambda.r", - "utils" - ], - "Hash": "99f0ace8c05ec7d3683d27083c4f1e7e" - }, - "futile.options": { - "Package": "futile.options", - "Version": "1.0.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "0d9bf02413ddc2bbe8da9ce369dcdd2b" - }, - "future": { - "Package": "future", - "Version": "1.34.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "digest", - "globals", - "listenv", - "parallel", - "parallelly", - "utils" - ], - "Hash": "475771e3edb711591476be387c9a8c2e" - }, - "future.apply": { - "Package": "future.apply", - "Version": "1.11.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "future", - "globals", - "parallel", - "utils" - ], - "Hash": "afe1507511629f44572e6c53b9baeb7c" - }, - "gargle": { - "Package": "gargle", - "Version": "1.5.2", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "fs", - "glue", - "httr", - "jsonlite", - "lifecycle", - "openssl", - "rappdirs", - "rlang", - "stats", - "utils", - "withr" - ], - "Hash": "fc0b272e5847c58cd5da9b20eedbd026" - }, - "generics": { - "Package": "generics", - "Version": "0.1.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods" - ], - "Hash": "15e9634c0fcd294799e9b2e929ed1b86" - }, - "ggplot2": { - "Package": "ggplot2", - "Version": "3.5.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "MASS", - "R", - "cli", - "glue", - "grDevices", - "grid", - "gtable", - "isoband", - "lifecycle", - "mgcv", - "rlang", - "scales", - "stats", - "tibble", - "vctrs", - "withr" - ], - "Hash": "44c6a2f8202d5b7e878ea274b1092426" - }, - "ggplotify": { - "Package": "ggplotify", - "Version": "0.1.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "ggplot2", - "grDevices", - "graphics", - "grid", - "gridGraphics", - "yulab.utils" - ], - "Hash": "1547863db3b472cf7181973acf649f1a" - }, - "ggrepel": { - "Package": "ggrepel", - "Version": "0.9.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "ggplot2", - "grid", - "rlang", - "scales", - "withr" - ], - "Hash": "cc3361e234c4a5050e29697d675764aa" - }, - "ggridges": { - "Package": "ggridges", - "Version": "0.5.6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "ggplot2", - "grid", - "scales", - "withr" - ], - "Hash": "66488692cb8621bc78df1b9b819497a6" - }, - "glmGamPoi": { - "Package": "glmGamPoi", - "Version": "1.14.3", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "BiocGenerics", - "DelayedArray", - "DelayedMatrixStats", - "HDF5Array", - "MatrixGenerics", - "Rcpp", - "RcppArmadillo", - "SingleCellExperiment", - "SummarizedExperiment", - "beachmat", - "matrixStats", - "methods", - "rlang", - "splines", - "stats", - "utils", - "vctrs" - ], - "Hash": "ccbc016a32fb8e0fe7205497c814e691" - }, - "globals": { - "Package": "globals", - "Version": "0.16.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "codetools" - ], - "Hash": "2580567908cafd4f187c1e5a91e98b7f" - }, - "glue": { - "Package": "glue", - "Version": "1.7.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "methods" - ], - "Hash": "e0b3a53876554bd45879e596cdb10a52" - }, - "goftest": { - "Package": "goftest", - "Version": "1.2-3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "stats" - ], - "Hash": "dbe0201f91eeb15918dd3fbf01ee689a" - }, - "googledrive": { - "Package": "googledrive", - "Version": "2.1.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "gargle", - "glue", - "httr", - "jsonlite", - "lifecycle", - "magrittr", - "pillar", - "purrr", - "rlang", - "tibble", - "utils", - "uuid", - "vctrs", - "withr" - ], - "Hash": "e99641edef03e2a5e87f0a0b1fcc97f4" - }, - "googlesheets4": { - "Package": "googlesheets4", - "Version": "1.1.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cellranger", - "cli", - "curl", - "gargle", - "glue", - "googledrive", - "httr", - "ids", - "lifecycle", - "magrittr", - "methods", - "purrr", - "rematch2", - "rlang", - "tibble", - "utils", - "vctrs", - "withr" - ], - "Hash": "d6db1667059d027da730decdc214b959" - }, - "gplots": { - "Package": "gplots", - "Version": "3.1.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "KernSmooth", - "R", - "caTools", - "gtools", - "methods", - "stats" - ], - "Hash": "f72b5d1ed587f8905e38ee7295e88d80" - }, - "gridExtra": { - "Package": "gridExtra", - "Version": "2.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "graphics", - "grid", - "gtable", - "utils" - ], - "Hash": "7d7f283939f563670a697165b2cf5560" - }, - "gridGraphics": { - "Package": "gridGraphics", - "Version": "0.5-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "graphics", - "grid" - ], - "Hash": "5b79228594f02385d4df4979284879ae" - }, - "gtable": { - "Package": "gtable", - "Version": "0.3.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "glue", - "grid", - "lifecycle", - "rlang" - ], - "Hash": "e18861963cbc65a27736e02b3cd3c4a0" - }, - "gtools": { - "Package": "gtools", - "Version": "3.9.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "methods", - "stats", - "utils" - ], - "Hash": "588d091c35389f1f4a9d533c8d709b35" - }, - "hdf5r": { - "Package": "hdf5r", - "Version": "1.3.11", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "bit64", - "methods", - "utils" - ], - "Hash": "8f066454d3c306fa34e2885fbbfd4e1c" - }, - "here": { - "Package": "here", - "Version": "1.0.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "rprojroot" - ], - "Hash": "24b224366f9c2e7534d2344d10d59211" - }, - "highr": { - "Package": "highr", - "Version": "0.11", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "xfun" - ], - "Hash": "d65ba49117ca223614f71b60d85b8ab7" - }, - "hms": { - "Package": "hms", - "Version": "1.1.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "lifecycle", - "methods", - "pkgconfig", - "rlang", - "vctrs" - ], - "Hash": "b59377caa7ed00fa41808342002138f9" - }, - "htmltools": { - "Package": "htmltools", - "Version": "0.5.8.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "base64enc", - "digest", - "fastmap", - "grDevices", - "rlang", - "utils" - ], - "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" - }, - "htmlwidgets": { - "Package": "htmlwidgets", - "Version": "1.6.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "grDevices", - "htmltools", - "jsonlite", - "knitr", - "rmarkdown", - "yaml" - ], - "Hash": "04291cc45198225444a397606810ac37" - }, - "httpuv": { - "Package": "httpuv", - "Version": "1.6.15", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "Rcpp", - "later", - "promises", - "utils" - ], - "Hash": "d55aa087c47a63ead0f6fc10f8fa1ee0" - }, - "httr": { - "Package": "httr", - "Version": "1.4.7", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "curl", - "jsonlite", - "mime", - "openssl" - ], - "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" - }, - "ica": { - "Package": "ica", - "Version": "1.0-3", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "d9b52ced14e24a0e69e228c20eb5eb27" - }, - "ids": { - "Package": "ids", - "Version": "1.0.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "openssl", - "uuid" - ], - "Hash": "99df65cfef20e525ed38c3d2577f7190" - }, - "igraph": { - "Package": "igraph", - "Version": "2.0.3", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "cli", - "cpp11", - "grDevices", - "graphics", - "lifecycle", - "magrittr", - "methods", - "pkgconfig", - "rlang", - "stats", - "utils", - "vctrs" - ], - "Hash": "c3b7d801d722e26e4cd888e042bf9af5" - }, - "irlba": { - "Package": "irlba", - "Version": "2.3.5.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "methods", - "stats" - ], - "Hash": "acb06a47b732c6251afd16e19c3201ff" - }, - "isoband": { - "Package": "isoband", - "Version": "0.2.7", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "grid", - "utils" - ], - "Hash": "0080607b4a1a7b28979aecef976d8bc2" - }, - "jquerylib": { - "Package": "jquerylib", - "Version": "0.1.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "htmltools" - ], - "Hash": "5aab57a3bd297eee1c1d862735972182" - }, - "jsonlite": { - "Package": "jsonlite", - "Version": "1.8.8", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "methods" - ], - "Hash": "e1b9c55281c5adc4dd113652d9e26768" - }, - "knitr": { - "Package": "knitr", - "Version": "1.48", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "evaluate", - "highr", - "methods", - "tools", - "xfun", - "yaml" - ], - "Hash": "acf380f300c721da9fde7df115a5f86f" - }, - "labeling": { - "Package": "labeling", - "Version": "0.4.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "graphics", - "stats" - ], - "Hash": "b64ec208ac5bc1852b285f665d6368b3" - }, - "lambda.r": { - "Package": "lambda.r", - "Version": "1.2.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "formatR" - ], - "Hash": "b1e925c4b9ffeb901bacf812cbe9a6ad" - }, - "later": { - "Package": "later", - "Version": "1.3.2", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "Rcpp", - "rlang" - ], - "Hash": "a3e051d405326b8b0012377434c62b37" - }, - "lattice": { - "Package": "lattice", - "Version": "0.22-6", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "grid", - "stats", - "utils" - ], - "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" - }, - "lazyeval": { - "Package": "lazyeval", - "Version": "0.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "d908914ae53b04d4c0c0fd72ecc35370" - }, - "leiden": { - "Package": "leiden", - "Version": "0.4.3.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "igraph", - "methods", - "reticulate" - ], - "Hash": "b21c4ae2bb7935504c42bcdf749c04e6" - }, - "lifecycle": { - "Package": "lifecycle", - "Version": "1.0.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "glue", - "rlang" - ], - "Hash": "b8552d117e1b808b09a832f589b79035" - }, - "limma": { - "Package": "limma", - "Version": "3.60.4", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.19", - "Requirements": [ - "R", - "grDevices", - "graphics", - "methods", - "statmod", - "stats", - "utils" - ], - "Hash": "b75950d7143715041064b21f3120f19e" - }, - "listenv": { - "Package": "listenv", - "Version": "0.9.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" - }, - "lmtest": { - "Package": "lmtest", - "Version": "0.9-40", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "graphics", - "stats", - "zoo" - ], - "Hash": "c6fafa6cccb1e1dfe7f7d122efd6e6a7" - }, - "locfit": { - "Package": "locfit", - "Version": "1.5-9.10", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "lattice" - ], - "Hash": "7d8e0ac914051ca0254332387d9b5816" - }, - "magrittr": { - "Package": "magrittr", - "Version": "2.0.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "7ce2733a9826b3aeb1775d56fd305472" - }, - "matrixStats": { - "Package": "matrixStats", - "Version": "1.3.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "4b3ea27a19d669c0405b38134d89a9d1" - }, - "memoise": { - "Package": "memoise", - "Version": "2.0.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "cachem", - "rlang" - ], - "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" - }, - "mgcv": { - "Package": "mgcv", - "Version": "1.9-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "graphics", - "methods", - "nlme", - "splines", - "stats", - "utils" - ], - "Hash": "110ee9d83b496279960e162ac97764ce" - }, - "mime": { - "Package": "mime", - "Version": "0.12", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "tools" - ], - "Hash": "18e9c28c1d3ca1560ce30658b22ce104" - }, - "miniUI": { - "Package": "miniUI", - "Version": "0.1.1.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "htmltools", - "shiny", - "utils" - ], - "Hash": "fec5f52652d60615fdb3957b3d74324a" - }, - "munsell": { - "Package": "munsell", - "Version": "0.5.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "colorspace", - "methods" - ], - "Hash": "4fd8900853b746af55b81fda99da7695" - }, - "nlme": { - "Package": "nlme", - "Version": "3.1-165", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "graphics", - "lattice", - "stats", - "utils" - ], - "Hash": "2769a88be217841b1f33ed469675c3cc" - }, - "openssl": { - "Package": "openssl", - "Version": "2.2.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "askpass" - ], - "Hash": "2bcca3848e4734eb3b16103bc9aa4b8e" - }, - "parallelly": { - "Package": "parallelly", - "Version": "1.38.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "parallel", - "tools", - "utils" - ], - "Hash": "6e8b139c1904f5e9e14c69db64453bbe" - }, - "patchwork": { - "Package": "patchwork", - "Version": "1.2.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "cli", - "ggplot2", - "grDevices", - "graphics", - "grid", - "gtable", - "rlang", - "stats", - "utils" - ], - "Hash": "9c8ab14c00ac07e9e04d1664c0b74486" - }, - "pbapply": { - "Package": "pbapply", - "Version": "1.7-2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "parallel" - ], - "Hash": "68a2d681e10cf72f0afa1d84d45380e5" - }, - "pillar": { - "Package": "pillar", - "Version": "1.9.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "cli", - "fansi", - "glue", - "lifecycle", - "rlang", - "utf8", - "utils", - "vctrs" - ], - "Hash": "15da5a8412f317beeee6175fbc76f4bb" - }, - "pkgconfig": { - "Package": "pkgconfig", - "Version": "2.0.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "utils" - ], - "Hash": "01f28d4278f15c76cddbea05899c5d6f" - }, - "plogr": { - "Package": "plogr", - "Version": "0.2.0", - "Source": "Repository", - "Repository": "RSPM", - "Hash": "09eb987710984fc2905c7129c7d85e65" - }, - "plotly": { - "Package": "plotly", - "Version": "4.10.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "RColorBrewer", - "base64enc", - "crosstalk", - "data.table", - "digest", - "dplyr", - "ggplot2", - "htmltools", - "htmlwidgets", - "httr", - "jsonlite", - "lazyeval", - "magrittr", - "promises", - "purrr", - "rlang", - "scales", - "tibble", - "tidyr", - "tools", - "vctrs", - "viridisLite" - ], - "Hash": "a1ac5c03ad5ad12b9d1597e00e23c3dd" - }, - "plyr": { - "Package": "plyr", - "Version": "1.8.9", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp" - ], - "Hash": "6b8177fd19982f0020743fadbfdbd933" - }, - "png": { - "Package": "png", - "Version": "0.1-8", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "bd54ba8a0a5faded999a7aab6e46b374" - }, - "polyclip": { - "Package": "polyclip", - "Version": "1.10-7", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "5879bf5aae702ffef0a315c44328f984" - }, - "poweRlaw": { - "Package": "poweRlaw", - "Version": "0.80.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "methods", - "parallel", - "pracma", - "stats", - "utils" - ], - "Hash": "5426de2f982c69863ea338e5df80b9ef" - }, - "pracma": { - "Package": "pracma", - "Version": "2.4.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "stats", - "utils" - ], - "Hash": "44bc172d47d1ea0a638d9f299e321203" - }, - "presto": { - "Package": "presto", - "Version": "1.0.0", - "Source": "GitHub", - "RemoteType": "github", - "RemoteHost": "api.github.com", - "RemoteRepo": "presto", - "RemoteUsername": "immunogenomics", - "RemoteRef": "HEAD", - "RemoteSha": "7636b3d0465c468c35853f82f1717d3a64b3c8f6", - "Requirements": [ - "Matrix", - "R", - "Rcpp", - "RcppArmadillo", - "data.table", - "dplyr", - "methods", - "purrr", - "rlang", - "stats", - "tibble", - "tidyr", - "utils" - ], - "Hash": "c682f57757230a29913ad71f22aef990" - }, - "prettyunits": { - "Package": "prettyunits", - "Version": "1.2.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" - }, - "progress": { - "Package": "progress", - "Version": "1.2.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "crayon", - "hms", - "prettyunits" - ], - "Hash": "f4625e061cb2865f111b47ff163a5ca6" - }, - "progressr": { - "Package": "progressr", - "Version": "0.14.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "digest", - "utils" - ], - "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" - }, - "promises": { - "Package": "promises", - "Version": "1.3.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R6", - "Rcpp", - "fastmap", - "later", - "magrittr", - "rlang", - "stats" - ], - "Hash": "434cd5388a3979e74be5c219bcd6e77d" - }, - "purrr": { - "Package": "purrr", - "Version": "1.0.2", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "lifecycle", - "magrittr", - "rlang", - "vctrs" - ], - "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" - }, - "rappdirs": { - "Package": "rappdirs", - "Version": "0.3.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "5e3c5dc0b071b21fa128676560dbe94d" - }, - "readr": { - "Package": "readr", - "Version": "2.1.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "cli", - "clipr", - "cpp11", - "crayon", - "hms", - "lifecycle", - "methods", - "rlang", - "tibble", - "tzdb", - "utils", - "vroom" - ], - "Hash": "9de96463d2117f6ac49980577939dfb3" - }, - "rematch": { - "Package": "rematch", - "Version": "2.0.0", - "Source": "Repository", - "Repository": "RSPM", - "Hash": "cbff1b666c6fa6d21202f07e2318d4f1" - }, - "rematch2": { - "Package": "rematch2", - "Version": "2.1.2", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "tibble" - ], - "Hash": "76c9e04c712a05848ae7a23d2f170a40" - }, - "renv": { - "Package": "renv", - "Version": "1.0.7", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "utils" - ], - "Hash": "397b7b2a265bc5a7a06852524dabae20" - }, - "reshape2": { - "Package": "reshape2", - "Version": "1.4.4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "plyr", - "stringr" - ], - "Hash": "bb5996d0bd962d214a11140d77589917" - }, - "restfulr": { - "Package": "restfulr", - "Version": "0.0.15", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "RCurl", - "S4Vectors", - "XML", - "methods", - "rjson", - "yaml" - ], - "Hash": "44651c1e68eda9d462610aca9f15a815" - }, - "reticulate": { - "Package": "reticulate", - "Version": "1.38.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "Rcpp", - "RcppTOML", - "graphics", - "here", - "jsonlite", - "methods", - "png", - "rappdirs", - "rlang", - "utils", - "withr" - ], - "Hash": "8810e64cfe0240afe926617a854a38a4" - }, - "rhdf5": { - "Package": "rhdf5", - "Version": "2.46.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "R", - "Rhdf5lib", - "S4Vectors", - "methods", - "rhdf5filters" - ], - "Hash": "b0a244022c3427cd8213c33804c6b5de" - }, - "rhdf5filters": { - "Package": "rhdf5filters", - "Version": "1.14.1", - "Source": "Bioconductor", - "Requirements": [ - "Rhdf5lib" - ], - "Hash": "d27a2f6a89def6388fad5b0aae026220" - }, - "rjson": { - "Package": "rjson", - "Version": "0.2.21", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "f9da75e6444e95a1baf8ca24909d63b9" - }, - "rlang": { - "Package": "rlang", - "Version": "1.1.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "utils" - ], - "Hash": "3eec01f8b1dee337674b2e34ab1f9bc1" - }, - "rmarkdown": { - "Package": "rmarkdown", - "Version": "2.27", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "bslib", - "evaluate", - "fontawesome", - "htmltools", - "jquerylib", - "jsonlite", - "knitr", - "methods", - "tinytex", - "tools", - "utils", - "xfun", - "yaml" - ], - "Hash": "27f9502e1cdbfa195f94e03b0f517484" - }, - "rprojroot": { - "Package": "rprojroot", - "Version": "2.0.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" - }, - "rtracklayer": { - "Package": "rtracklayer", - "Version": "1.62.0", - "Source": "Bioconductor", - "Requirements": [ - "BiocGenerics", - "BiocIO", - "Biostrings", - "GenomeInfoDb", - "GenomicAlignments", - "GenomicRanges", - "IRanges", - "R", - "RCurl", - "Rsamtools", - "S4Vectors", - "XML", - "XVector", - "methods", - "restfulr", - "tools", - "zlibbioc" - ], - "Hash": "e940c622725a16a0069505876051b077" - }, - "sass": { - "Package": "sass", - "Version": "0.4.9", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R6", - "fs", - "htmltools", - "rappdirs", - "rlang" - ], - "Hash": "d53dbfddf695303ea4ad66f86e99b95d" - }, - "scales": { - "Package": "scales", - "Version": "1.3.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "R6", - "RColorBrewer", - "cli", - "farver", - "glue", - "labeling", - "lifecycle", - "munsell", - "rlang", - "viridisLite" - ], - "Hash": "c19df082ba346b0ffa6f833e92de34d1" - }, - "scattermore": { - "Package": "scattermore", - "Version": "1.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "ggplot2", - "grDevices", - "graphics", - "grid", - "scales" - ], - "Hash": "d316e4abb854dd1677f7bd3ad08bc4e8" - }, - "sctransform": { - "Package": "sctransform", - "Version": "0.4.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "MASS", - "Matrix", - "R", - "Rcpp", - "RcppArmadillo", - "dplyr", - "future", - "future.apply", - "ggplot2", - "gridExtra", - "magrittr", - "matrixStats", - "methods", - "reshape2", - "rlang" - ], - "Hash": "0242402f321be0246fb67cf8c63b3572" - }, - "seqLogo": { - "Package": "seqLogo", - "Version": "1.68.0", - "Source": "Bioconductor", - "Requirements": [ - "R", - "grDevices", - "grid", - "methods", - "stats4" - ], - "Hash": "422323877fb63ab24ae09cc429a8a4b1" - }, - "shiny": { - "Package": "shiny", - "Version": "1.9.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "R6", - "bslib", - "cachem", - "commonmark", - "crayon", - "fastmap", - "fontawesome", - "glue", - "grDevices", - "htmltools", - "httpuv", - "jsonlite", - "later", - "lifecycle", - "methods", - "mime", - "promises", - "rlang", - "sourcetools", - "tools", - "utils", - "withr", - "xtable" - ], - "Hash": "6a293995a66e12c48d13aa1f957d09c7" - }, - "shinyBS": { - "Package": "shinyBS", - "Version": "0.61.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "htmltools", - "shiny" - ], - "Hash": "e44255f073ecdc26ba6bc2ce3fcf174d" - }, - "shinydashboard": { - "Package": "shinydashboard", - "Version": "0.7.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "htmltools", - "promises", - "shiny", - "utils" - ], - "Hash": "e418b532e9bb4eb22a714b9a9f1acee7" - }, - "shinyjs": { - "Package": "shinyjs", - "Version": "2.1.0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "digest", - "jsonlite", - "shiny" - ], - "Hash": "802e4786b353a4bb27116957558548d5" - }, - "sitmo": { - "Package": "sitmo", - "Version": "2.0.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp" - ], - "Hash": "c956d93f6768a9789edbc13072b70c78" - }, - "snow": { - "Package": "snow", - "Version": "0.4-4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "utils" - ], - "Hash": "40b74690debd20c57d93d8c246b305d4" - }, - "sourcetools": { - "Package": "sourcetools", - "Version": "0.1.7-1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "5f5a7629f956619d519205ec475fe647" - }, - "sp": { - "Package": "sp", - "Version": "2.1-4", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "grid", - "lattice", - "methods", - "stats", - "utils" - ], - "Hash": "75940133cca2e339afce15a586f85b11" - }, - "spam": { - "Package": "spam", - "Version": "2.10-0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "Rcpp", - "dotCall64", - "grid", - "methods" - ], - "Hash": "ffe1f9e95a4375530747b268f82b5086" - }, - "sparseMatrixStats": { - "Package": "sparseMatrixStats", - "Version": "1.14.0", - "Source": "Bioconductor", - "Requirements": [ - "Matrix", - "MatrixGenerics", - "Rcpp", - "matrixStats", - "methods" - ], - "Hash": "49383d0f6c6152ff7cb594f254c23cc8" - }, - "spatstat.data": { - "Package": "spatstat.data", - "Version": "3.1-2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "spatstat.utils" - ], - "Hash": "69781a4d1dd8d1575d24b8b133e1e09f" - }, - "spatstat.explore": { - "Package": "spatstat.explore", - "Version": "3.3-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "abind", - "goftest", - "grDevices", - "graphics", - "methods", - "nlme", - "spatstat.data", - "spatstat.geom", - "spatstat.random", - "spatstat.sparse", - "spatstat.univar", - "spatstat.utils", - "stats", - "utils" - ], - "Hash": "f067b8be947762544fccff7b7e8a1d09" - }, - "spatstat.geom": { - "Package": "spatstat.geom", - "Version": "3.3-2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "deldir", - "grDevices", - "graphics", - "methods", - "polyclip", - "spatstat.data", - "spatstat.univar", - "spatstat.utils", - "stats", - "utils" - ], - "Hash": "9e8f1f54eb492b1af425b1206220a278" - }, - "spatstat.random": { - "Package": "spatstat.random", - "Version": "3.3-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "methods", - "spatstat.data", - "spatstat.geom", - "spatstat.univar", - "spatstat.utils", - "stats", - "utils" - ], - "Hash": "73b89da6fe26aa529564a8dbb5ebbc8a" - }, - "spatstat.sparse": { - "Package": "spatstat.sparse", - "Version": "3.1-0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "Matrix", - "R", - "abind", - "methods", - "spatstat.utils", - "stats", - "tensor", - "utils" - ], - "Hash": "3a0f41a2a77847f2bc1a909160cace56" - }, - "spatstat.univar": { - "Package": "spatstat.univar", - "Version": "3.0-0", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "spatstat.utils", - "stats" - ], - "Hash": "1af5f385ec0df813c9d1bff8859b1056" - }, - "spatstat.utils": { - "Package": "spatstat.utils", - "Version": "3.0-5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "methods", - "stats", - "utils" - ], - "Hash": "b7af29c1a4e649734ac1d9b423d762c9" - }, - "statmod": { - "Package": "statmod", - "Version": "1.5.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "graphics", - "stats" - ], - "Hash": "26e158d12052c279bdd4ba858b80fb1f" - }, - "stringi": { - "Package": "stringi", - "Version": "1.8.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "stats", - "tools", - "utils" - ], - "Hash": "39e1144fd75428983dc3f63aa53dfa91" - }, - "stringr": { - "Package": "stringr", - "Version": "1.5.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "glue", - "lifecycle", - "magrittr", - "rlang", - "stringi", - "vctrs" - ], - "Hash": "960e2ae9e09656611e0b8214ad543207" - }, - "survival": { - "Package": "survival", - "Version": "3.7-0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "Matrix", - "R", - "graphics", - "methods", - "splines", - "stats", - "utils" - ], - "Hash": "5aaa9cbaf4aba20f8e06fdea1850a398" - }, - "sys": { - "Package": "sys", - "Version": "3.4.2", - "Source": "Repository", - "Repository": "RSPM", - "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" - }, - "tensor": { - "Package": "tensor", - "Version": "1.5", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "25cfab6cf405c15bccf7e69ec39df090" - }, - "tibble": { - "Package": "tibble", - "Version": "3.2.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "fansi", - "lifecycle", - "magrittr", - "methods", - "pillar", - "pkgconfig", - "rlang", - "utils", - "vctrs" - ], - "Hash": "a84e2cc86d07289b3b6f5069df7a004c" - }, - "tidyr": { - "Package": "tidyr", - "Version": "1.3.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "cpp11", - "dplyr", - "glue", - "lifecycle", - "magrittr", - "purrr", - "rlang", - "stringr", - "tibble", - "tidyselect", - "utils", - "vctrs" - ], - "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" - }, - "tidyselect": { - "Package": "tidyselect", - "Version": "1.2.1", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "glue", - "lifecycle", - "rlang", - "vctrs", - "withr" - ], - "Hash": "829f27b9c4919c16b593794a6344d6c0" - }, - "tinytex": { - "Package": "tinytex", - "Version": "0.52", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "xfun" - ], - "Hash": "cfbad971a71f0e27cec22e544a08bc3b" - }, - "tzdb": { - "Package": "tzdb", - "Version": "0.4.0", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cpp11" - ], - "Hash": "f561504ec2897f4d46f0c7657e488ae1" - }, - "utf8": { - "Package": "utf8", - "Version": "1.2.4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "62b65c52671e6665f803ff02954446e9" - }, - "uuid": { - "Package": "uuid", - "Version": "1.2-1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R" - ], - "Hash": "34e965e62a41fcafb1ca60e9b142085b" - }, - "uwot": { - "Package": "uwot", - "Version": "0.2.2", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "FNN", - "Matrix", - "RSpectra", - "Rcpp", - "RcppAnnoy", - "RcppProgress", - "dqrng", - "irlba", - "methods" - ], - "Hash": "f693a0ca6d34b02eb432326388021805" - }, - "vctrs": { - "Package": "vctrs", - "Version": "0.6.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "glue", - "lifecycle", - "rlang" - ], - "Hash": "c03fa420630029418f7e6da3667aac4a" - }, - "viridis": { - "Package": "viridis", - "Version": "0.6.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "ggplot2", - "gridExtra", - "viridisLite" - ], - "Hash": "acd96d9fa70adeea4a5a1150609b9745" - }, - "viridisLite": { - "Package": "viridisLite", - "Version": "0.4.2", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" - }, - "vroom": { - "Package": "vroom", - "Version": "1.6.5", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "bit64", - "cli", - "cpp11", - "crayon", - "glue", - "hms", - "lifecycle", - "methods", - "progress", - "rlang", - "stats", - "tibble", - "tidyselect", - "tzdb", - "vctrs", - "withr" - ], - "Hash": "390f9315bc0025be03012054103d227c" - }, - "withr": { - "Package": "withr", - "Version": "3.0.1", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics" - ], - "Hash": "07909200e8bbe90426fbfeb73e1e27aa" - }, - "xfun": { - "Package": "xfun", - "Version": "0.46", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "grDevices", - "stats", - "tools" - ], - "Hash": "00ce32f398db0415dde61abfef11300c" - }, - "xml2": { - "Package": "xml2", - "Version": "1.3.6", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "cli", - "methods", - "rlang" - ], - "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" - }, - "xtable": { - "Package": "xtable", - "Version": "1.8-4", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R", - "stats", - "utils" - ], - "Hash": "b8acdf8af494d9ec19ccb2481a9b11c2" - }, - "yaml": { - "Package": "yaml", - "Version": "2.3.10", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "51dab85c6c98e50a18d7551e9d49f76c" - }, - "yulab.utils": { - "Package": "yulab.utils", - "Version": "0.1.5", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "cli", - "digest", - "fs", - "memoise", - "rlang", - "stats", - "tools", - "utils" - ], - "Hash": "a48f7cc93890f8285c5ab9476197163e" - }, - "zlibbioc": { - "Package": "zlibbioc", - "Version": "1.48.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Hash": "2344be62c2da4d9e9942b5d8db346e59" - }, - "zoo": { - "Package": "zoo", - "Version": "1.8-12", - "Source": "Repository", - "Repository": "CRAN", - "Requirements": [ - "R", - "grDevices", - "graphics", - "lattice", - "stats", - "utils" - ], - "Hash": "5c715954112b45499fb1dadc6ee6ee3e" - } - } -} From 6862fcc3e03619db0cccb770ef7d352d2aea8b37 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 11:57:38 -0400 Subject: [PATCH 27/47] Base image with RStudio that's compatible with ARM + renv --- analyses/cell-type-wilms-tumor-06/Dockerfile | 39 ++++++++++++-------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/Dockerfile b/analyses/cell-type-wilms-tumor-06/Dockerfile index 819287093..9d693a093 100644 --- a/analyses/cell-type-wilms-tumor-06/Dockerfile +++ b/analyses/cell-type-wilms-tumor-06/Dockerfile @@ -1,19 +1,28 @@ -# pull base image -FROM bioconductor/tidyverse:3.19 +# Pull base image +# This image has RStudio Server on it +FROM bioconductor/bioconductor_docker:3.19 -# Set global R options -RUN echo "options(repos = 'https://cloud.r-project.org')" > $(R --no-echo --no-save -e "cat(Sys.getenv('R_HOME'))")/etc/Rprofile.site -ENV RETICULATE_MINICONDA_ENABLED=FALSE +# Labels following the Open Containers Initiative (OCI) recommendations +# For more information, see https://specs.opencontainers.org/image-spec/annotations/?v=v1.0.1 +LABEL org.opencontainers.image.title="openscpca/cell-type-wilms-tumor-06" +LABEL org.opencontainers.image.description="Docker image for the OpenScPCA analysis module 'cell-type-wilms-tumor-06'" +LABEL org.opencontainers.image.authors="OpenScPCA scpca@ccdatalab.org" +LABEL org.opencontainers.image.source="https://github.com/AlexsLemonade/OpenScPCA-analysis/tree/main/analyses/cell-type-wilms-tumor-06" -RUN R --no-echo --no-restore --no-save -e "install.packages('remotes')" +# Set an environment variable to allow checking if we are in an OpenScPCA container +ENV OPENSCPCA_DOCKER=TRUE -RUN R -e "devtools::install_github('enblacar/SCpubr')" -RUN R -e "remotes::install_github('satijalab/seurat', 'seurat5', quiet = TRUE)" # this also install patchwork (and others) -RUN R -e "remotes::install_github('satijalab/azimuth', quiet = TRUE)" # this also install SingleCellExperiment, DT (and others) -RUN R -e "remotes::install_github('cancerbits/DElegate')" -RUN R -e "install.packages('viridis')" -RUN R -e "install.packages('ggplotify')" -RUN R -e "BiocManager::install('edgeR')" +# Disable the renv cache to install packages directly into the R library +ENV RENV_CONFIG_CACHE_ENABLED=FALSE -# make sure all R related binaries are in PATH in case we want to call them directly -ENV PATH ${R_HOME}/bin:$PATH +# Install renv +RUN R --no-echo --no-restore --no-save -e "install.packages('renv')" + +# # Copy the renv.lock file from the host environment to the image +# COPY renv.lock renv.lock + +# # restore from renv.lock file and clean up to reduce image size +# RUN Rscript -e 'renv::restore()' && \ +# rm -rf ~/.cache/R/renv && \ +# rm -rf /tmp/downloaded_packages && \ +# rm -rf /tmp/Rtmp* \ No newline at end of file From 83a6fe531dc0f9be09ab8f75ae4f96e5f2c029ce Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 11:59:46 -0400 Subject: [PATCH 28/47] Commit output from renv::init() --- analyses/cell-type-wilms-tumor-06/.Rprofile | 4 + analyses/cell-type-wilms-tumor-06/renv.lock | 23 + .../cell-type-wilms-tumor-06/renv/.gitignore | 7 + .../cell-type-wilms-tumor-06/renv/activate.R | 1220 +++++++++++++++++ .../renv/settings.json | 19 + 5 files changed, 1273 insertions(+) create mode 100644 analyses/cell-type-wilms-tumor-06/.Rprofile create mode 100644 analyses/cell-type-wilms-tumor-06/renv.lock create mode 100644 analyses/cell-type-wilms-tumor-06/renv/.gitignore create mode 100644 analyses/cell-type-wilms-tumor-06/renv/activate.R create mode 100644 analyses/cell-type-wilms-tumor-06/renv/settings.json diff --git a/analyses/cell-type-wilms-tumor-06/.Rprofile b/analyses/cell-type-wilms-tumor-06/.Rprofile new file mode 100644 index 000000000..45301dbc7 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/.Rprofile @@ -0,0 +1,4 @@ +# Don't activate renv in an OpenScPCA docker image +if(Sys.getenv('OPENSCPCA_DOCKER') != 'TRUE'){ + source('renv/activate.R') +} diff --git a/analyses/cell-type-wilms-tumor-06/renv.lock b/analyses/cell-type-wilms-tumor-06/renv.lock new file mode 100644 index 000000000..e9239aaf7 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/renv.lock @@ -0,0 +1,23 @@ +{ + "R": { + "Version": "4.4.1", + "Repositories": [ + { + "Name": "CRAN", + "URL": "https://p3m.dev/cran/latest" + } + ] + }, + "Packages": { + "renv": { + "Package": "renv", + "Version": "1.0.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "utils" + ], + "Hash": "397b7b2a265bc5a7a06852524dabae20" + } + } +} diff --git a/analyses/cell-type-wilms-tumor-06/renv/.gitignore b/analyses/cell-type-wilms-tumor-06/renv/.gitignore new file mode 100644 index 000000000..0ec0cbba2 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/renv/.gitignore @@ -0,0 +1,7 @@ +library/ +local/ +cellar/ +lock/ +python/ +sandbox/ +staging/ diff --git a/analyses/cell-type-wilms-tumor-06/renv/activate.R b/analyses/cell-type-wilms-tumor-06/renv/activate.R new file mode 100644 index 000000000..d13f9932a --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/renv/activate.R @@ -0,0 +1,1220 @@ + +local({ + + # the requested version of renv + version <- "1.0.7" + attr(version, "sha") <- NULL + + # the project directory + project <- Sys.getenv("RENV_PROJECT") + if (!nzchar(project)) + project <- getwd() + + # use start-up diagnostics if enabled + diagnostics <- Sys.getenv("RENV_STARTUP_DIAGNOSTICS", unset = "FALSE") + if (diagnostics) { + start <- Sys.time() + profile <- tempfile("renv-startup-", fileext = ".Rprof") + utils::Rprof(profile) + on.exit({ + utils::Rprof(NULL) + elapsed <- signif(difftime(Sys.time(), start, units = "auto"), digits = 2L) + writeLines(sprintf("- renv took %s to run the autoloader.", format(elapsed))) + writeLines(sprintf("- Profile: %s", profile)) + print(utils::summaryRprof(profile)) + }, add = TRUE) + } + + # figure out whether the autoloader is enabled + enabled <- local({ + + # first, check config option + override <- getOption("renv.config.autoloader.enabled") + if (!is.null(override)) + return(override) + + # if we're being run in a context where R_LIBS is already set, + # don't load -- presumably we're being run as a sub-process and + # the parent process has already set up library paths for us + rcmd <- Sys.getenv("R_CMD", unset = NA) + rlibs <- Sys.getenv("R_LIBS", unset = NA) + if (!is.na(rlibs) && !is.na(rcmd)) + return(FALSE) + + # next, check environment variables + # TODO: prefer using the configuration one in the future + envvars <- c( + "RENV_CONFIG_AUTOLOADER_ENABLED", + "RENV_AUTOLOADER_ENABLED", + "RENV_ACTIVATE_PROJECT" + ) + + for (envvar in envvars) { + envval <- Sys.getenv(envvar, unset = NA) + if (!is.na(envval)) + return(tolower(envval) %in% c("true", "t", "1")) + } + + # enable by default + TRUE + + }) + + # bail if we're not enabled + if (!enabled) { + + # if we're not enabled, we might still need to manually load + # the user profile here + profile <- Sys.getenv("R_PROFILE_USER", unset = "~/.Rprofile") + if (file.exists(profile)) { + cfg <- Sys.getenv("RENV_CONFIG_USER_PROFILE", unset = "TRUE") + if (tolower(cfg) %in% c("true", "t", "1")) + sys.source(profile, envir = globalenv()) + } + + return(FALSE) + + } + + # avoid recursion + if (identical(getOption("renv.autoloader.running"), TRUE)) { + warning("ignoring recursive attempt to run renv autoloader") + return(invisible(TRUE)) + } + + # signal that we're loading renv during R startup + options(renv.autoloader.running = TRUE) + on.exit(options(renv.autoloader.running = NULL), add = TRUE) + + # signal that we've consented to use renv + options(renv.consent = TRUE) + + # load the 'utils' package eagerly -- this ensures that renv shims, which + # mask 'utils' packages, will come first on the search path + library(utils, lib.loc = .Library) + + # unload renv if it's already been loaded + if ("renv" %in% loadedNamespaces()) + unloadNamespace("renv") + + # load bootstrap tools + `%||%` <- function(x, y) { + if (is.null(x)) y else x + } + + catf <- function(fmt, ..., appendLF = TRUE) { + + quiet <- getOption("renv.bootstrap.quiet", default = FALSE) + if (quiet) + return(invisible()) + + msg <- sprintf(fmt, ...) + cat(msg, file = stdout(), sep = if (appendLF) "\n" else "") + + invisible(msg) + + } + + header <- function(label, + ..., + prefix = "#", + suffix = "-", + n = min(getOption("width"), 78)) + { + label <- sprintf(label, ...) + n <- max(n - nchar(label) - nchar(prefix) - 2L, 8L) + if (n <= 0) + return(paste(prefix, label)) + + tail <- paste(rep.int(suffix, n), collapse = "") + paste0(prefix, " ", label, " ", tail) + + } + + heredoc <- function(text, leave = 0) { + + # remove leading, trailing whitespace + trimmed <- gsub("^\\s*\\n|\\n\\s*$", "", text) + + # split into lines + lines <- strsplit(trimmed, "\n", fixed = TRUE)[[1L]] + + # compute common indent + indent <- regexpr("[^[:space:]]", lines) + common <- min(setdiff(indent, -1L)) - leave + paste(substring(lines, common), collapse = "\n") + + } + + startswith <- function(string, prefix) { + substring(string, 1, nchar(prefix)) == prefix + } + + bootstrap <- function(version, library) { + + friendly <- renv_bootstrap_version_friendly(version) + section <- header(sprintf("Bootstrapping renv %s", friendly)) + catf(section) + + # attempt to download renv + catf("- Downloading renv ... ", appendLF = FALSE) + withCallingHandlers( + tarball <- renv_bootstrap_download(version), + error = function(err) { + catf("FAILED") + stop("failed to download:\n", conditionMessage(err)) + } + ) + catf("OK") + on.exit(unlink(tarball), add = TRUE) + + # now attempt to install + catf("- Installing renv ... ", appendLF = FALSE) + withCallingHandlers( + status <- renv_bootstrap_install(version, tarball, library), + error = function(err) { + catf("FAILED") + stop("failed to install:\n", conditionMessage(err)) + } + ) + catf("OK") + + # add empty line to break up bootstrapping from normal output + catf("") + + return(invisible()) + } + + renv_bootstrap_tests_running <- function() { + getOption("renv.tests.running", default = FALSE) + } + + renv_bootstrap_repos <- function() { + + # get CRAN repository + cran <- getOption("renv.repos.cran", "https://cloud.r-project.org") + + # check for repos override + repos <- Sys.getenv("RENV_CONFIG_REPOS_OVERRIDE", unset = NA) + if (!is.na(repos)) { + + # check for RSPM; if set, use a fallback repository for renv + rspm <- Sys.getenv("RSPM", unset = NA) + if (identical(rspm, repos)) + repos <- c(RSPM = rspm, CRAN = cran) + + return(repos) + + } + + # check for lockfile repositories + repos <- tryCatch(renv_bootstrap_repos_lockfile(), error = identity) + if (!inherits(repos, "error") && length(repos)) + return(repos) + + # retrieve current repos + repos <- getOption("repos") + + # ensure @CRAN@ entries are resolved + repos[repos == "@CRAN@"] <- cran + + # add in renv.bootstrap.repos if set + default <- c(FALLBACK = "https://cloud.r-project.org") + extra <- getOption("renv.bootstrap.repos", default = default) + repos <- c(repos, extra) + + # remove duplicates that might've snuck in + dupes <- duplicated(repos) | duplicated(names(repos)) + repos[!dupes] + + } + + renv_bootstrap_repos_lockfile <- function() { + + lockpath <- Sys.getenv("RENV_PATHS_LOCKFILE", unset = "renv.lock") + if (!file.exists(lockpath)) + return(NULL) + + lockfile <- tryCatch(renv_json_read(lockpath), error = identity) + if (inherits(lockfile, "error")) { + warning(lockfile) + return(NULL) + } + + repos <- lockfile$R$Repositories + if (length(repos) == 0) + return(NULL) + + keys <- vapply(repos, `[[`, "Name", FUN.VALUE = character(1)) + vals <- vapply(repos, `[[`, "URL", FUN.VALUE = character(1)) + names(vals) <- keys + + return(vals) + + } + + renv_bootstrap_download <- function(version) { + + sha <- attr(version, "sha", exact = TRUE) + + methods <- if (!is.null(sha)) { + + # attempting to bootstrap a development version of renv + c( + function() renv_bootstrap_download_tarball(sha), + function() renv_bootstrap_download_github(sha) + ) + + } else { + + # attempting to bootstrap a release version of renv + c( + function() renv_bootstrap_download_tarball(version), + function() renv_bootstrap_download_cran_latest(version), + function() renv_bootstrap_download_cran_archive(version) + ) + + } + + for (method in methods) { + path <- tryCatch(method(), error = identity) + if (is.character(path) && file.exists(path)) + return(path) + } + + stop("All download methods failed") + + } + + renv_bootstrap_download_impl <- function(url, destfile) { + + mode <- "wb" + + # https://bugs.r-project.org/bugzilla/show_bug.cgi?id=17715 + fixup <- + Sys.info()[["sysname"]] == "Windows" && + substring(url, 1L, 5L) == "file:" + + if (fixup) + mode <- "w+b" + + args <- list( + url = url, + destfile = destfile, + mode = mode, + quiet = TRUE + ) + + if ("headers" %in% names(formals(utils::download.file))) + args$headers <- renv_bootstrap_download_custom_headers(url) + + do.call(utils::download.file, args) + + } + + renv_bootstrap_download_custom_headers <- function(url) { + + headers <- getOption("renv.download.headers") + if (is.null(headers)) + return(character()) + + if (!is.function(headers)) + stopf("'renv.download.headers' is not a function") + + headers <- headers(url) + if (length(headers) == 0L) + return(character()) + + if (is.list(headers)) + headers <- unlist(headers, recursive = FALSE, use.names = TRUE) + + ok <- + is.character(headers) && + is.character(names(headers)) && + all(nzchar(names(headers))) + + if (!ok) + stop("invocation of 'renv.download.headers' did not return a named character vector") + + headers + + } + + renv_bootstrap_download_cran_latest <- function(version) { + + spec <- renv_bootstrap_download_cran_latest_find(version) + type <- spec$type + repos <- spec$repos + + baseurl <- utils::contrib.url(repos = repos, type = type) + ext <- if (identical(type, "source")) + ".tar.gz" + else if (Sys.info()[["sysname"]] == "Windows") + ".zip" + else + ".tgz" + name <- sprintf("renv_%s%s", version, ext) + url <- paste(baseurl, name, sep = "/") + + destfile <- file.path(tempdir(), name) + status <- tryCatch( + renv_bootstrap_download_impl(url, destfile), + condition = identity + ) + + if (inherits(status, "condition")) + return(FALSE) + + # report success and return + destfile + + } + + renv_bootstrap_download_cran_latest_find <- function(version) { + + # check whether binaries are supported on this system + binary <- + getOption("renv.bootstrap.binary", default = TRUE) && + !identical(.Platform$pkgType, "source") && + !identical(getOption("pkgType"), "source") && + Sys.info()[["sysname"]] %in% c("Darwin", "Windows") + + types <- c(if (binary) "binary", "source") + + # iterate over types + repositories + for (type in types) { + for (repos in renv_bootstrap_repos()) { + + # retrieve package database + db <- tryCatch( + as.data.frame( + utils::available.packages(type = type, repos = repos), + stringsAsFactors = FALSE + ), + error = identity + ) + + if (inherits(db, "error")) + next + + # check for compatible entry + entry <- db[db$Package %in% "renv" & db$Version %in% version, ] + if (nrow(entry) == 0) + next + + # found it; return spec to caller + spec <- list(entry = entry, type = type, repos = repos) + return(spec) + + } + } + + # if we got here, we failed to find renv + fmt <- "renv %s is not available from your declared package repositories" + stop(sprintf(fmt, version)) + + } + + renv_bootstrap_download_cran_archive <- function(version) { + + name <- sprintf("renv_%s.tar.gz", version) + repos <- renv_bootstrap_repos() + urls <- file.path(repos, "src/contrib/Archive/renv", name) + destfile <- file.path(tempdir(), name) + + for (url in urls) { + + status <- tryCatch( + renv_bootstrap_download_impl(url, destfile), + condition = identity + ) + + if (identical(status, 0L)) + return(destfile) + + } + + return(FALSE) + + } + + renv_bootstrap_download_tarball <- function(version) { + + # if the user has provided the path to a tarball via + # an environment variable, then use it + tarball <- Sys.getenv("RENV_BOOTSTRAP_TARBALL", unset = NA) + if (is.na(tarball)) + return() + + # allow directories + if (dir.exists(tarball)) { + name <- sprintf("renv_%s.tar.gz", version) + tarball <- file.path(tarball, name) + } + + # bail if it doesn't exist + if (!file.exists(tarball)) { + + # let the user know we weren't able to honour their request + fmt <- "- RENV_BOOTSTRAP_TARBALL is set (%s) but does not exist." + msg <- sprintf(fmt, tarball) + warning(msg) + + # bail + return() + + } + + catf("- Using local tarball '%s'.", tarball) + tarball + + } + + renv_bootstrap_download_github <- function(version) { + + enabled <- Sys.getenv("RENV_BOOTSTRAP_FROM_GITHUB", unset = "TRUE") + if (!identical(enabled, "TRUE")) + return(FALSE) + + # prepare download options + pat <- Sys.getenv("GITHUB_PAT") + if (nzchar(Sys.which("curl")) && nzchar(pat)) { + fmt <- "--location --fail --header \"Authorization: token %s\"" + extra <- sprintf(fmt, pat) + saved <- options("download.file.method", "download.file.extra") + options(download.file.method = "curl", download.file.extra = extra) + on.exit(do.call(base::options, saved), add = TRUE) + } else if (nzchar(Sys.which("wget")) && nzchar(pat)) { + fmt <- "--header=\"Authorization: token %s\"" + extra <- sprintf(fmt, pat) + saved <- options("download.file.method", "download.file.extra") + options(download.file.method = "wget", download.file.extra = extra) + on.exit(do.call(base::options, saved), add = TRUE) + } + + url <- file.path("https://api.github.com/repos/rstudio/renv/tarball", version) + name <- sprintf("renv_%s.tar.gz", version) + destfile <- file.path(tempdir(), name) + + status <- tryCatch( + renv_bootstrap_download_impl(url, destfile), + condition = identity + ) + + if (!identical(status, 0L)) + return(FALSE) + + renv_bootstrap_download_augment(destfile) + + return(destfile) + + } + + # Add Sha to DESCRIPTION. This is stop gap until #890, after which we + # can use renv::install() to fully capture metadata. + renv_bootstrap_download_augment <- function(destfile) { + sha <- renv_bootstrap_git_extract_sha1_tar(destfile) + if (is.null(sha)) { + return() + } + + # Untar + tempdir <- tempfile("renv-github-") + on.exit(unlink(tempdir, recursive = TRUE), add = TRUE) + untar(destfile, exdir = tempdir) + pkgdir <- dir(tempdir, full.names = TRUE)[[1]] + + # Modify description + desc_path <- file.path(pkgdir, "DESCRIPTION") + desc_lines <- readLines(desc_path) + remotes_fields <- c( + "RemoteType: github", + "RemoteHost: api.github.com", + "RemoteRepo: renv", + "RemoteUsername: rstudio", + "RemotePkgRef: rstudio/renv", + paste("RemoteRef: ", sha), + paste("RemoteSha: ", sha) + ) + writeLines(c(desc_lines[desc_lines != ""], remotes_fields), con = desc_path) + + # Re-tar + local({ + old <- setwd(tempdir) + on.exit(setwd(old), add = TRUE) + + tar(destfile, compression = "gzip") + }) + invisible() + } + + # Extract the commit hash from a git archive. Git archives include the SHA1 + # hash as the comment field of the tarball pax extended header + # (see https://www.kernel.org/pub/software/scm/git/docs/git-archive.html) + # For GitHub archives this should be the first header after the default one + # (512 byte) header. + renv_bootstrap_git_extract_sha1_tar <- function(bundle) { + + # open the bundle for reading + # We use gzcon for everything because (from ?gzcon) + # > Reading from a connection which does not supply a 'gzip' magic + # > header is equivalent to reading from the original connection + conn <- gzcon(file(bundle, open = "rb", raw = TRUE)) + on.exit(close(conn)) + + # The default pax header is 512 bytes long and the first pax extended header + # with the comment should be 51 bytes long + # `52 comment=` (11 chars) + 40 byte SHA1 hash + len <- 0x200 + 0x33 + res <- rawToChar(readBin(conn, "raw", n = len)[0x201:len]) + + if (grepl("^52 comment=", res)) { + sub("52 comment=", "", res) + } else { + NULL + } + } + + renv_bootstrap_install <- function(version, tarball, library) { + + # attempt to install it into project library + dir.create(library, showWarnings = FALSE, recursive = TRUE) + output <- renv_bootstrap_install_impl(library, tarball) + + # check for successful install + status <- attr(output, "status") + if (is.null(status) || identical(status, 0L)) + return(status) + + # an error occurred; report it + header <- "installation of renv failed" + lines <- paste(rep.int("=", nchar(header)), collapse = "") + text <- paste(c(header, lines, output), collapse = "\n") + stop(text) + + } + + renv_bootstrap_install_impl <- function(library, tarball) { + + # invoke using system2 so we can capture and report output + bin <- R.home("bin") + exe <- if (Sys.info()[["sysname"]] == "Windows") "R.exe" else "R" + R <- file.path(bin, exe) + + args <- c( + "--vanilla", "CMD", "INSTALL", "--no-multiarch", + "-l", shQuote(path.expand(library)), + shQuote(path.expand(tarball)) + ) + + system2(R, args, stdout = TRUE, stderr = TRUE) + + } + + renv_bootstrap_platform_prefix <- function() { + + # construct version prefix + version <- paste(R.version$major, R.version$minor, sep = ".") + prefix <- paste("R", numeric_version(version)[1, 1:2], sep = "-") + + # include SVN revision for development versions of R + # (to avoid sharing platform-specific artefacts with released versions of R) + devel <- + identical(R.version[["status"]], "Under development (unstable)") || + identical(R.version[["nickname"]], "Unsuffered Consequences") + + if (devel) + prefix <- paste(prefix, R.version[["svn rev"]], sep = "-r") + + # build list of path components + components <- c(prefix, R.version$platform) + + # include prefix if provided by user + prefix <- renv_bootstrap_platform_prefix_impl() + if (!is.na(prefix) && nzchar(prefix)) + components <- c(prefix, components) + + # build prefix + paste(components, collapse = "/") + + } + + renv_bootstrap_platform_prefix_impl <- function() { + + # if an explicit prefix has been supplied, use it + prefix <- Sys.getenv("RENV_PATHS_PREFIX", unset = NA) + if (!is.na(prefix)) + return(prefix) + + # if the user has requested an automatic prefix, generate it + auto <- Sys.getenv("RENV_PATHS_PREFIX_AUTO", unset = NA) + if (is.na(auto) && getRversion() >= "4.4.0") + auto <- "TRUE" + + if (auto %in% c("TRUE", "True", "true", "1")) + return(renv_bootstrap_platform_prefix_auto()) + + # empty string on failure + "" + + } + + renv_bootstrap_platform_prefix_auto <- function() { + + prefix <- tryCatch(renv_bootstrap_platform_os(), error = identity) + if (inherits(prefix, "error") || prefix %in% "unknown") { + + msg <- paste( + "failed to infer current operating system", + "please file a bug report at https://github.com/rstudio/renv/issues", + sep = "; " + ) + + warning(msg) + + } + + prefix + + } + + renv_bootstrap_platform_os <- function() { + + sysinfo <- Sys.info() + sysname <- sysinfo[["sysname"]] + + # handle Windows + macOS up front + if (sysname == "Windows") + return("windows") + else if (sysname == "Darwin") + return("macos") + + # check for os-release files + for (file in c("/etc/os-release", "/usr/lib/os-release")) + if (file.exists(file)) + return(renv_bootstrap_platform_os_via_os_release(file, sysinfo)) + + # check for redhat-release files + if (file.exists("/etc/redhat-release")) + return(renv_bootstrap_platform_os_via_redhat_release()) + + "unknown" + + } + + renv_bootstrap_platform_os_via_os_release <- function(file, sysinfo) { + + # read /etc/os-release + release <- utils::read.table( + file = file, + sep = "=", + quote = c("\"", "'"), + col.names = c("Key", "Value"), + comment.char = "#", + stringsAsFactors = FALSE + ) + + vars <- as.list(release$Value) + names(vars) <- release$Key + + # get os name + os <- tolower(sysinfo[["sysname"]]) + + # read id + id <- "unknown" + for (field in c("ID", "ID_LIKE")) { + if (field %in% names(vars) && nzchar(vars[[field]])) { + id <- vars[[field]] + break + } + } + + # read version + version <- "unknown" + for (field in c("UBUNTU_CODENAME", "VERSION_CODENAME", "VERSION_ID", "BUILD_ID")) { + if (field %in% names(vars) && nzchar(vars[[field]])) { + version <- vars[[field]] + break + } + } + + # join together + paste(c(os, id, version), collapse = "-") + + } + + renv_bootstrap_platform_os_via_redhat_release <- function() { + + # read /etc/redhat-release + contents <- readLines("/etc/redhat-release", warn = FALSE) + + # infer id + id <- if (grepl("centos", contents, ignore.case = TRUE)) + "centos" + else if (grepl("redhat", contents, ignore.case = TRUE)) + "redhat" + else + "unknown" + + # try to find a version component (very hacky) + version <- "unknown" + + parts <- strsplit(contents, "[[:space:]]")[[1L]] + for (part in parts) { + + nv <- tryCatch(numeric_version(part), error = identity) + if (inherits(nv, "error")) + next + + version <- nv[1, 1] + break + + } + + paste(c("linux", id, version), collapse = "-") + + } + + renv_bootstrap_library_root_name <- function(project) { + + # use project name as-is if requested + asis <- Sys.getenv("RENV_PATHS_LIBRARY_ROOT_ASIS", unset = "FALSE") + if (asis) + return(basename(project)) + + # otherwise, disambiguate based on project's path + id <- substring(renv_bootstrap_hash_text(project), 1L, 8L) + paste(basename(project), id, sep = "-") + + } + + renv_bootstrap_library_root <- function(project) { + + prefix <- renv_bootstrap_profile_prefix() + + path <- Sys.getenv("RENV_PATHS_LIBRARY", unset = NA) + if (!is.na(path)) + return(paste(c(path, prefix), collapse = "/")) + + path <- renv_bootstrap_library_root_impl(project) + if (!is.null(path)) { + name <- renv_bootstrap_library_root_name(project) + return(paste(c(path, prefix, name), collapse = "/")) + } + + renv_bootstrap_paths_renv("library", project = project) + + } + + renv_bootstrap_library_root_impl <- function(project) { + + root <- Sys.getenv("RENV_PATHS_LIBRARY_ROOT", unset = NA) + if (!is.na(root)) + return(root) + + type <- renv_bootstrap_project_type(project) + if (identical(type, "package")) { + userdir <- renv_bootstrap_user_dir() + return(file.path(userdir, "library")) + } + + } + + renv_bootstrap_validate_version <- function(version, description = NULL) { + + # resolve description file + # + # avoid passing lib.loc to `packageDescription()` below, since R will + # use the loaded version of the package by default anyhow. note that + # this function should only be called after 'renv' is loaded + # https://github.com/rstudio/renv/issues/1625 + description <- description %||% packageDescription("renv") + + # check whether requested version 'version' matches loaded version of renv + sha <- attr(version, "sha", exact = TRUE) + valid <- if (!is.null(sha)) + renv_bootstrap_validate_version_dev(sha, description) + else + renv_bootstrap_validate_version_release(version, description) + + if (valid) + return(TRUE) + + # the loaded version of renv doesn't match the requested version; + # give the user instructions on how to proceed + dev <- identical(description[["RemoteType"]], "github") + remote <- if (dev) + paste("rstudio/renv", description[["RemoteSha"]], sep = "@") + else + paste("renv", description[["Version"]], sep = "@") + + # display both loaded version + sha if available + friendly <- renv_bootstrap_version_friendly( + version = description[["Version"]], + sha = if (dev) description[["RemoteSha"]] + ) + + fmt <- heredoc(" + renv %1$s was loaded from project library, but this project is configured to use renv %2$s. + - Use `renv::record(\"%3$s\")` to record renv %1$s in the lockfile. + - Use `renv::restore(packages = \"renv\")` to install renv %2$s into the project library. + ") + catf(fmt, friendly, renv_bootstrap_version_friendly(version), remote) + + FALSE + + } + + renv_bootstrap_validate_version_dev <- function(version, description) { + expected <- description[["RemoteSha"]] + is.character(expected) && startswith(expected, version) + } + + renv_bootstrap_validate_version_release <- function(version, description) { + expected <- description[["Version"]] + is.character(expected) && identical(expected, version) + } + + renv_bootstrap_hash_text <- function(text) { + + hashfile <- tempfile("renv-hash-") + on.exit(unlink(hashfile), add = TRUE) + + writeLines(text, con = hashfile) + tools::md5sum(hashfile) + + } + + renv_bootstrap_load <- function(project, libpath, version) { + + # try to load renv from the project library + if (!requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) + return(FALSE) + + # warn if the version of renv loaded does not match + renv_bootstrap_validate_version(version) + + # execute renv load hooks, if any + hooks <- getHook("renv::autoload") + for (hook in hooks) + if (is.function(hook)) + tryCatch(hook(), error = warnify) + + # load the project + renv::load(project) + + TRUE + + } + + renv_bootstrap_profile_load <- function(project) { + + # if RENV_PROFILE is already set, just use that + profile <- Sys.getenv("RENV_PROFILE", unset = NA) + if (!is.na(profile) && nzchar(profile)) + return(profile) + + # check for a profile file (nothing to do if it doesn't exist) + path <- renv_bootstrap_paths_renv("profile", profile = FALSE, project = project) + if (!file.exists(path)) + return(NULL) + + # read the profile, and set it if it exists + contents <- readLines(path, warn = FALSE) + if (length(contents) == 0L) + return(NULL) + + # set RENV_PROFILE + profile <- contents[[1L]] + if (!profile %in% c("", "default")) + Sys.setenv(RENV_PROFILE = profile) + + profile + + } + + renv_bootstrap_profile_prefix <- function() { + profile <- renv_bootstrap_profile_get() + if (!is.null(profile)) + return(file.path("profiles", profile, "renv")) + } + + renv_bootstrap_profile_get <- function() { + profile <- Sys.getenv("RENV_PROFILE", unset = "") + renv_bootstrap_profile_normalize(profile) + } + + renv_bootstrap_profile_set <- function(profile) { + profile <- renv_bootstrap_profile_normalize(profile) + if (is.null(profile)) + Sys.unsetenv("RENV_PROFILE") + else + Sys.setenv(RENV_PROFILE = profile) + } + + renv_bootstrap_profile_normalize <- function(profile) { + + if (is.null(profile) || profile %in% c("", "default")) + return(NULL) + + profile + + } + + renv_bootstrap_path_absolute <- function(path) { + + substr(path, 1L, 1L) %in% c("~", "/", "\\") || ( + substr(path, 1L, 1L) %in% c(letters, LETTERS) && + substr(path, 2L, 3L) %in% c(":/", ":\\") + ) + + } + + renv_bootstrap_paths_renv <- function(..., profile = TRUE, project = NULL) { + renv <- Sys.getenv("RENV_PATHS_RENV", unset = "renv") + root <- if (renv_bootstrap_path_absolute(renv)) NULL else project + prefix <- if (profile) renv_bootstrap_profile_prefix() + components <- c(root, renv, prefix, ...) + paste(components, collapse = "/") + } + + renv_bootstrap_project_type <- function(path) { + + descpath <- file.path(path, "DESCRIPTION") + if (!file.exists(descpath)) + return("unknown") + + desc <- tryCatch( + read.dcf(descpath, all = TRUE), + error = identity + ) + + if (inherits(desc, "error")) + return("unknown") + + type <- desc$Type + if (!is.null(type)) + return(tolower(type)) + + package <- desc$Package + if (!is.null(package)) + return("package") + + "unknown" + + } + + renv_bootstrap_user_dir <- function() { + dir <- renv_bootstrap_user_dir_impl() + path.expand(chartr("\\", "/", dir)) + } + + renv_bootstrap_user_dir_impl <- function() { + + # use local override if set + override <- getOption("renv.userdir.override") + if (!is.null(override)) + return(override) + + # use R_user_dir if available + tools <- asNamespace("tools") + if (is.function(tools$R_user_dir)) + return(tools$R_user_dir("renv", "cache")) + + # try using our own backfill for older versions of R + envvars <- c("R_USER_CACHE_DIR", "XDG_CACHE_HOME") + for (envvar in envvars) { + root <- Sys.getenv(envvar, unset = NA) + if (!is.na(root)) + return(file.path(root, "R/renv")) + } + + # use platform-specific default fallbacks + if (Sys.info()[["sysname"]] == "Windows") + file.path(Sys.getenv("LOCALAPPDATA"), "R/cache/R/renv") + else if (Sys.info()[["sysname"]] == "Darwin") + "~/Library/Caches/org.R-project.R/R/renv" + else + "~/.cache/R/renv" + + } + + renv_bootstrap_version_friendly <- function(version, shafmt = NULL, sha = NULL) { + sha <- sha %||% attr(version, "sha", exact = TRUE) + parts <- c(version, sprintf(shafmt %||% " [sha: %s]", substring(sha, 1L, 7L))) + paste(parts, collapse = "") + } + + renv_bootstrap_exec <- function(project, libpath, version) { + if (!renv_bootstrap_load(project, libpath, version)) + renv_bootstrap_run(version, libpath) + } + + renv_bootstrap_run <- function(version, libpath) { + + # perform bootstrap + bootstrap(version, libpath) + + # exit early if we're just testing bootstrap + if (!is.na(Sys.getenv("RENV_BOOTSTRAP_INSTALL_ONLY", unset = NA))) + return(TRUE) + + # try again to load + if (requireNamespace("renv", lib.loc = libpath, quietly = TRUE)) { + return(renv::load(project = getwd())) + } + + # failed to download or load renv; warn the user + msg <- c( + "Failed to find an renv installation: the project will not be loaded.", + "Use `renv::activate()` to re-initialize the project." + ) + + warning(paste(msg, collapse = "\n"), call. = FALSE) + + } + + renv_json_read <- function(file = NULL, text = NULL) { + + jlerr <- NULL + + # if jsonlite is loaded, use that instead + if ("jsonlite" %in% loadedNamespaces()) { + + json <- tryCatch(renv_json_read_jsonlite(file, text), error = identity) + if (!inherits(json, "error")) + return(json) + + jlerr <- json + + } + + # otherwise, fall back to the default JSON reader + json <- tryCatch(renv_json_read_default(file, text), error = identity) + if (!inherits(json, "error")) + return(json) + + # report an error + if (!is.null(jlerr)) + stop(jlerr) + else + stop(json) + + } + + renv_json_read_jsonlite <- function(file = NULL, text = NULL) { + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") + jsonlite::fromJSON(txt = text, simplifyVector = FALSE) + } + + renv_json_read_default <- function(file = NULL, text = NULL) { + + # find strings in the JSON + text <- paste(text %||% readLines(file, warn = FALSE), collapse = "\n") + pattern <- '["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]' + locs <- gregexpr(pattern, text, perl = TRUE)[[1]] + + # if any are found, replace them with placeholders + replaced <- text + strings <- character() + replacements <- character() + + if (!identical(c(locs), -1L)) { + + # get the string values + starts <- locs + ends <- locs + attr(locs, "match.length") - 1L + strings <- substring(text, starts, ends) + + # only keep those requiring escaping + strings <- grep("[[\\]{}:]", strings, perl = TRUE, value = TRUE) + + # compute replacements + replacements <- sprintf('"\032%i\032"', seq_along(strings)) + + # replace the strings + mapply(function(string, replacement) { + replaced <<- sub(string, replacement, replaced, fixed = TRUE) + }, strings, replacements) + + } + + # transform the JSON into something the R parser understands + transformed <- replaced + transformed <- gsub("{}", "`names<-`(list(), character())", transformed, fixed = TRUE) + transformed <- gsub("[[{]", "list(", transformed, perl = TRUE) + transformed <- gsub("[]}]", ")", transformed, perl = TRUE) + transformed <- gsub(":", "=", transformed, fixed = TRUE) + text <- paste(transformed, collapse = "\n") + + # parse it + json <- parse(text = text, keep.source = FALSE, srcfile = NULL)[[1L]] + + # construct map between source strings, replaced strings + map <- as.character(parse(text = strings)) + names(map) <- as.character(parse(text = replacements)) + + # convert to list + map <- as.list(map) + + # remap strings in object + remapped <- renv_json_read_remap(json, map) + + # evaluate + eval(remapped, envir = baseenv()) + + } + + renv_json_read_remap <- function(json, map) { + + # fix names + if (!is.null(names(json))) { + lhs <- match(names(json), names(map), nomatch = 0L) + rhs <- match(names(map), names(json), nomatch = 0L) + names(json)[rhs] <- map[lhs] + } + + # fix values + if (is.character(json)) + return(map[[json]] %||% json) + + # handle true, false, null + if (is.name(json)) { + text <- as.character(json) + if (text == "true") + return(TRUE) + else if (text == "false") + return(FALSE) + else if (text == "null") + return(NULL) + } + + # recurse + if (is.recursive(json)) { + for (i in seq_along(json)) { + json[i] <- list(renv_json_read_remap(json[[i]], map)) + } + } + + json + + } + + # load the renv profile, if any + renv_bootstrap_profile_load(project) + + # construct path to library root + root <- renv_bootstrap_library_root(project) + + # construct library prefix for platform + prefix <- renv_bootstrap_platform_prefix() + + # construct full libpath + libpath <- file.path(root, prefix) + + # run bootstrap code + renv_bootstrap_exec(project, libpath, version) + + invisible() + +}) diff --git a/analyses/cell-type-wilms-tumor-06/renv/settings.json b/analyses/cell-type-wilms-tumor-06/renv/settings.json new file mode 100644 index 000000000..ffdbb3200 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/renv/settings.json @@ -0,0 +1,19 @@ +{ + "bioconductor.version": null, + "external.libraries": [], + "ignored.packages": [], + "package.dependency.fields": [ + "Imports", + "Depends", + "LinkingTo" + ], + "ppm.enabled": null, + "ppm.ignored.urls": [], + "r.version": null, + "snapshot.type": "implicit", + "use.cache": true, + "vcs.ignore.cellar": true, + "vcs.ignore.library": true, + "vcs.ignore.local": true, + "vcs.manage.ignores": true +} From c4ec00a0de301f2ecf5d32d86047cc6ac55b2bfd Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 12:02:48 -0400 Subject: [PATCH 29/47] Add an empty dependencies.R file --- analyses/cell-type-wilms-tumor-06/components/dependencies.R | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 analyses/cell-type-wilms-tumor-06/components/dependencies.R diff --git a/analyses/cell-type-wilms-tumor-06/components/dependencies.R b/analyses/cell-type-wilms-tumor-06/components/dependencies.R new file mode 100644 index 000000000..e69de29bb From 4973f16e143573049d7f70056003b64646599080 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 12:03:44 -0400 Subject: [PATCH 30/47] Add tidyverse to dependencies --- analyses/cell-type-wilms-tumor-06/components/dependencies.R | 2 ++ 1 file changed, 2 insertions(+) diff --git a/analyses/cell-type-wilms-tumor-06/components/dependencies.R b/analyses/cell-type-wilms-tumor-06/components/dependencies.R index e69de29bb..89d03ae8d 100644 --- a/analyses/cell-type-wilms-tumor-06/components/dependencies.R +++ b/analyses/cell-type-wilms-tumor-06/components/dependencies.R @@ -0,0 +1,2 @@ +# Tidyverse +library(tidyverse) From 230bf62f19404a36e0dc84a19b03fbc07e61f7c6 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 12:13:28 -0400 Subject: [PATCH 31/47] Update lockfile after library(tidyverse) --- analyses/cell-type-wilms-tumor-06/renv.lock | 1481 +++++++++++++++++++ 1 file changed, 1481 insertions(+) diff --git a/analyses/cell-type-wilms-tumor-06/renv.lock b/analyses/cell-type-wilms-tumor-06/renv.lock index e9239aaf7..79d8d3916 100644 --- a/analyses/cell-type-wilms-tumor-06/renv.lock +++ b/analyses/cell-type-wilms-tumor-06/renv.lock @@ -9,6 +9,1052 @@ ] }, "Packages": { + "DBI": { + "Package": "DBI", + "Version": "1.2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "065ae649b05f1ff66bb0c793107508f5" + }, + "MASS": { + "Package": "MASS", + "Version": "7.3-61", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "0cafd6f0500e5deba33be22c46bf6055" + }, + "Matrix": { + "Package": "Matrix", + "Version": "1.7-0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "1920b2f11133b12350024297d8a4ff4a" + }, + "R6": { + "Package": "R6", + "Version": "2.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "470851b6d5d0ac559e9d01bb352b4021" + }, + "RColorBrewer": { + "Package": "RColorBrewer", + "Version": "1.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "45f0398006e83a5b10b72a90663d8d8c" + }, + "askpass": { + "Package": "askpass", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "sys" + ], + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" + }, + "backports": { + "Package": "backports", + "Version": "1.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "e1e1b9d75c37401117b636b7ae50827a" + }, + "base64enc": { + "Package": "base64enc", + "Version": "0.1-3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "543776ae6848fde2f48ff3816d0628bc" + }, + "bit": { + "Package": "bit", + "Version": "4.0.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "d242abec29412ce988848d0294b208fd" + }, + "bit64": { + "Package": "bit64", + "Version": "4.0.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bit", + "methods", + "stats", + "utils" + ], + "Hash": "9fe98599ca456d6552421db0d6772d8f" + }, + "blob": { + "Package": "blob", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods", + "rlang", + "vctrs" + ], + "Hash": "40415719b5a479b87949f3aa0aee737c" + }, + "broom": { + "Package": "broom", + "Version": "1.0.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "backports", + "dplyr", + "generics", + "glue", + "lifecycle", + "purrr", + "rlang", + "stringr", + "tibble", + "tidyr" + ], + "Hash": "a4652c36d1f8abfc3ddf4774f768c934" + }, + "bslib": { + "Package": "bslib", + "Version": "0.8.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "cachem", + "fastmap", + "grDevices", + "htmltools", + "jquerylib", + "jsonlite", + "lifecycle", + "memoise", + "mime", + "rlang", + "sass" + ], + "Hash": "b299c6741ca9746fb227debcb0f9fb6c" + }, + "cachem": { + "Package": "cachem", + "Version": "1.1.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "fastmap", + "rlang" + ], + "Hash": "cd9a672193789068eb5a2aad65a0dedf" + }, + "callr": { + "Package": "callr", + "Version": "3.7.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "processx", + "utils" + ], + "Hash": "d7e13f49c19103ece9e58ad2d83a7354" + }, + "cellranger": { + "Package": "cellranger", + "Version": "1.1.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "rematch", + "tibble" + ], + "Hash": "f61dbaec772ccd2e17705c1e872e9e7c" + }, + "cli": { + "Package": "cli", + "Version": "3.6.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "b21916dd77a27642b447374a5d30ecf3" + }, + "clipr": { + "Package": "clipr", + "Version": "0.8.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "3f038e5ac7f41d4ac41ce658c85e3042" + }, + "colorspace": { + "Package": "colorspace", + "Version": "2.1-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "d954cb1c57e8d8b756165d7ba18aa55a" + }, + "conflicted": { + "Package": "conflicted", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "memoise", + "rlang" + ], + "Hash": "bb097fccb22d156624fd07cd2894ddb6" + }, + "cpp11": { + "Package": "cpp11", + "Version": "0.4.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" + }, + "crayon": { + "Package": "crayon", + "Version": "1.5.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "methods", + "utils" + ], + "Hash": "859d96e65ef198fd43e82b9628d593ef" + }, + "curl": { + "Package": "curl", + "Version": "5.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "411ca2c03b1ce5f548345d2fc2685f7a" + }, + "data.table": { + "Package": "data.table", + "Version": "1.15.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "8ee9ac56ef633d0c7cab8b2ca87d683e" + }, + "dbplyr": { + "Package": "dbplyr", + "Version": "2.5.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "DBI", + "R", + "R6", + "blob", + "cli", + "dplyr", + "glue", + "lifecycle", + "magrittr", + "methods", + "pillar", + "purrr", + "rlang", + "tibble", + "tidyr", + "tidyselect", + "utils", + "vctrs", + "withr" + ], + "Hash": "39b2e002522bfd258039ee4e889e0fd1" + }, + "digest": { + "Package": "digest", + "Version": "0.6.36", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "fd6824ad91ede64151e93af67df6376b" + }, + "dplyr": { + "Package": "dplyr", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "cli", + "generics", + "glue", + "lifecycle", + "magrittr", + "methods", + "pillar", + "rlang", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" + }, + "dtplyr": { + "Package": "dtplyr", + "Version": "1.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "data.table", + "dplyr", + "glue", + "lifecycle", + "rlang", + "tibble", + "tidyselect", + "vctrs" + ], + "Hash": "54ed3ea01b11e81a86544faaecfef8e2" + }, + "evaluate": { + "Package": "evaluate", + "Version": "0.24.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "a1066cbc05caee9a4bf6d90f194ff4da" + }, + "fansi": { + "Package": "fansi", + "Version": "1.0.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "utils" + ], + "Hash": "962174cf2aeb5b9eea581522286a911f" + }, + "farver": { + "Package": "farver", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "680887028577f3fa2a81e410ed0d6e42" + }, + "fastmap": { + "Package": "fastmap", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "aa5e1cd11c2d15497494c5292d7ffcc8" + }, + "fontawesome": { + "Package": "fontawesome", + "Version": "0.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "htmltools", + "rlang" + ], + "Hash": "c2efdd5f0bcd1ea861c2d4e2a883a67d" + }, + "forcats": { + "Package": "forcats", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "magrittr", + "rlang", + "tibble" + ], + "Hash": "1a0a9a3d5083d0d573c4214576f1e690" + }, + "fs": { + "Package": "fs", + "Version": "1.6.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" + }, + "gargle": { + "Package": "gargle", + "Version": "1.5.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "fs", + "glue", + "httr", + "jsonlite", + "lifecycle", + "openssl", + "rappdirs", + "rlang", + "stats", + "utils", + "withr" + ], + "Hash": "fc0b272e5847c58cd5da9b20eedbd026" + }, + "generics": { + "Package": "generics", + "Version": "0.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "15e9634c0fcd294799e9b2e929ed1b86" + }, + "ggplot2": { + "Package": "ggplot2", + "Version": "3.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "MASS", + "R", + "cli", + "glue", + "grDevices", + "grid", + "gtable", + "isoband", + "lifecycle", + "mgcv", + "rlang", + "scales", + "stats", + "tibble", + "vctrs", + "withr" + ], + "Hash": "44c6a2f8202d5b7e878ea274b1092426" + }, + "glue": { + "Package": "glue", + "Version": "1.7.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "methods" + ], + "Hash": "e0b3a53876554bd45879e596cdb10a52" + }, + "googledrive": { + "Package": "googledrive", + "Version": "2.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "gargle", + "glue", + "httr", + "jsonlite", + "lifecycle", + "magrittr", + "pillar", + "purrr", + "rlang", + "tibble", + "utils", + "uuid", + "vctrs", + "withr" + ], + "Hash": "e99641edef03e2a5e87f0a0b1fcc97f4" + }, + "googlesheets4": { + "Package": "googlesheets4", + "Version": "1.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cellranger", + "cli", + "curl", + "gargle", + "glue", + "googledrive", + "httr", + "ids", + "lifecycle", + "magrittr", + "methods", + "purrr", + "rematch2", + "rlang", + "tibble", + "utils", + "vctrs", + "withr" + ], + "Hash": "d6db1667059d027da730decdc214b959" + }, + "gtable": { + "Package": "gtable", + "Version": "0.3.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "grid", + "lifecycle", + "rlang" + ], + "Hash": "e18861963cbc65a27736e02b3cd3c4a0" + }, + "haven": { + "Package": "haven", + "Version": "2.5.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "cpp11", + "forcats", + "hms", + "lifecycle", + "methods", + "readr", + "rlang", + "tibble", + "tidyselect", + "vctrs" + ], + "Hash": "9171f898db9d9c4c1b2c745adc2c1ef1" + }, + "highr": { + "Package": "highr", + "Version": "0.11", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "xfun" + ], + "Hash": "d65ba49117ca223614f71b60d85b8ab7" + }, + "hms": { + "Package": "hms", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "lifecycle", + "methods", + "pkgconfig", + "rlang", + "vctrs" + ], + "Hash": "b59377caa7ed00fa41808342002138f9" + }, + "htmltools": { + "Package": "htmltools", + "Version": "0.5.8.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "digest", + "fastmap", + "grDevices", + "rlang", + "utils" + ], + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + }, + "httr": { + "Package": "httr", + "Version": "1.4.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "curl", + "jsonlite", + "mime", + "openssl" + ], + "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" + }, + "ids": { + "Package": "ids", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "openssl", + "uuid" + ], + "Hash": "99df65cfef20e525ed38c3d2577f7190" + }, + "isoband": { + "Package": "isoband", + "Version": "0.2.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grid", + "utils" + ], + "Hash": "0080607b4a1a7b28979aecef976d8bc2" + }, + "jquerylib": { + "Package": "jquerylib", + "Version": "0.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "htmltools" + ], + "Hash": "5aab57a3bd297eee1c1d862735972182" + }, + "jsonlite": { + "Package": "jsonlite", + "Version": "1.8.8", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "methods" + ], + "Hash": "e1b9c55281c5adc4dd113652d9e26768" + }, + "knitr": { + "Package": "knitr", + "Version": "1.48", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "evaluate", + "highr", + "methods", + "tools", + "xfun", + "yaml" + ], + "Hash": "acf380f300c721da9fde7df115a5f86f" + }, + "labeling": { + "Package": "labeling", + "Version": "0.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "graphics", + "stats" + ], + "Hash": "b64ec208ac5bc1852b285f665d6368b3" + }, + "lattice": { + "Package": "lattice", + "Version": "0.22-6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "stats", + "utils" + ], + "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" + }, + "lifecycle": { + "Package": "lifecycle", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "rlang" + ], + "Hash": "b8552d117e1b808b09a832f589b79035" + }, + "lubridate": { + "Package": "lubridate", + "Version": "1.9.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "generics", + "methods", + "timechange" + ], + "Hash": "680ad542fbcf801442c83a6ac5a2126c" + }, + "magrittr": { + "Package": "magrittr", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "7ce2733a9826b3aeb1775d56fd305472" + }, + "memoise": { + "Package": "memoise", + "Version": "2.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cachem", + "rlang" + ], + "Hash": "e2817ccf4a065c5d9d7f2cfbe7c1d78c" + }, + "mgcv": { + "Package": "mgcv", + "Version": "1.9-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "Matrix", + "R", + "graphics", + "methods", + "nlme", + "splines", + "stats", + "utils" + ], + "Hash": "110ee9d83b496279960e162ac97764ce" + }, + "mime": { + "Package": "mime", + "Version": "0.12", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "tools" + ], + "Hash": "18e9c28c1d3ca1560ce30658b22ce104" + }, + "modelr": { + "Package": "modelr", + "Version": "0.1.11", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "broom", + "magrittr", + "purrr", + "rlang", + "tibble", + "tidyr", + "tidyselect", + "vctrs" + ], + "Hash": "4f50122dc256b1b6996a4703fecea821" + }, + "munsell": { + "Package": "munsell", + "Version": "0.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "colorspace", + "methods" + ], + "Hash": "4fd8900853b746af55b81fda99da7695" + }, + "nlme": { + "Package": "nlme", + "Version": "3.1-165", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "2769a88be217841b1f33ed469675c3cc" + }, + "openssl": { + "Package": "openssl", + "Version": "2.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "askpass" + ], + "Hash": "2bcca3848e4734eb3b16103bc9aa4b8e" + }, + "pillar": { + "Package": "pillar", + "Version": "1.9.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "cli", + "fansi", + "glue", + "lifecycle", + "rlang", + "utf8", + "utils", + "vctrs" + ], + "Hash": "15da5a8412f317beeee6175fbc76f4bb" + }, + "pkgconfig": { + "Package": "pkgconfig", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "01f28d4278f15c76cddbea05899c5d6f" + }, + "prettyunits": { + "Package": "prettyunits", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" + }, + "processx": { + "Package": "processx", + "Version": "3.8.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "ps", + "utils" + ], + "Hash": "0c90a7d71988856bad2a2a45dd871bb9" + }, + "progress": { + "Package": "progress", + "Version": "1.2.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "crayon", + "hms", + "prettyunits" + ], + "Hash": "f4625e061cb2865f111b47ff163a5ca6" + }, + "ps": { + "Package": "ps", + "Version": "1.7.7", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "878b467580097e9c383acbb16adab57a" + }, + "purrr": { + "Package": "purrr", + "Version": "1.0.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "lifecycle", + "magrittr", + "rlang", + "vctrs" + ], + "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" + }, + "ragg": { + "Package": "ragg", + "Version": "1.3.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "systemfonts", + "textshaping" + ], + "Hash": "e3087db406e079a8a2fd87f413918ed3" + }, + "rappdirs": { + "Package": "rappdirs", + "Version": "0.3.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "5e3c5dc0b071b21fa128676560dbe94d" + }, + "readr": { + "Package": "readr", + "Version": "2.1.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "cli", + "clipr", + "cpp11", + "crayon", + "hms", + "lifecycle", + "methods", + "rlang", + "tibble", + "tzdb", + "utils", + "vroom" + ], + "Hash": "9de96463d2117f6ac49980577939dfb3" + }, + "readxl": { + "Package": "readxl", + "Version": "1.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cellranger", + "cpp11", + "progress", + "tibble", + "utils" + ], + "Hash": "8cf9c239b96df1bbb133b74aef77ad0a" + }, + "rematch": { + "Package": "rematch", + "Version": "2.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "cbff1b666c6fa6d21202f07e2318d4f1" + }, + "rematch2": { + "Package": "rematch2", + "Version": "2.1.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "tibble" + ], + "Hash": "76c9e04c712a05848ae7a23d2f170a40" + }, "renv": { "Package": "renv", "Version": "1.0.7", @@ -18,6 +1064,441 @@ "utils" ], "Hash": "397b7b2a265bc5a7a06852524dabae20" + }, + "reprex": { + "Package": "reprex", + "Version": "2.1.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "callr", + "cli", + "clipr", + "fs", + "glue", + "knitr", + "lifecycle", + "rlang", + "rmarkdown", + "rstudioapi", + "utils", + "withr" + ], + "Hash": "97b1d5361a24d9fb588db7afe3e5bcbf" + }, + "rlang": { + "Package": "rlang", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "utils" + ], + "Hash": "3eec01f8b1dee337674b2e34ab1f9bc1" + }, + "rmarkdown": { + "Package": "rmarkdown", + "Version": "2.27", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bslib", + "evaluate", + "fontawesome", + "htmltools", + "jquerylib", + "jsonlite", + "knitr", + "methods", + "tinytex", + "tools", + "utils", + "xfun", + "yaml" + ], + "Hash": "27f9502e1cdbfa195f94e03b0f517484" + }, + "rstudioapi": { + "Package": "rstudioapi", + "Version": "0.16.0", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "96710351d642b70e8f02ddeb237c46a7" + }, + "rvest": { + "Package": "rvest", + "Version": "1.0.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "httr", + "lifecycle", + "magrittr", + "rlang", + "selectr", + "tibble", + "xml2" + ], + "Hash": "0bcf0c6f274e90ea314b812a6d19a519" + }, + "sass": { + "Package": "sass", + "Version": "0.4.9", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R6", + "fs", + "htmltools", + "rappdirs", + "rlang" + ], + "Hash": "d53dbfddf695303ea4ad66f86e99b95d" + }, + "scales": { + "Package": "scales", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "RColorBrewer", + "cli", + "farver", + "glue", + "labeling", + "lifecycle", + "munsell", + "rlang", + "viridisLite" + ], + "Hash": "c19df082ba346b0ffa6f833e92de34d1" + }, + "selectr": { + "Package": "selectr", + "Version": "0.4-2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "methods", + "stringr" + ], + "Hash": "3838071b66e0c566d55cc26bd6e27bf4" + }, + "stringi": { + "Package": "stringi", + "Version": "1.8.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats", + "tools", + "utils" + ], + "Hash": "39e1144fd75428983dc3f63aa53dfa91" + }, + "stringr": { + "Package": "stringr", + "Version": "1.5.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "magrittr", + "rlang", + "stringi", + "vctrs" + ], + "Hash": "960e2ae9e09656611e0b8214ad543207" + }, + "sys": { + "Package": "sys", + "Version": "3.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "3a1be13d68d47a8cd0bfd74739ca1555" + }, + "systemfonts": { + "Package": "systemfonts", + "Version": "1.1.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11", + "lifecycle" + ], + "Hash": "213b6b8ed5afbf934843e6c3b090d418" + }, + "textshaping": { + "Package": "textshaping", + "Version": "0.4.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11", + "lifecycle", + "systemfonts" + ], + "Hash": "5142f8bc78ed3d819d26461b641627ce" + }, + "tibble": { + "Package": "tibble", + "Version": "3.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "fansi", + "lifecycle", + "magrittr", + "methods", + "pillar", + "pkgconfig", + "rlang", + "utils", + "vctrs" + ], + "Hash": "a84e2cc86d07289b3b6f5069df7a004c" + }, + "tidyr": { + "Package": "tidyr", + "Version": "1.3.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "cpp11", + "dplyr", + "glue", + "lifecycle", + "magrittr", + "purrr", + "rlang", + "stringr", + "tibble", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "915fb7ce036c22a6a33b5a8adb712eb1" + }, + "tidyselect": { + "Package": "tidyselect", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang", + "vctrs", + "withr" + ], + "Hash": "829f27b9c4919c16b593794a6344d6c0" + }, + "tidyverse": { + "Package": "tidyverse", + "Version": "2.0.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "broom", + "cli", + "conflicted", + "dbplyr", + "dplyr", + "dtplyr", + "forcats", + "ggplot2", + "googledrive", + "googlesheets4", + "haven", + "hms", + "httr", + "jsonlite", + "lubridate", + "magrittr", + "modelr", + "pillar", + "purrr", + "ragg", + "readr", + "readxl", + "reprex", + "rlang", + "rstudioapi", + "rvest", + "stringr", + "tibble", + "tidyr", + "xml2" + ], + "Hash": "c328568cd14ea89a83bd4ca7f54ae07e" + }, + "timechange": { + "Package": "timechange", + "Version": "0.3.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "c5f3c201b931cd6474d17d8700ccb1c8" + }, + "tinytex": { + "Package": "tinytex", + "Version": "0.52", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "xfun" + ], + "Hash": "cfbad971a71f0e27cec22e544a08bc3b" + }, + "tzdb": { + "Package": "tzdb", + "Version": "0.4.0", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cpp11" + ], + "Hash": "f561504ec2897f4d46f0c7657e488ae1" + }, + "utf8": { + "Package": "utf8", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "62b65c52671e6665f803ff02954446e9" + }, + "uuid": { + "Package": "uuid", + "Version": "1.2-1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "34e965e62a41fcafb1ca60e9b142085b" + }, + "vctrs": { + "Package": "vctrs", + "Version": "0.6.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "glue", + "lifecycle", + "rlang" + ], + "Hash": "c03fa420630029418f7e6da3667aac4a" + }, + "viridisLite": { + "Package": "viridisLite", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "c826c7c4241b6fc89ff55aaea3fa7491" + }, + "vroom": { + "Package": "vroom", + "Version": "1.6.5", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "bit64", + "cli", + "cpp11", + "crayon", + "glue", + "hms", + "lifecycle", + "methods", + "progress", + "rlang", + "stats", + "tibble", + "tidyselect", + "tzdb", + "vctrs", + "withr" + ], + "Hash": "390f9315bc0025be03012054103d227c" + }, + "withr": { + "Package": "withr", + "Version": "3.0.1", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics" + ], + "Hash": "07909200e8bbe90426fbfeb73e1e27aa" + }, + "xfun": { + "Package": "xfun", + "Version": "0.46", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "grDevices", + "stats", + "tools" + ], + "Hash": "00ce32f398db0415dde61abfef11300c" + }, + "xml2": { + "Package": "xml2", + "Version": "1.3.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "cli", + "methods", + "rlang" + ], + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" + }, + "yaml": { + "Package": "yaml", + "Version": "2.3.10", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "51dab85c6c98e50a18d7551e9d49f76c" } } } From b4eebec52b8a05fe216af9f805beaa439db670da Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 12:14:02 -0400 Subject: [PATCH 32/47] Uncomment renv steps from Dockerfile --- analyses/cell-type-wilms-tumor-06/Dockerfile | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/Dockerfile b/analyses/cell-type-wilms-tumor-06/Dockerfile index 9d693a093..a32686327 100644 --- a/analyses/cell-type-wilms-tumor-06/Dockerfile +++ b/analyses/cell-type-wilms-tumor-06/Dockerfile @@ -18,11 +18,11 @@ ENV RENV_CONFIG_CACHE_ENABLED=FALSE # Install renv RUN R --no-echo --no-restore --no-save -e "install.packages('renv')" -# # Copy the renv.lock file from the host environment to the image -# COPY renv.lock renv.lock +# Copy the renv.lock file from the host environment to the image +COPY renv.lock renv.lock -# # restore from renv.lock file and clean up to reduce image size -# RUN Rscript -e 'renv::restore()' && \ -# rm -rf ~/.cache/R/renv && \ -# rm -rf /tmp/downloaded_packages && \ -# rm -rf /tmp/Rtmp* \ No newline at end of file +# restore from renv.lock file and clean up to reduce image size +RUN Rscript -e 'renv::restore()' && \ + rm -rf ~/.cache/R/renv && \ + rm -rf /tmp/downloaded_packages && \ + rm -rf /tmp/Rtmp* From c4e64c1cecb75ec6df3a9ddce0fbc08e9f3cfbe8 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 13:14:14 -0400 Subject: [PATCH 33/47] Snapshot with some single-cell packages --- .../components/dependencies.R | 6 + analyses/cell-type-wilms-tumor-06/renv.lock | 2531 ++++++++++++++++- 2 files changed, 2522 insertions(+), 15 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/components/dependencies.R b/analyses/cell-type-wilms-tumor-06/components/dependencies.R index 89d03ae8d..65bcf9b54 100644 --- a/analyses/cell-type-wilms-tumor-06/components/dependencies.R +++ b/analyses/cell-type-wilms-tumor-06/components/dependencies.R @@ -1,2 +1,8 @@ # Tidyverse library(tidyverse) + +# Single-cell packages +library(Seurat) # remotes::install_github("satijalab/seurat@v5.1.0") +library(presto) # remotes::install_github("immunogenomics/presto") +library(Azimuth) # remotes::install_github("satijalab/azimuth") +library(SCpubr) \ No newline at end of file diff --git a/analyses/cell-type-wilms-tumor-06/renv.lock b/analyses/cell-type-wilms-tumor-06/renv.lock index 79d8d3916..0f14fcf4b 100644 --- a/analyses/cell-type-wilms-tumor-06/renv.lock +++ b/analyses/cell-type-wilms-tumor-06/renv.lock @@ -8,7 +8,283 @@ } ] }, + "Bioconductor": { + "Version": "3.19" + }, "Packages": { + "AnnotationDbi": { + "Package": "AnnotationDbi", + "Version": "1.64.1", + "Source": "Bioconductor", + "Requirements": [ + "Biobase", + "BiocGenerics", + "DBI", + "IRanges", + "KEGGREST", + "R", + "RSQLite", + "S4Vectors", + "methods", + "stats", + "stats4" + ], + "Hash": "27587689922e22f60ec9ad0182a0a825" + }, + "AnnotationFilter": { + "Package": "AnnotationFilter", + "Version": "1.26.0", + "Source": "Bioconductor", + "Requirements": [ + "GenomicRanges", + "R", + "lazyeval", + "methods", + "utils" + ], + "Hash": "759acec0b1522c1a85c6ba703d4c0ec5" + }, + "Azimuth": { + "Package": "Azimuth", + "Version": "0.5.0", + "Source": "GitHub", + "Remotes": "immunogenomics/presto, satijalab/seurat-data, mojaveazure/seurat-disk", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "azimuth", + "RemoteUsername": "satijalab", + "RemoteRef": "HEAD", + "RemoteSha": "243ee5db80fcbffa3452c944254a325a3da2ef9e", + "Requirements": [ + "BSgenome.Hsapiens.UCSC.hg38", + "DT", + "EnsDb.Hsapiens.v86", + "JASPAR2020", + "Matrix", + "R", + "Rcpp", + "Seurat", + "SeuratData", + "SeuratDisk", + "SeuratObject", + "Signac", + "TFBSTools", + "future", + "ggplot2", + "glmGamPoi", + "googlesheets4", + "hdf5r", + "htmltools", + "httr", + "jsonlite", + "methods", + "patchwork", + "plotly", + "presto", + "rlang", + "scales", + "shiny", + "shinyBS", + "shinydashboard", + "shinyjs", + "stats", + "stringr", + "tools", + "utils", + "withr" + ], + "Hash": "59d0a6084aa8b75b77a5da511d0786f6" + }, + "BH": { + "Package": "BH", + "Version": "1.84.0-0", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "a8235afbcd6316e6e91433ea47661013" + }, + "BSgenome": { + "Package": "BSgenome", + "Version": "1.70.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "BiocIO", + "Biostrings", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "Rsamtools", + "S4Vectors", + "XVector", + "matrixStats", + "methods", + "rtracklayer", + "stats", + "utils" + ], + "Hash": "41a60ca70f713322ca31026f6b9e052b" + }, + "BSgenome.Hsapiens.UCSC.hg38": { + "Package": "BSgenome.Hsapiens.UCSC.hg38", + "Version": "1.4.5", + "Source": "Bioconductor", + "Requirements": [ + "BSgenome", + "GenomeInfoDb", + "R" + ], + "Hash": "0ba28cc20a4f8629fbb30d0bf1a133ac" + }, + "Biobase": { + "Package": "Biobase", + "Version": "2.62.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "R", + "methods", + "utils" + ], + "Hash": "38252a34e82d3ff6bb46b4e2252d2dce" + }, + "BiocFileCache": { + "Package": "BiocFileCache", + "Version": "2.10.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "DBI", + "R", + "RSQLite", + "curl", + "dbplyr", + "dplyr", + "filelock", + "httr", + "methods", + "stats", + "utils" + ], + "Hash": "d59a927de08cce606299009cc595b2cb" + }, + "BiocGenerics": { + "Package": "BiocGenerics", + "Version": "0.48.1", + "Source": "Bioconductor", + "Requirements": [ + "R", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "e34278c65d7dffcc08f737bf0944ca9a" + }, + "BiocIO": { + "Package": "BiocIO", + "Version": "1.12.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "R", + "S4Vectors", + "methods", + "tools" + ], + "Hash": "aa543468283543c9a8dad23a4897be96" + }, + "BiocManager": { + "Package": "BiocManager", + "Version": "1.30.23", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "utils" + ], + "Hash": "47e968dfe563c1b22c2e20a067ec21d5" + }, + "BiocParallel": { + "Package": "BiocParallel", + "Version": "1.36.0", + "Source": "Bioconductor", + "Requirements": [ + "BH", + "R", + "codetools", + "cpp11", + "futile.logger", + "methods", + "parallel", + "snow", + "stats", + "utils" + ], + "Hash": "6d1689ee8b65614ba6ef4012a67b663a" + }, + "BiocVersion": { + "Package": "BiocVersion", + "Version": "3.19.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.19", + "Requirements": [ + "R" + ], + "Hash": "b892e27fc9659a4c8f8787d34c37b8b2" + }, + "Biostrings": { + "Package": "Biostrings", + "Version": "2.70.3", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDb", + "IRanges", + "R", + "S4Vectors", + "XVector", + "crayon", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "86ffa781f132f54e9c963a13fd6cf9fc" + }, + "CNEr": { + "Package": "CNEr", + "Version": "1.38.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "Biostrings", + "DBI", + "GO.db", + "GenomeInfoDb", + "GenomicAlignments", + "GenomicRanges", + "IRanges", + "KEGGREST", + "R", + "R.utils", + "RSQLite", + "S4Vectors", + "XVector", + "annotate", + "ggplot2", + "methods", + "parallel", + "poweRlaw", + "readr", + "reshape2", + "rtracklayer", + "tools" + ], + "Hash": "a6b6bf0df150fe2869b81059eddfb5a2" + }, "DBI": { "Package": "DBI", "Version": "1.2.3", @@ -20,6 +296,270 @@ ], "Hash": "065ae649b05f1ff66bb0c793107508f5" }, + "DT": { + "Package": "DT", + "Version": "0.33", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "crosstalk", + "htmltools", + "htmlwidgets", + "httpuv", + "jquerylib", + "jsonlite", + "magrittr", + "promises" + ], + "Hash": "64ff3427f559ce3f2597a4fe13255cb6" + }, + "DelayedArray": { + "Package": "DelayedArray", + "Version": "0.28.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "IRanges", + "Matrix", + "MatrixGenerics", + "R", + "S4Arrays", + "S4Vectors", + "SparseArray", + "methods", + "stats", + "stats4" + ], + "Hash": "0e5c84e543a3d04ce64c6f60ed46d7eb" + }, + "DelayedMatrixStats": { + "Package": "DelayedMatrixStats", + "Version": "1.24.0", + "Source": "Bioconductor", + "Requirements": [ + "DelayedArray", + "IRanges", + "Matrix", + "MatrixGenerics", + "S4Vectors", + "methods", + "sparseMatrixStats" + ], + "Hash": "71c2d178d33f9d91999f67dc2d53b747" + }, + "DirichletMultinomial": { + "Package": "DirichletMultinomial", + "Version": "1.44.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "IRanges", + "S4Vectors", + "methods", + "stats4" + ], + "Hash": "18131c758b36c44d13e2ca9fdf656343" + }, + "EnsDb.Hsapiens.v86": { + "Package": "EnsDb.Hsapiens.v86", + "Version": "2.99.0", + "Source": "Bioconductor", + "Requirements": [ + "ensembldb" + ], + "Hash": "626af36a8d6de3c44779ff2a073952e6" + }, + "FNN": { + "Package": "FNN", + "Version": "1.1.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "eaabdc7938aa3632a28273f53a0d226d" + }, + "GO.db": { + "Package": "GO.db", + "Version": "3.18.0", + "Source": "Bioconductor", + "Requirements": [ + "AnnotationDbi", + "R", + "methods" + ], + "Hash": "1ec786f8b958a01ceb245883701873b1" + }, + "GenomeInfoDb": { + "Package": "GenomeInfoDb", + "Version": "1.38.8", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDbData", + "IRanges", + "R", + "RCurl", + "S4Vectors", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "155053909d2831bfac154a1118151d6b" + }, + "GenomeInfoDbData": { + "Package": "GenomeInfoDbData", + "Version": "1.2.11", + "Source": "Bioconductor", + "Requirements": [ + "R" + ], + "Hash": "10f32956181d1d46bd8402c93ac193e8" + }, + "GenomicAlignments": { + "Package": "GenomicAlignments", + "Version": "1.38.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "BiocParallel", + "Biostrings", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "Rsamtools", + "S4Vectors", + "SummarizedExperiment", + "methods", + "stats", + "utils" + ], + "Hash": "3447de036330c8c2ae54f064c8f4e299" + }, + "GenomicFeatures": { + "Package": "GenomicFeatures", + "Version": "1.54.4", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "AnnotationDbi", + "Biobase", + "BiocGenerics", + "BiocIO", + "Biostrings", + "DBI", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "RSQLite", + "S4Vectors", + "XVector", + "biomaRt", + "httr", + "methods", + "rjson", + "rtracklayer", + "stats", + "tools", + "utils" + ], + "Hash": "28667ac05b72cf841adf792154f387de" + }, + "GenomicRanges": { + "Package": "GenomicRanges", + "Version": "1.54.1", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDb", + "IRanges", + "R", + "S4Vectors", + "XVector", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "7e0c1399af35369312d9c399454374e8" + }, + "HDF5Array": { + "Package": "HDF5Array", + "Version": "1.30.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "IRanges", + "Matrix", + "R", + "Rhdf5lib", + "S4Arrays", + "S4Vectors", + "methods", + "rhdf5", + "rhdf5filters", + "stats", + "tools", + "utils" + ], + "Hash": "9b8deb4fd34fa439c16c829457d1968f" + }, + "IRanges": { + "Package": "IRanges", + "Version": "2.36.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "R", + "S4Vectors", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "f98500eeb93e8a66ad65be955a848595" + }, + "JASPAR2020": { + "Package": "JASPAR2020", + "Version": "0.99.10", + "Source": "Bioconductor", + "Requirements": [ + "R", + "methods" + ], + "Hash": "779f73c6fcd71f791c0985fde2aff785" + }, + "KEGGREST": { + "Package": "KEGGREST", + "Version": "1.42.0", + "Source": "Bioconductor", + "Requirements": [ + "Biostrings", + "R", + "httr", + "methods", + "png" + ], + "Hash": "8d6e9f4dce69aec9c588c27ae79be08e" + }, + "KernSmooth": { + "Package": "KernSmooth", + "Version": "2.23-24", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "stats" + ], + "Hash": "9f33a1ee37bbe8919eb2ec4b9f2473a5" + }, "MASS": { "Package": "MASS", "Version": "7.3-61", @@ -52,6 +592,64 @@ ], "Hash": "1920b2f11133b12350024297d8a4ff4a" }, + "MatrixGenerics": { + "Package": "MatrixGenerics", + "Version": "1.14.0", + "Source": "Bioconductor", + "Requirements": [ + "matrixStats", + "methods" + ], + "Hash": "088cd2077b5619fcb7b373b1a45174e7" + }, + "ProtGenerics": { + "Package": "ProtGenerics", + "Version": "1.34.0", + "Source": "Bioconductor", + "Requirements": [ + "methods" + ], + "Hash": "f9cf8f8dac1d3e1bd9a5e3215286b700" + }, + "R.methodsS3": { + "Package": "R.methodsS3", + "Version": "1.8.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "utils" + ], + "Hash": "278c286fd6e9e75d0c2e8f731ea445c8" + }, + "R.oo": { + "Package": "R.oo", + "Version": "1.26.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R.methodsS3", + "methods", + "utils" + ], + "Hash": "4fed809e53ddb5407b3da3d0f572e591" + }, + "R.utils": { + "Package": "R.utils", + "Version": "2.12.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R.methodsS3", + "R.oo", + "methods", + "tools", + "utils" + ], + "Hash": "3dc2829b790254bfba21e60965787651" + }, "R6": { "Package": "R6", "Version": "2.5.1", @@ -62,6 +660,13 @@ ], "Hash": "470851b6d5d0ac559e9d01bb352b4021" }, + "RANN": { + "Package": "RANN", + "Version": "2.6.1", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "d128ea05a972d3e67c6f39de52c72bd7" + }, "RColorBrewer": { "Package": "RColorBrewer", "Version": "1.1-3", @@ -72,11 +677,609 @@ ], "Hash": "45f0398006e83a5b10b72a90663d8d8c" }, - "askpass": { - "Package": "askpass", - "Version": "1.2.0", + "RCurl": { + "Package": "RCurl", + "Version": "1.98-1.16", "Source": "Repository", - "Repository": "CRAN", + "Repository": "RSPM", + "Requirements": [ + "R", + "bitops", + "methods" + ], + "Hash": "ddbdf53d15b47be4407ede6914f56fbb" + }, + "ROCR": { + "Package": "ROCR", + "Version": "1.0-11", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "gplots", + "grDevices", + "graphics", + "methods", + "stats" + ], + "Hash": "cc151930e20e16427bc3d0daec62b4a9" + }, + "RSQLite": { + "Package": "RSQLite", + "Version": "2.3.7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "DBI", + "R", + "bit64", + "blob", + "cpp11", + "memoise", + "methods", + "pkgconfig", + "plogr", + "rlang" + ], + "Hash": "46b45a4dd7bb0e0f4e3fc22245817240" + }, + "RSpectra": { + "Package": "RSpectra", + "Version": "0.16-2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppEigen" + ], + "Hash": "5ffd7a70479497271e57cd0cc2465b3b" + }, + "Rcpp": { + "Package": "Rcpp", + "Version": "1.0.13", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "methods", + "utils" + ], + "Hash": "f27411eb6d9c3dada5edd444b8416675" + }, + "RcppAnnoy": { + "Package": "RcppAnnoy", + "Version": "0.0.22", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "methods" + ], + "Hash": "f6baa1e06fb6c3724f601a764266cb0d" + }, + "RcppArmadillo": { + "Package": "RcppArmadillo", + "Version": "14.0.0-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "methods", + "stats", + "utils" + ], + "Hash": "a711769be34214addf7805278b72d56b" + }, + "RcppEigen": { + "Package": "RcppEigen", + "Version": "0.3.4.0.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "stats", + "utils" + ], + "Hash": "df49e3306f232ec28f1604e36a202847" + }, + "RcppHNSW": { + "Package": "RcppHNSW", + "Version": "0.6.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Rcpp", + "methods" + ], + "Hash": "1f2dc32c27746a35196aaf95adb357be" + }, + "RcppProgress": { + "Package": "RcppProgress", + "Version": "0.4.2", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "1c0aa18b97e6aaa17f93b8b866c0ace5" + }, + "RcppRoll": { + "Package": "RcppRoll", + "Version": "0.3.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "6659c0ecb7b85f322f93e7f1e6ac7d35" + }, + "RcppTOML": { + "Package": "RcppTOML", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "c232938949fcd8126034419cc529333a" + }, + "Rhdf5lib": { + "Package": "Rhdf5lib", + "Version": "1.24.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "R" + ], + "Hash": "3cf103db29d75af0221d71946509a30c" + }, + "Rhtslib": { + "Package": "Rhtslib", + "Version": "2.4.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "zlibbioc" + ], + "Hash": "ee7abc23ddeada73fedfee74c633bffe" + }, + "Rsamtools": { + "Package": "Rsamtools", + "Version": "2.18.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "BiocParallel", + "Biostrings", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "Rhtslib", + "S4Vectors", + "XVector", + "bitops", + "methods", + "stats", + "utils", + "zlibbioc" + ], + "Hash": "242517db56d7fe7214120ecc77a5890d" + }, + "Rtsne": { + "Package": "Rtsne", + "Version": "0.17", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Rcpp", + "stats" + ], + "Hash": "f81f7764a3c3e310b1d40e1a8acee19e" + }, + "S4Arrays": { + "Package": "S4Arrays", + "Version": "1.2.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "IRanges", + "Matrix", + "R", + "S4Vectors", + "abind", + "crayon", + "methods", + "stats" + ], + "Hash": "3213a9826adb8f48e51af1e7b30fa568" + }, + "S4Vectors": { + "Package": "S4Vectors", + "Version": "0.40.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "R", + "methods", + "stats", + "stats4", + "utils" + ], + "Hash": "1716e201f81ced0f456dd5ec85fe20f8" + }, + "SCpubr": { + "Package": "SCpubr", + "Version": "2.0.2", + "Source": "Bioconductor", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "8b68bff394e3e09995c8044480ecc3ea" + }, + "Seurat": { + "Package": "Seurat", + "Version": "5.1.0", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "seurat", + "RemoteUsername": "satijalab", + "RemoteRef": "v5.1.0", + "RemoteSha": "1549dcb3075eaeac01c925c4b4bb73c73450fc50", + "Requirements": [ + "KernSmooth", + "MASS", + "Matrix", + "R", + "RANN", + "RColorBrewer", + "ROCR", + "RSpectra", + "Rcpp", + "RcppAnnoy", + "RcppEigen", + "RcppHNSW", + "RcppProgress", + "Rtsne", + "SeuratObject", + "cluster", + "cowplot", + "fastDummies", + "fitdistrplus", + "future", + "future.apply", + "generics", + "ggplot2", + "ggrepel", + "ggridges", + "grDevices", + "graphics", + "grid", + "httr", + "ica", + "igraph", + "irlba", + "jsonlite", + "leiden", + "lifecycle", + "lmtest", + "matrixStats", + "methods", + "miniUI", + "patchwork", + "pbapply", + "plotly", + "png", + "progressr", + "purrr", + "reticulate", + "rlang", + "scales", + "scattermore", + "sctransform", + "shiny", + "spatstat.explore", + "spatstat.geom", + "stats", + "tibble", + "tools", + "utils", + "uwot" + ], + "Hash": "9e89609201828df08e9c5df431a73157" + }, + "SeuratData": { + "Package": "SeuratData", + "Version": "0.2.2.9001", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "seurat-data", + "RemoteUsername": "satijalab", + "RemoteRef": "HEAD", + "RemoteSha": "4dc08e022f51c324bc7bf785b1b5771d2742701d", + "Requirements": [ + "R", + "SeuratObject", + "cli", + "crayon", + "rappdirs", + "stats", + "utils" + ], + "Hash": "58823864a94ee08545fb114c5c629f51" + }, + "SeuratDisk": { + "Package": "SeuratDisk", + "Version": "0.0.0.9021", + "Source": "GitHub", + "Remotes": "satijalab/seurat-data", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "seurat-disk", + "RemoteUsername": "mojaveazure", + "RemoteRef": "HEAD", + "RemoteSha": "877d4e18ab38c686f5db54f8cd290274ccdbe295", + "Requirements": [ + "Matrix", + "R", + "R6", + "Seurat", + "SeuratObject", + "cli", + "crayon", + "hdf5r", + "methods", + "rlang", + "stats", + "stringi", + "tools", + "utils", + "withr" + ], + "Hash": "d9eddfd211bbe8278b1805fe08ffd523" + }, + "SeuratObject": { + "Package": "SeuratObject", + "Version": "5.0.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppEigen", + "future", + "future.apply", + "generics", + "grDevices", + "grid", + "lifecycle", + "methods", + "progressr", + "rlang", + "sp", + "spam", + "stats", + "tools", + "utils" + ], + "Hash": "e9b70412b7e04571b46101f5dcbaacad" + }, + "Signac": { + "Package": "Signac", + "Version": "1.13.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "BiocGenerics", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "Matrix", + "R", + "Rcpp", + "RcppRoll", + "Rsamtools", + "S4Vectors", + "SeuratObject", + "data.table", + "dplyr", + "fastmatch", + "future", + "future.apply", + "ggplot2", + "grid", + "irlba", + "lifecycle", + "methods", + "patchwork", + "pbapply", + "rlang", + "scales", + "stats", + "stringi", + "tidyr", + "tidyselect", + "utils", + "vctrs" + ], + "Hash": "e29e5a01bf36b5d979a54a7650df301a" + }, + "SingleCellExperiment": { + "Package": "SingleCellExperiment", + "Version": "1.24.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "GenomicRanges", + "S4Vectors", + "SummarizedExperiment", + "methods", + "stats", + "utils" + ], + "Hash": "e21b3571ce76eb4dfe6bf7900960aa6a" + }, + "SparseArray": { + "Package": "SparseArray", + "Version": "1.2.4", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "IRanges", + "Matrix", + "MatrixGenerics", + "R", + "S4Arrays", + "S4Vectors", + "XVector", + "matrixStats", + "methods", + "stats" + ], + "Hash": "391092e7b81373ab624bd6471cebccd4" + }, + "SummarizedExperiment": { + "Package": "SummarizedExperiment", + "Version": "1.32.0", + "Source": "Bioconductor", + "Requirements": [ + "Biobase", + "BiocGenerics", + "DelayedArray", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "Matrix", + "MatrixGenerics", + "R", + "S4Arrays", + "S4Vectors", + "methods", + "stats", + "tools", + "utils" + ], + "Hash": "caee529bf9710ff6fe1776612fcaa266" + }, + "TFBSTools": { + "Package": "TFBSTools", + "Version": "1.40.0", + "Source": "Bioconductor", + "Requirements": [ + "BSgenome", + "Biobase", + "BiocGenerics", + "BiocParallel", + "Biostrings", + "CNEr", + "DBI", + "DirichletMultinomial", + "GenomeInfoDb", + "GenomicRanges", + "IRanges", + "R", + "RSQLite", + "S4Vectors", + "TFMPvalue", + "XML", + "XVector", + "caTools", + "grid", + "gtools", + "methods", + "parallel", + "rtracklayer", + "seqLogo" + ], + "Hash": "2d81d93dc84b76c570719689328682bd" + }, + "TFMPvalue": { + "Package": "TFMPvalue", + "Version": "0.0.9", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "d2974f239e0c14cade60062fe2cbdf0b" + }, + "XML": { + "Package": "XML", + "Version": "3.99-0.17", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "bc2a8a1139d8d4bd9c46086708945124" + }, + "XVector": { + "Package": "XVector", + "Version": "0.42.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "IRanges", + "R", + "S4Vectors", + "methods", + "tools", + "utils", + "zlibbioc" + ], + "Hash": "65c0b6bca03f88758f86ef0aa18c4873" + }, + "abind": { + "Package": "abind", + "Version": "1.4-5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods", + "utils" + ], + "Hash": "4f57884290cc75ab22f4af9e9d4ca862" + }, + "annotate": { + "Package": "annotate", + "Version": "1.80.0", + "Source": "Bioconductor", + "Requirements": [ + "AnnotationDbi", + "Biobase", + "BiocGenerics", + "DBI", + "R", + "XML", + "graphics", + "httr", + "methods", + "stats", + "utils", + "xtable" + ], + "Hash": "08359e5ce909c14a936ec1f9712ca830" + }, + "askpass": { + "Package": "askpass", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "CRAN", "Requirements": [ "sys" ], @@ -100,7 +1303,42 @@ "Requirements": [ "R" ], - "Hash": "543776ae6848fde2f48ff3816d0628bc" + "Hash": "543776ae6848fde2f48ff3816d0628bc" + }, + "beachmat": { + "Package": "beachmat", + "Version": "2.18.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "Matrix", + "Rcpp", + "SparseArray", + "methods" + ], + "Hash": "c1c423ca7149d9e7f55d1e609342c2bd" + }, + "biomaRt": { + "Package": "biomaRt", + "Version": "2.58.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "AnnotationDbi", + "BiocFileCache", + "XML", + "digest", + "httr", + "methods", + "progress", + "rappdirs", + "stringr", + "utils", + "xml2" + ], + "Hash": "d6e043a6bfb4e2e256d00b8eee9c4266" }, "bit": { "Package": "bit", @@ -126,6 +1364,13 @@ ], "Hash": "9fe98599ca456d6552421db0d6772d8f" }, + "bitops": { + "Package": "bitops", + "Version": "1.0-8", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "da69e6b6f8feebec0827205aad3fdbd8" + }, "blob": { "Package": "blob", "Version": "1.2.4", @@ -180,6 +1425,17 @@ ], "Hash": "b299c6741ca9746fb227debcb0f9fb6c" }, + "caTools": { + "Package": "caTools", + "Version": "1.18.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "bitops" + ], + "Hash": "34d90fa5845004236b9eacafc51d07b2" + }, "cachem": { "Package": "cachem", "Version": "1.1.0", @@ -237,6 +1493,30 @@ ], "Hash": "3f038e5ac7f41d4ac41ce658c85e3042" }, + "cluster": { + "Package": "cluster", + "Version": "2.1.6", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats", + "utils" + ], + "Hash": "0aaa05204035dc43ea0004b9c76611dd" + }, + "codetools": { + "Package": "codetools", + "Version": "0.2-20", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R" + ], + "Hash": "61e097f35917d342622f21cdc79c256e" + }, "colorspace": { "Package": "colorspace", "Version": "2.1-1", @@ -251,6 +1531,13 @@ ], "Hash": "d954cb1c57e8d8b756165d7ba18aa55a" }, + "commonmark": { + "Package": "commonmark", + "Version": "1.9.1", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "5d8225445acb167abf7797de48b2ee3c" + }, "conflicted": { "Package": "conflicted", "Version": "1.2.0", @@ -264,6 +1551,23 @@ ], "Hash": "bb097fccb22d156624fd07cd2894ddb6" }, + "cowplot": { + "Package": "cowplot", + "Version": "1.1.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "ggplot2", + "grDevices", + "grid", + "gtable", + "methods", + "rlang", + "scales" + ], + "Hash": "8ef2084dd7d28847b374e55440e4f8cb" + }, "cpp11": { "Package": "cpp11", "Version": "0.4.7", @@ -286,6 +1590,19 @@ ], "Hash": "859d96e65ef198fd43e82b9628d593ef" }, + "crosstalk": { + "Package": "crosstalk", + "Version": "1.2.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R6", + "htmltools", + "jsonlite", + "lazyeval" + ], + "Hash": "ab12c7b080a57475248a30f4db6298c0" + }, "curl": { "Package": "curl", "Version": "5.2.1", @@ -335,6 +1652,18 @@ ], "Hash": "39b2e002522bfd258039ee4e889e0fd1" }, + "deldir": { + "Package": "deldir", + "Version": "2.0-4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics" + ], + "Hash": "24754fce82729ff85317dd195b6646a8" + }, "digest": { "Package": "digest", "Version": "0.6.36", @@ -346,6 +1675,16 @@ ], "Hash": "fd6824ad91ede64151e93af67df6376b" }, + "dotCall64": { + "Package": "dotCall64", + "Version": "1.1-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "80f374ef8500fcdc5d84a0345b837227" + }, "dplyr": { "Package": "dplyr", "Version": "1.1.4", @@ -369,6 +1708,19 @@ ], "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" }, + "dqrng": { + "Package": "dqrng", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "BH", + "R", + "Rcpp", + "sitmo" + ], + "Hash": "6d7b942d8f615705f89a7883998fc839" + }, "dtplyr": { "Package": "dtplyr", "Version": "1.3.1", @@ -388,6 +1740,32 @@ ], "Hash": "54ed3ea01b11e81a86544faaecfef8e2" }, + "ensembldb": { + "Package": "ensembldb", + "Version": "2.26.0", + "Source": "Bioconductor", + "Requirements": [ + "AnnotationDbi", + "AnnotationFilter", + "Biobase", + "BiocGenerics", + "Biostrings", + "DBI", + "GenomeInfoDb", + "GenomicFeatures", + "GenomicRanges", + "IRanges", + "ProtGenerics", + "R", + "RSQLite", + "Rsamtools", + "S4Vectors", + "curl", + "methods", + "rtracklayer" + ], + "Hash": "6be48b1a96556976a4e9ee6836f88b97" + }, "evaluate": { "Package": "evaluate", "Version": "0.24.0", @@ -418,6 +1796,19 @@ "Repository": "CRAN", "Hash": "680887028577f3fa2a81e410ed0d6e42" }, + "fastDummies": { + "Package": "fastDummies", + "Version": "1.7.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "data.table", + "stringr", + "tibble" + ], + "Hash": "e0f9c0c051e0e8d89996d7f0c400539f" + }, "fastmap": { "Package": "fastmap", "Version": "1.2.0", @@ -425,6 +1816,42 @@ "Repository": "CRAN", "Hash": "aa5e1cd11c2d15497494c5292d7ffcc8" }, + "fastmatch": { + "Package": "fastmatch", + "Version": "1.1-4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "8c406b7284bbaef08e01c6687367f195" + }, + "filelock": { + "Package": "filelock", + "Version": "1.0.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "192053c276525c8495ccfd523aa8f2d1" + }, + "fitdistrplus": { + "Package": "fitdistrplus", + "Version": "1.2-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "MASS", + "R", + "grDevices", + "methods", + "rlang", + "stats", + "survival" + ], + "Hash": "78f15d68e31a6d9a378c546c783bac15" + }, "fontawesome": { "Package": "fontawesome", "Version": "0.5.2", @@ -453,6 +1880,16 @@ ], "Hash": "1a0a9a3d5083d0d573c4214576f1e690" }, + "formatR": { + "Package": "formatR", + "Version": "1.14", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "63cb26d12517c7863f5abb006c5e0f25" + }, "fs": { "Package": "fs", "Version": "1.6.4", @@ -464,6 +1901,58 @@ ], "Hash": "15aeb8c27f5ea5161f9f6a641fafd93a" }, + "futile.logger": { + "Package": "futile.logger", + "Version": "1.4.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "futile.options", + "lambda.r", + "utils" + ], + "Hash": "99f0ace8c05ec7d3683d27083c4f1e7e" + }, + "futile.options": { + "Package": "futile.options", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "0d9bf02413ddc2bbe8da9ce369dcdd2b" + }, + "future": { + "Package": "future", + "Version": "1.34.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "digest", + "globals", + "listenv", + "parallel", + "parallelly", + "utils" + ], + "Hash": "475771e3edb711591476be387c9a8c2e" + }, + "future.apply": { + "Package": "future.apply", + "Version": "1.11.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "future", + "globals", + "parallel", + "utils" + ], + "Hash": "afe1507511629f44572e6c53b9baeb7c" + }, "gargle": { "Package": "gargle", "Version": "1.5.2", @@ -522,6 +2011,73 @@ ], "Hash": "44c6a2f8202d5b7e878ea274b1092426" }, + "ggrepel": { + "Package": "ggrepel", + "Version": "0.9.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "ggplot2", + "grid", + "rlang", + "scales", + "withr" + ], + "Hash": "cc3361e234c4a5050e29697d675764aa" + }, + "ggridges": { + "Package": "ggridges", + "Version": "0.5.6", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "ggplot2", + "grid", + "scales", + "withr" + ], + "Hash": "66488692cb8621bc78df1b9b819497a6" + }, + "glmGamPoi": { + "Package": "glmGamPoi", + "Version": "1.14.3", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "BiocGenerics", + "DelayedArray", + "DelayedMatrixStats", + "HDF5Array", + "MatrixGenerics", + "Rcpp", + "RcppArmadillo", + "SingleCellExperiment", + "SummarizedExperiment", + "beachmat", + "matrixStats", + "methods", + "rlang", + "splines", + "stats", + "utils", + "vctrs" + ], + "Hash": "ccbc016a32fb8e0fe7205497c814e691" + }, + "globals": { + "Package": "globals", + "Version": "0.16.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "codetools" + ], + "Hash": "2580567908cafd4f187c1e5a91e98b7f" + }, "glue": { "Package": "glue", "Version": "1.7.0", @@ -533,6 +2089,17 @@ ], "Hash": "e0b3a53876554bd45879e596cdb10a52" }, + "goftest": { + "Package": "goftest", + "Version": "1.2-3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "stats" + ], + "Hash": "dbe0201f91eeb15918dd3fbf01ee689a" + }, "googledrive": { "Package": "googledrive", "Version": "2.1.1", @@ -586,6 +2153,35 @@ ], "Hash": "d6db1667059d027da730decdc214b959" }, + "gplots": { + "Package": "gplots", + "Version": "3.1.3.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "KernSmooth", + "R", + "caTools", + "gtools", + "methods", + "stats" + ], + "Hash": "f72b5d1ed587f8905e38ee7295e88d80" + }, + "gridExtra": { + "Package": "gridExtra", + "Version": "2.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "grDevices", + "graphics", + "grid", + "gtable", + "utils" + ], + "Hash": "7d7f283939f563670a697165b2cf5560" + }, "gtable": { "Package": "gtable", "Version": "0.3.5", @@ -601,6 +2197,18 @@ ], "Hash": "e18861963cbc65a27736e02b3cd3c4a0" }, + "gtools": { + "Package": "gtools", + "Version": "3.9.5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "methods", + "stats", + "utils" + ], + "Hash": "588d091c35389f1f4a9d533c8d709b35" + }, "haven": { "Package": "haven", "Version": "2.5.4", @@ -622,6 +2230,30 @@ ], "Hash": "9171f898db9d9c4c1b2c745adc2c1ef1" }, + "hdf5r": { + "Package": "hdf5r", + "Version": "1.3.11", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "bit64", + "methods", + "utils" + ], + "Hash": "8f066454d3c306fa34e2885fbbfd4e1c" + }, + "here": { + "Package": "here", + "Version": "1.0.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "rprojroot" + ], + "Hash": "24b224366f9c2e7534d2344d10d59211" + }, "highr": { "Package": "highr", "Version": "0.11", @@ -651,17 +2283,47 @@ "Package": "htmltools", "Version": "0.5.8.1", "Source": "Repository", - "Repository": "CRAN", + "Repository": "CRAN", + "Requirements": [ + "R", + "base64enc", + "digest", + "fastmap", + "grDevices", + "rlang", + "utils" + ], + "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + }, + "htmlwidgets": { + "Package": "htmlwidgets", + "Version": "1.6.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "grDevices", + "htmltools", + "jsonlite", + "knitr", + "rmarkdown", + "yaml" + ], + "Hash": "04291cc45198225444a397606810ac37" + }, + "httpuv": { + "Package": "httpuv", + "Version": "1.6.15", + "Source": "Repository", + "Repository": "RSPM", "Requirements": [ "R", - "base64enc", - "digest", - "fastmap", - "grDevices", - "rlang", + "R6", + "Rcpp", + "later", + "promises", "utils" ], - "Hash": "81d371a9cc60640e74e4ab6ac46dcedc" + "Hash": "d55aa087c47a63ead0f6fc10f8fa1ee0" }, "httr": { "Package": "httr", @@ -678,6 +2340,13 @@ ], "Hash": "ac107251d9d9fd72f0ca8049988f1d7f" }, + "ica": { + "Package": "ica", + "Version": "1.0-3", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "d9b52ced14e24a0e69e228c20eb5eb27" + }, "ids": { "Package": "ids", "Version": "1.0.1", @@ -689,6 +2358,42 @@ ], "Hash": "99df65cfef20e525ed38c3d2577f7190" }, + "igraph": { + "Package": "igraph", + "Version": "2.0.3", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "cli", + "cpp11", + "grDevices", + "graphics", + "lifecycle", + "magrittr", + "methods", + "pkgconfig", + "rlang", + "stats", + "utils", + "vctrs" + ], + "Hash": "c3b7d801d722e26e4cd888e042bf9af5" + }, + "irlba": { + "Package": "irlba", + "Version": "2.3.5.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "methods", + "stats" + ], + "Hash": "acb06a47b732c6251afd16e19c3201ff" + }, "isoband": { "Package": "isoband", "Version": "0.2.7", @@ -747,6 +2452,28 @@ ], "Hash": "b64ec208ac5bc1852b285f665d6368b3" }, + "lambda.r": { + "Package": "lambda.r", + "Version": "1.2.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "formatR" + ], + "Hash": "b1e925c4b9ffeb901bacf812cbe9a6ad" + }, + "later": { + "Package": "later", + "Version": "1.3.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Rcpp", + "rlang" + ], + "Hash": "a3e051d405326b8b0012377434c62b37" + }, "lattice": { "Package": "lattice", "Version": "0.22-6", @@ -762,6 +2489,29 @@ ], "Hash": "cc5ac1ba4c238c7ca9fa6a87ca11a7e2" }, + "lazyeval": { + "Package": "lazyeval", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "d908914ae53b04d4c0c0fd72ecc35370" + }, + "leiden": { + "Package": "leiden", + "Version": "0.4.3.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "igraph", + "methods", + "reticulate" + ], + "Hash": "b21c4ae2bb7935504c42bcdf749c04e6" + }, "lifecycle": { "Package": "lifecycle", "Version": "1.0.4", @@ -775,6 +2525,29 @@ ], "Hash": "b8552d117e1b808b09a832f589b79035" }, + "listenv": { + "Package": "listenv", + "Version": "0.9.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "e2fca3e12e4db979dccc6e519b10a7ee" + }, + "lmtest": { + "Package": "lmtest", + "Version": "0.9-40", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "graphics", + "stats", + "zoo" + ], + "Hash": "c6fafa6cccb1e1dfe7f7d122efd6e6a7" + }, "lubridate": { "Package": "lubridate", "Version": "1.9.3", @@ -798,6 +2571,16 @@ ], "Hash": "7ce2733a9826b3aeb1775d56fd305472" }, + "matrixStats": { + "Package": "matrixStats", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "4b3ea27a19d669c0405b38134d89a9d1" + }, "memoise": { "Package": "memoise", "Version": "2.0.1", @@ -836,6 +2619,18 @@ ], "Hash": "18e9c28c1d3ca1560ce30658b22ce104" }, + "miniUI": { + "Package": "miniUI", + "Version": "0.1.1.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "htmltools", + "shiny", + "utils" + ], + "Hash": "fec5f52652d60615fdb3957b3d74324a" + }, "modelr": { "Package": "modelr", "Version": "0.1.11", @@ -889,6 +2684,47 @@ ], "Hash": "2bcca3848e4734eb3b16103bc9aa4b8e" }, + "parallelly": { + "Package": "parallelly", + "Version": "1.38.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "parallel", + "tools", + "utils" + ], + "Hash": "6e8b139c1904f5e9e14c69db64453bbe" + }, + "patchwork": { + "Package": "patchwork", + "Version": "1.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "cli", + "ggplot2", + "grDevices", + "graphics", + "grid", + "gtable", + "rlang", + "stats", + "utils" + ], + "Hash": "9c8ab14c00ac07e9e04d1664c0b74486" + }, + "pbapply": { + "Package": "pbapply", + "Version": "1.7-2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "parallel" + ], + "Hash": "68a2d681e10cf72f0afa1d84d45380e5" + }, "pillar": { "Package": "pillar", "Version": "1.9.0", @@ -916,6 +2752,132 @@ ], "Hash": "01f28d4278f15c76cddbea05899c5d6f" }, + "plogr": { + "Package": "plogr", + "Version": "0.2.0", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "09eb987710984fc2905c7129c7d85e65" + }, + "plotly": { + "Package": "plotly", + "Version": "4.10.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "RColorBrewer", + "base64enc", + "crosstalk", + "data.table", + "digest", + "dplyr", + "ggplot2", + "htmltools", + "htmlwidgets", + "httr", + "jsonlite", + "lazyeval", + "magrittr", + "promises", + "purrr", + "rlang", + "scales", + "tibble", + "tidyr", + "tools", + "vctrs", + "viridisLite" + ], + "Hash": "a1ac5c03ad5ad12b9d1597e00e23c3dd" + }, + "plyr": { + "Package": "plyr", + "Version": "1.8.9", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "6b8177fd19982f0020743fadbfdbd933" + }, + "png": { + "Package": "png", + "Version": "0.1-8", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "bd54ba8a0a5faded999a7aab6e46b374" + }, + "polyclip": { + "Package": "polyclip", + "Version": "1.10-7", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "5879bf5aae702ffef0a315c44328f984" + }, + "poweRlaw": { + "Package": "poweRlaw", + "Version": "0.80.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "methods", + "parallel", + "pracma", + "stats", + "utils" + ], + "Hash": "5426de2f982c69863ea338e5df80b9ef" + }, + "pracma": { + "Package": "pracma", + "Version": "2.4.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "stats", + "utils" + ], + "Hash": "44bc172d47d1ea0a638d9f299e321203" + }, + "presto": { + "Package": "presto", + "Version": "1.0.0", + "Source": "GitHub", + "RemoteType": "github", + "RemoteHost": "api.github.com", + "RemoteRepo": "presto", + "RemoteUsername": "immunogenomics", + "RemoteRef": "HEAD", + "RemoteSha": "7636b3d0465c468c35853f82f1717d3a64b3c8f6", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppArmadillo", + "data.table", + "dplyr", + "methods", + "purrr", + "rlang", + "stats", + "tibble", + "tidyr", + "utils" + ], + "Hash": "c682f57757230a29913ad71f22aef990" + }, "prettyunits": { "Package": "prettyunits", "Version": "1.2.0", @@ -953,6 +2915,34 @@ ], "Hash": "f4625e061cb2865f111b47ff163a5ca6" }, + "progressr": { + "Package": "progressr", + "Version": "0.14.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "digest", + "utils" + ], + "Hash": "ac50c4ffa8f6a46580dd4d7813add3c4" + }, + "promises": { + "Package": "promises", + "Version": "1.3.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R6", + "Rcpp", + "fastmap", + "later", + "magrittr", + "rlang", + "stats" + ], + "Hash": "434cd5388a3979e74be5c219bcd6e77d" + }, "ps": { "Package": "ps", "Version": "1.7.7", @@ -1080,12 +3070,96 @@ "knitr", "lifecycle", "rlang", - "rmarkdown", - "rstudioapi", + "rmarkdown", + "rstudioapi", + "utils", + "withr" + ], + "Hash": "97b1d5361a24d9fb588db7afe3e5bcbf" + }, + "reshape2": { + "Package": "reshape2", + "Version": "1.4.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "plyr", + "stringr" + ], + "Hash": "bb5996d0bd962d214a11140d77589917" + }, + "restfulr": { + "Package": "restfulr", + "Version": "0.0.15", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "RCurl", + "S4Vectors", + "XML", + "methods", + "rjson", + "yaml" + ], + "Hash": "44651c1e68eda9d462610aca9f15a815" + }, + "reticulate": { + "Package": "reticulate", + "Version": "1.38.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "Rcpp", + "RcppTOML", + "graphics", + "here", + "jsonlite", + "methods", + "png", + "rappdirs", + "rlang", "utils", "withr" ], - "Hash": "97b1d5361a24d9fb588db7afe3e5bcbf" + "Hash": "8810e64cfe0240afe926617a854a38a4" + }, + "rhdf5": { + "Package": "rhdf5", + "Version": "2.46.1", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Requirements": [ + "R", + "Rhdf5lib", + "S4Vectors", + "methods", + "rhdf5filters" + ], + "Hash": "b0a244022c3427cd8213c33804c6b5de" + }, + "rhdf5filters": { + "Package": "rhdf5filters", + "Version": "1.14.1", + "Source": "Bioconductor", + "Requirements": [ + "Rhdf5lib" + ], + "Hash": "d27a2f6a89def6388fad5b0aae026220" + }, + "rjson": { + "Package": "rjson", + "Version": "0.2.21", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "f9da75e6444e95a1baf8ca24909d63b9" }, "rlang": { "Package": "rlang", @@ -1121,6 +3195,16 @@ ], "Hash": "27f9502e1cdbfa195f94e03b0f517484" }, + "rprojroot": { + "Package": "rprojroot", + "Version": "2.0.4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" + }, "rstudioapi": { "Package": "rstudioapi", "Version": "0.16.0", @@ -1128,6 +3212,31 @@ "Repository": "CRAN", "Hash": "96710351d642b70e8f02ddeb237c46a7" }, + "rtracklayer": { + "Package": "rtracklayer", + "Version": "1.62.0", + "Source": "Bioconductor", + "Requirements": [ + "BiocGenerics", + "BiocIO", + "Biostrings", + "GenomeInfoDb", + "GenomicAlignments", + "GenomicRanges", + "IRanges", + "R", + "RCurl", + "Rsamtools", + "S4Vectors", + "XML", + "XVector", + "methods", + "restfulr", + "tools", + "zlibbioc" + ], + "Hash": "e940c622725a16a0069505876051b077" + }, "rvest": { "Package": "rvest", "Version": "1.0.4", @@ -1181,6 +3290,44 @@ ], "Hash": "c19df082ba346b0ffa6f833e92de34d1" }, + "scattermore": { + "Package": "scattermore", + "Version": "1.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "ggplot2", + "grDevices", + "graphics", + "grid", + "scales" + ], + "Hash": "d316e4abb854dd1677f7bd3ad08bc4e8" + }, + "sctransform": { + "Package": "sctransform", + "Version": "0.4.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "MASS", + "Matrix", + "R", + "Rcpp", + "RcppArmadillo", + "dplyr", + "future", + "future.apply", + "ggplot2", + "gridExtra", + "magrittr", + "matrixStats", + "methods", + "reshape2", + "rlang" + ], + "Hash": "0242402f321be0246fb67cf8c63b3572" + }, "selectr": { "Package": "selectr", "Version": "0.4-2", @@ -1194,6 +3341,285 @@ ], "Hash": "3838071b66e0c566d55cc26bd6e27bf4" }, + "seqLogo": { + "Package": "seqLogo", + "Version": "1.68.0", + "Source": "Bioconductor", + "Requirements": [ + "R", + "grDevices", + "grid", + "methods", + "stats4" + ], + "Hash": "422323877fb63ab24ae09cc429a8a4b1" + }, + "shiny": { + "Package": "shiny", + "Version": "1.9.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "R6", + "bslib", + "cachem", + "commonmark", + "crayon", + "fastmap", + "fontawesome", + "glue", + "grDevices", + "htmltools", + "httpuv", + "jsonlite", + "later", + "lifecycle", + "methods", + "mime", + "promises", + "rlang", + "sourcetools", + "tools", + "utils", + "withr", + "xtable" + ], + "Hash": "6a293995a66e12c48d13aa1f957d09c7" + }, + "shinyBS": { + "Package": "shinyBS", + "Version": "0.61.1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "htmltools", + "shiny" + ], + "Hash": "e44255f073ecdc26ba6bc2ce3fcf174d" + }, + "shinydashboard": { + "Package": "shinydashboard", + "Version": "0.7.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "htmltools", + "promises", + "shiny", + "utils" + ], + "Hash": "e418b532e9bb4eb22a714b9a9f1acee7" + }, + "shinyjs": { + "Package": "shinyjs", + "Version": "2.1.0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "digest", + "jsonlite", + "shiny" + ], + "Hash": "802e4786b353a4bb27116957558548d5" + }, + "sitmo": { + "Package": "sitmo", + "Version": "2.0.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp" + ], + "Hash": "c956d93f6768a9789edbc13072b70c78" + }, + "snow": { + "Package": "snow", + "Version": "0.4-4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "utils" + ], + "Hash": "40b74690debd20c57d93d8c246b305d4" + }, + "sourcetools": { + "Package": "sourcetools", + "Version": "0.1.7-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R" + ], + "Hash": "5f5a7629f956619d519205ec475fe647" + }, + "sp": { + "Package": "sp", + "Version": "2.1-4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "grid", + "lattice", + "methods", + "stats", + "utils" + ], + "Hash": "75940133cca2e339afce15a586f85b11" + }, + "spam": { + "Package": "spam", + "Version": "2.10-0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "Rcpp", + "dotCall64", + "grid", + "methods" + ], + "Hash": "ffe1f9e95a4375530747b268f82b5086" + }, + "sparseMatrixStats": { + "Package": "sparseMatrixStats", + "Version": "1.14.0", + "Source": "Bioconductor", + "Requirements": [ + "Matrix", + "MatrixGenerics", + "Rcpp", + "matrixStats", + "methods" + ], + "Hash": "49383d0f6c6152ff7cb594f254c23cc8" + }, + "spatstat.data": { + "Package": "spatstat.data", + "Version": "3.1-2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "spatstat.utils" + ], + "Hash": "69781a4d1dd8d1575d24b8b133e1e09f" + }, + "spatstat.explore": { + "Package": "spatstat.explore", + "Version": "3.3-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "abind", + "goftest", + "grDevices", + "graphics", + "methods", + "nlme", + "spatstat.data", + "spatstat.geom", + "spatstat.random", + "spatstat.sparse", + "spatstat.univar", + "spatstat.utils", + "stats", + "utils" + ], + "Hash": "f067b8be947762544fccff7b7e8a1d09" + }, + "spatstat.geom": { + "Package": "spatstat.geom", + "Version": "3.3-2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "deldir", + "grDevices", + "graphics", + "methods", + "polyclip", + "spatstat.data", + "spatstat.univar", + "spatstat.utils", + "stats", + "utils" + ], + "Hash": "9e8f1f54eb492b1af425b1206220a278" + }, + "spatstat.random": { + "Package": "spatstat.random", + "Version": "3.3-1", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "methods", + "spatstat.data", + "spatstat.geom", + "spatstat.univar", + "spatstat.utils", + "stats", + "utils" + ], + "Hash": "73b89da6fe26aa529564a8dbb5ebbc8a" + }, + "spatstat.sparse": { + "Package": "spatstat.sparse", + "Version": "3.1-0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "abind", + "methods", + "spatstat.utils", + "stats", + "tensor", + "utils" + ], + "Hash": "3a0f41a2a77847f2bc1a909160cace56" + }, + "spatstat.univar": { + "Package": "spatstat.univar", + "Version": "3.0-0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "spatstat.utils", + "stats" + ], + "Hash": "1af5f385ec0df813c9d1bff8859b1056" + }, + "spatstat.utils": { + "Package": "spatstat.utils", + "Version": "3.0-5", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "methods", + "stats", + "utils" + ], + "Hash": "b7af29c1a4e649734ac1d9b423d762c9" + }, "stringi": { "Package": "stringi", "Version": "1.8.4", @@ -1224,6 +3650,22 @@ ], "Hash": "960e2ae9e09656611e0b8214ad543207" }, + "survival": { + "Package": "survival", + "Version": "3.7-0", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "Matrix", + "R", + "graphics", + "methods", + "splines", + "stats", + "utils" + ], + "Hash": "5aaa9cbaf4aba20f8e06fdea1850a398" + }, "sys": { "Package": "sys", "Version": "3.4.2", @@ -1243,6 +3685,13 @@ ], "Hash": "213b6b8ed5afbf934843e6c3b090d418" }, + "tensor": { + "Package": "tensor", + "Version": "1.5", + "Source": "Repository", + "Repository": "RSPM", + "Hash": "25cfab6cf405c15bccf7e69ec39df090" + }, "textshaping": { "Package": "textshaping", "Version": "0.4.0", @@ -1406,6 +3855,24 @@ ], "Hash": "34e965e62a41fcafb1ca60e9b142085b" }, + "uwot": { + "Package": "uwot", + "Version": "0.2.2", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "FNN", + "Matrix", + "RSpectra", + "Rcpp", + "RcppAnnoy", + "RcppProgress", + "dqrng", + "irlba", + "methods" + ], + "Hash": "f693a0ca6d34b02eb432326388021805" + }, "vctrs": { "Package": "vctrs", "Version": "0.6.5", @@ -1493,12 +3960,46 @@ ], "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" }, + "xtable": { + "Package": "xtable", + "Version": "1.8-4", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "stats", + "utils" + ], + "Hash": "b8acdf8af494d9ec19ccb2481a9b11c2" + }, "yaml": { "Package": "yaml", "Version": "2.3.10", "Source": "Repository", "Repository": "CRAN", "Hash": "51dab85c6c98e50a18d7551e9d49f76c" + }, + "zlibbioc": { + "Package": "zlibbioc", + "Version": "1.48.2", + "Source": "Bioconductor", + "Repository": "Bioconductor 3.18", + "Hash": "2344be62c2da4d9e9942b5d8db346e59" + }, + "zoo": { + "Package": "zoo", + "Version": "1.8-12", + "Source": "Repository", + "Repository": "RSPM", + "Requirements": [ + "R", + "grDevices", + "graphics", + "lattice", + "stats", + "utils" + ], + "Hash": "5c715954112b45499fb1dadc6ee6ee3e" } } } From 46c7e8b0a5ca639774bc788809ad463eb2ae299d Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 17:37:03 -0400 Subject: [PATCH 34/47] renv::update() --- analyses/cell-type-wilms-tumor-06/renv.lock | 416 ++++++++++---------- 1 file changed, 210 insertions(+), 206 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/renv.lock b/analyses/cell-type-wilms-tumor-06/renv.lock index 0f14fcf4b..127b75ebf 100644 --- a/analyses/cell-type-wilms-tumor-06/renv.lock +++ b/analyses/cell-type-wilms-tumor-06/renv.lock @@ -14,8 +14,9 @@ "Packages": { "AnnotationDbi": { "Package": "AnnotationDbi", - "Version": "1.64.1", - "Source": "Bioconductor", + "Version": "1.66.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "Biobase", "BiocGenerics", @@ -29,12 +30,13 @@ "stats", "stats4" ], - "Hash": "27587689922e22f60ec9ad0182a0a825" + "Hash": "b7df9c597fb5533fc8248d73b8c703ac" }, "AnnotationFilter": { "Package": "AnnotationFilter", - "Version": "1.26.0", - "Source": "Bioconductor", + "Version": "1.28.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "GenomicRanges", "R", @@ -42,7 +44,7 @@ "methods", "utils" ], - "Hash": "759acec0b1522c1a85c6ba703d4c0ec5" + "Hash": "24e809470aef6d81b25003d775b2fb56" }, "Azimuth": { "Package": "Azimuth", @@ -104,9 +106,9 @@ }, "BSgenome": { "Package": "BSgenome", - "Version": "1.70.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.72.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "BiocIO", @@ -124,7 +126,7 @@ "stats", "utils" ], - "Hash": "41a60ca70f713322ca31026f6b9e052b" + "Hash": "9e00bf24b78d10f32cb8e1dceb5f87ff" }, "BSgenome.Hsapiens.UCSC.hg38": { "Package": "BSgenome.Hsapiens.UCSC.hg38", @@ -139,40 +141,22 @@ }, "Biobase": { "Package": "Biobase", - "Version": "2.62.0", - "Source": "Bioconductor", + "Version": "2.64.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "R", "methods", "utils" ], - "Hash": "38252a34e82d3ff6bb46b4e2252d2dce" - }, - "BiocFileCache": { - "Package": "BiocFileCache", - "Version": "2.10.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "DBI", - "R", - "RSQLite", - "curl", - "dbplyr", - "dplyr", - "filelock", - "httr", - "methods", - "stats", - "utils" - ], - "Hash": "d59a927de08cce606299009cc595b2cb" + "Hash": "9bc4cabd3bfda461409172213d932813" }, "BiocGenerics": { "Package": "BiocGenerics", - "Version": "0.48.1", - "Source": "Bioconductor", + "Version": "0.50.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "R", "graphics", @@ -180,12 +164,13 @@ "stats", "utils" ], - "Hash": "e34278c65d7dffcc08f737bf0944ca9a" + "Hash": "ef32d07aafdd12f24c5827374ae3590d" }, "BiocIO": { "Package": "BiocIO", - "Version": "1.12.0", - "Source": "Bioconductor", + "Version": "1.14.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "R", @@ -193,7 +178,7 @@ "methods", "tools" ], - "Hash": "aa543468283543c9a8dad23a4897be96" + "Hash": "f97a7ef01d364cf20d1946d43a3d526f" }, "BiocManager": { "Package": "BiocManager", @@ -207,8 +192,9 @@ }, "BiocParallel": { "Package": "BiocParallel", - "Version": "1.36.0", - "Source": "Bioconductor", + "Version": "1.38.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BH", "R", @@ -221,7 +207,7 @@ "stats", "utils" ], - "Hash": "6d1689ee8b65614ba6ef4012a67b663a" + "Hash": "7b6e79f86e3d1c23f62c5e2052e848d4" }, "BiocVersion": { "Package": "BiocVersion", @@ -235,9 +221,9 @@ }, "Biostrings": { "Package": "Biostrings", - "Version": "2.70.3", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "2.72.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "GenomeInfoDb", @@ -247,17 +233,17 @@ "XVector", "crayon", "grDevices", - "graphics", "methods", "stats", "utils" ], - "Hash": "86ffa781f132f54e9c963a13fd6cf9fc" + "Hash": "886ff0ed958d6f839ed2e0d01f6853b3" }, "CNEr": { "Package": "CNEr", - "Version": "1.38.0", - "Source": "Bioconductor", + "Version": "1.40.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "Biostrings", @@ -278,12 +264,13 @@ "methods", "parallel", "poweRlaw", + "pwalign", "readr", "reshape2", "rtracklayer", "tools" ], - "Hash": "a6b6bf0df150fe2869b81059eddfb5a2" + "Hash": "ec6831fae6a3941aeacd3a685a9af5da" }, "DBI": { "Package": "DBI", @@ -315,8 +302,9 @@ }, "DelayedArray": { "Package": "DelayedArray", - "Version": "0.28.0", - "Source": "Bioconductor", + "Version": "0.30.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "IRanges", @@ -330,12 +318,13 @@ "stats", "stats4" ], - "Hash": "0e5c84e543a3d04ce64c6f60ed46d7eb" + "Hash": "395472c65cd9d606a1a345687102f299" }, "DelayedMatrixStats": { "Package": "DelayedMatrixStats", - "Version": "1.24.0", - "Source": "Bioconductor", + "Version": "1.26.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "DelayedArray", "IRanges", @@ -345,12 +334,13 @@ "methods", "sparseMatrixStats" ], - "Hash": "71c2d178d33f9d91999f67dc2d53b747" + "Hash": "5d9536664ccddb0eaa68a90afe4ee76e" }, "DirichletMultinomial": { "Package": "DirichletMultinomial", - "Version": "1.44.0", - "Source": "Bioconductor", + "Version": "1.46.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "IRanges", @@ -358,7 +348,7 @@ "methods", "stats4" ], - "Hash": "18131c758b36c44d13e2ca9fdf656343" + "Hash": "220a1c460ab5a750477fb5431e192abd" }, "EnsDb.Hsapiens.v86": { "Package": "EnsDb.Hsapiens.v86", @@ -381,48 +371,50 @@ }, "GO.db": { "Package": "GO.db", - "Version": "3.18.0", - "Source": "Bioconductor", + "Version": "3.19.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/data/annotation", "Requirements": [ "AnnotationDbi", "R", "methods" ], - "Hash": "1ec786f8b958a01ceb245883701873b1" + "Hash": "46bfc38370acea3503c223347915e43b" }, "GenomeInfoDb": { "Package": "GenomeInfoDb", - "Version": "1.38.8", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.40.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "GenomeInfoDbData", "IRanges", "R", - "RCurl", "S4Vectors", + "UCSC.utils", "methods", "stats", "stats4", "utils" ], - "Hash": "155053909d2831bfac154a1118151d6b" + "Hash": "171e9becd9bb948b9e64eb3759208c94" }, "GenomeInfoDbData": { "Package": "GenomeInfoDbData", - "Version": "1.2.11", - "Source": "Bioconductor", + "Version": "1.2.12", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/data/annotation", "Requirements": [ "R" ], - "Hash": "10f32956181d1d46bd8402c93ac193e8" + "Hash": "c3c792a7b7f2677be56e8632c5b7543d" }, "GenomicAlignments": { "Package": "GenomicAlignments", - "Version": "1.38.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.40.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "BiocParallel", @@ -438,42 +430,36 @@ "stats", "utils" ], - "Hash": "3447de036330c8c2ae54f064c8f4e299" + "Hash": "e539709764587c581b31e446dc84d7b8" }, "GenomicFeatures": { "Package": "GenomicFeatures", - "Version": "1.54.4", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.56.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "AnnotationDbi", - "Biobase", "BiocGenerics", - "BiocIO", "Biostrings", "DBI", "GenomeInfoDb", "GenomicRanges", "IRanges", "R", - "RSQLite", "S4Vectors", "XVector", - "biomaRt", - "httr", "methods", - "rjson", "rtracklayer", "stats", - "tools", "utils" ], - "Hash": "28667ac05b72cf841adf792154f387de" + "Hash": "0d19619d13b06b9dea85993ce7f09c52" }, "GenomicRanges": { "Package": "GenomicRanges", - "Version": "1.54.1", - "Source": "Bioconductor", + "Version": "1.56.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "GenomeInfoDb", @@ -486,13 +472,13 @@ "stats4", "utils" ], - "Hash": "7e0c1399af35369312d9c399454374e8" + "Hash": "a3c822ef3c124828e25e7a9611beeb50" }, "HDF5Array": { "Package": "HDF5Array", - "Version": "1.30.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.32.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "DelayedArray", @@ -509,12 +495,13 @@ "tools", "utils" ], - "Hash": "9b8deb4fd34fa439c16c829457d1968f" + "Hash": "b10ddb24baf506cf7b4bc868ae65b984" }, "IRanges": { "Package": "IRanges", - "Version": "2.36.0", - "Source": "Bioconductor", + "Version": "2.38.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "R", @@ -524,7 +511,7 @@ "stats4", "utils" ], - "Hash": "f98500eeb93e8a66ad65be955a848595" + "Hash": "066f3c5d6b022ed62c91ce49e4d8f619" }, "JASPAR2020": { "Package": "JASPAR2020", @@ -538,8 +525,9 @@ }, "KEGGREST": { "Package": "KEGGREST", - "Version": "1.42.0", - "Source": "Bioconductor", + "Version": "1.44.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "Biostrings", "R", @@ -547,7 +535,7 @@ "methods", "png" ], - "Hash": "8d6e9f4dce69aec9c588c27ae79be08e" + "Hash": "017f19c09477c0473073518db9076ac1" }, "KernSmooth": { "Package": "KernSmooth", @@ -594,22 +582,24 @@ }, "MatrixGenerics": { "Package": "MatrixGenerics", - "Version": "1.14.0", - "Source": "Bioconductor", + "Version": "1.16.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "matrixStats", "methods" ], - "Hash": "088cd2077b5619fcb7b373b1a45174e7" + "Hash": "152dbbcde6a9a7c7f3beef79b68cd76a" }, "ProtGenerics": { "Package": "ProtGenerics", - "Version": "1.34.0", - "Source": "Bioconductor", + "Version": "1.36.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "methods" ], - "Hash": "f9cf8f8dac1d3e1bd9a5e3215286b700" + "Hash": "a3737c10efc865abfa9d204ca8735b74" }, "R.methodsS3": { "Package": "R.methodsS3", @@ -828,28 +818,30 @@ }, "Rhdf5lib": { "Package": "Rhdf5lib", - "Version": "1.24.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.26.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "R" ], - "Hash": "3cf103db29d75af0221d71946509a30c" + "Hash": "c92ba8b9a2c5c9ff600a1062a3b7b727" }, "Rhtslib": { "Package": "Rhtslib", - "Version": "2.4.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "3.0.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ + "tools", "zlibbioc" ], - "Hash": "ee7abc23ddeada73fedfee74c633bffe" + "Hash": "5d6514cd44a0106581e3310f3972a82e" }, "Rsamtools": { "Package": "Rsamtools", - "Version": "2.18.0", - "Source": "Bioconductor", + "Version": "2.20.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "BiocParallel", @@ -867,7 +859,7 @@ "utils", "zlibbioc" ], - "Hash": "242517db56d7fe7214120ecc77a5890d" + "Hash": "9762f24dcbdbd1626173c516bb64792c" }, "Rtsne": { "Package": "Rtsne", @@ -882,9 +874,9 @@ }, "S4Arrays": { "Package": "S4Arrays", - "Version": "1.2.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.4.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "IRanges", @@ -896,13 +888,13 @@ "methods", "stats" ], - "Hash": "3213a9826adb8f48e51af1e7b30fa568" + "Hash": "deeed4802c5132e88f24a432a1caf5e0" }, "S4Vectors": { "Package": "S4Vectors", - "Version": "0.40.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "0.42.1", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "R", @@ -911,7 +903,7 @@ "stats4", "utils" ], - "Hash": "1716e201f81ced0f456dd5ec85fe20f8" + "Hash": "86398fc7c5f6be4ba29fe23ed08c2da6" }, "SCpubr": { "Package": "SCpubr", @@ -1115,8 +1107,9 @@ }, "SingleCellExperiment": { "Package": "SingleCellExperiment", - "Version": "1.24.0", - "Source": "Bioconductor", + "Version": "1.26.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "DelayedArray", @@ -1127,13 +1120,13 @@ "stats", "utils" ], - "Hash": "e21b3571ce76eb4dfe6bf7900960aa6a" + "Hash": "4476ad434a5e7887884521417cab3764" }, "SparseArray": { "Package": "SparseArray", - "Version": "1.2.4", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.4.8", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "IRanges", @@ -1145,14 +1138,16 @@ "XVector", "matrixStats", "methods", - "stats" + "stats", + "utils" ], - "Hash": "391092e7b81373ab624bd6471cebccd4" + "Hash": "97f70ff11c14edd379ee2429228cbb60" }, "SummarizedExperiment": { "Package": "SummarizedExperiment", - "Version": "1.32.0", - "Source": "Bioconductor", + "Version": "1.34.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "Biobase", "BiocGenerics", @@ -1170,12 +1165,13 @@ "tools", "utils" ], - "Hash": "caee529bf9710ff6fe1776612fcaa266" + "Hash": "2f6c8cc972ed6aee07c96e3dff729d15" }, "TFBSTools": { "Package": "TFBSTools", - "Version": "1.40.0", - "Source": "Bioconductor", + "Version": "1.42.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BSgenome", "Biobase", @@ -1199,10 +1195,11 @@ "gtools", "methods", "parallel", + "pwalign", "rtracklayer", "seqLogo" ], - "Hash": "2d81d93dc84b76c570719689328682bd" + "Hash": "08c6da44e347e91d17156489dc5295fb" }, "TFMPvalue": { "Package": "TFMPvalue", @@ -1215,6 +1212,20 @@ ], "Hash": "d2974f239e0c14cade60062fe2cbdf0b" }, + "UCSC.utils": { + "Package": "UCSC.utils", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", + "Requirements": [ + "S4Vectors", + "httr", + "jsonlite", + "methods", + "stats" + ], + "Hash": "83d45b690bffd09d1980c224ef329f5b" + }, "XML": { "Package": "XML", "Version": "3.99-0.17", @@ -1229,8 +1240,9 @@ }, "XVector": { "Package": "XVector", - "Version": "0.42.0", - "Source": "Bioconductor", + "Version": "0.44.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "IRanges", @@ -1241,7 +1253,7 @@ "utils", "zlibbioc" ], - "Hash": "65c0b6bca03f88758f86ef0aa18c4873" + "Hash": "4245b9938ac74c0dbddbebbec6036ab4" }, "abind": { "Package": "abind", @@ -1257,8 +1269,9 @@ }, "annotate": { "Package": "annotate", - "Version": "1.80.0", - "Source": "Bioconductor", + "Version": "1.82.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "AnnotationDbi", "Biobase", @@ -1273,7 +1286,7 @@ "utils", "xtable" ], - "Hash": "08359e5ce909c14a936ec1f9712ca830" + "Hash": "659c0a3bfad51dc798e4b4eb0f2cdedc" }, "askpass": { "Package": "askpass", @@ -1307,9 +1320,9 @@ }, "beachmat": { "Package": "beachmat", - "Version": "2.18.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "2.20.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "DelayedArray", @@ -1318,27 +1331,7 @@ "SparseArray", "methods" ], - "Hash": "c1c423ca7149d9e7f55d1e609342c2bd" - }, - "biomaRt": { - "Package": "biomaRt", - "Version": "2.58.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Requirements": [ - "AnnotationDbi", - "BiocFileCache", - "XML", - "digest", - "httr", - "methods", - "progress", - "rappdirs", - "stringr", - "utils", - "xml2" - ], - "Hash": "d6e043a6bfb4e2e256d00b8eee9c4266" + "Hash": "10e94b1bce9070632a40c6b873f8b2d4" }, "bit": { "Package": "bit", @@ -1742,8 +1735,9 @@ }, "ensembldb": { "Package": "ensembldb", - "Version": "2.26.0", - "Source": "Bioconductor", + "Version": "2.28.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "AnnotationDbi", "AnnotationFilter", @@ -1764,7 +1758,7 @@ "methods", "rtracklayer" ], - "Hash": "6be48b1a96556976a4e9ee6836f88b97" + "Hash": "f9a5e52468ec832a839c012e15c41c15" }, "evaluate": { "Package": "evaluate", @@ -1826,16 +1820,6 @@ ], "Hash": "8c406b7284bbaef08e01c6687367f195" }, - "filelock": { - "Package": "filelock", - "Version": "1.0.3", - "Source": "Repository", - "Repository": "RSPM", - "Requirements": [ - "R" - ], - "Hash": "192053c276525c8495ccfd523aa8f2d1" - }, "fitdistrplus": { "Package": "fitdistrplus", "Version": "1.2-1", @@ -2043,9 +2027,9 @@ }, "glmGamPoi": { "Package": "glmGamPoi", - "Version": "1.14.3", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "1.16.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "DelayedArray", @@ -2065,7 +2049,7 @@ "utils", "vctrs" ], - "Hash": "ccbc016a32fb8e0fe7205497c814e691" + "Hash": "21e305cf5faebb13bee698a5a1c4bced" }, "globals": { "Package": "globals", @@ -2969,6 +2953,22 @@ ], "Hash": "1cba04a4e9414bdefc9dcaa99649a8dc" }, + "pwalign": { + "Package": "pwalign", + "Version": "1.0.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", + "Requirements": [ + "BiocGenerics", + "Biostrings", + "IRanges", + "S4Vectors", + "XVector", + "methods", + "utils" + ], + "Hash": "ab816689019959eb97edc8ff9595c7be" + }, "ragg": { "Package": "ragg", "Version": "1.3.2", @@ -3130,26 +3130,26 @@ }, "rhdf5": { "Package": "rhdf5", - "Version": "2.46.1", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", + "Version": "2.48.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "R", "Rhdf5lib", - "S4Vectors", "methods", "rhdf5filters" ], - "Hash": "b0a244022c3427cd8213c33804c6b5de" + "Hash": "74d8c5aeb96d090ce8efc9ffd16afa2b" }, "rhdf5filters": { "Package": "rhdf5filters", - "Version": "1.14.1", - "Source": "Bioconductor", + "Version": "1.16.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "Rhdf5lib" ], - "Hash": "d27a2f6a89def6388fad5b0aae026220" + "Hash": "99e15369f8fb17dc188377234de13fc6" }, "rjson": { "Package": "rjson", @@ -3214,8 +3214,9 @@ }, "rtracklayer": { "Package": "rtracklayer", - "Version": "1.62.0", - "Source": "Bioconductor", + "Version": "1.64.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "BiocGenerics", "BiocIO", @@ -3225,17 +3226,18 @@ "GenomicRanges", "IRanges", "R", - "RCurl", "Rsamtools", "S4Vectors", "XML", "XVector", + "curl", + "httr", "methods", "restfulr", "tools", "zlibbioc" ], - "Hash": "e940c622725a16a0069505876051b077" + "Hash": "3d6f004fce582bd7d68e2e18d44abbc1" }, "rvest": { "Package": "rvest", @@ -3343,8 +3345,9 @@ }, "seqLogo": { "Package": "seqLogo", - "Version": "1.68.0", - "Source": "Bioconductor", + "Version": "1.70.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "R", "grDevices", @@ -3352,7 +3355,7 @@ "methods", "stats4" ], - "Hash": "422323877fb63ab24ae09cc429a8a4b1" + "Hash": "8d3102283e7ba083042118b22d805510" }, "shiny": { "Package": "shiny", @@ -3490,8 +3493,9 @@ }, "sparseMatrixStats": { "Package": "sparseMatrixStats", - "Version": "1.14.0", - "Source": "Bioconductor", + "Version": "1.16.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", "Requirements": [ "Matrix", "MatrixGenerics", @@ -3499,7 +3503,7 @@ "matrixStats", "methods" ], - "Hash": "49383d0f6c6152ff7cb594f254c23cc8" + "Hash": "7e500a5a527460ca0406473bdcade286" }, "spatstat.data": { "Package": "spatstat.data", @@ -3981,10 +3985,10 @@ }, "zlibbioc": { "Package": "zlibbioc", - "Version": "1.48.2", - "Source": "Bioconductor", - "Repository": "Bioconductor 3.18", - "Hash": "2344be62c2da4d9e9942b5d8db346e59" + "Version": "1.50.0", + "Source": "Repository", + "Repository": "https://bioconductor.org/packages/3.19/bioc", + "Hash": "3db02e3c460e1c852365df117a2b441b" }, "zoo": { "Package": "zoo", From ebd2bf16813e9e4ed35b2059fdee9b2897da6c1e Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 17:46:34 -0400 Subject: [PATCH 35/47] Stub in run workflow; don't uncomment on PR --- .../run_cell-type-wilms-tumor-06.yml | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/run_cell-type-wilms-tumor-06.yml diff --git a/.github/workflows/run_cell-type-wilms-tumor-06.yml b/.github/workflows/run_cell-type-wilms-tumor-06.yml new file mode 100644 index 000000000..a79b02314 --- /dev/null +++ b/.github/workflows/run_cell-type-wilms-tumor-06.yml @@ -0,0 +1,59 @@ +# This is a workflow to run the cell-type-wilms-tumor-06 module +# +# Analysis modules are run based on three triggers: +# - Manual trigger +# - On pull requests where code in the module has changed +# - As a reusable workflow called from a separate workflow which periodically runs all modules +# +# At initialization, only the manual trigger is active + +name: Run cell-type-wilms-tumor-06 analysis module +env: + MODULE_PATH: analyses/cell-type-wilms-tumor-06 + AWS_DEFAULT_REGION: us-east-2 + +concurrency: + # only one run per branch at a time + group: "run_cell-type-wilms-tumor-06_${{ github.ref }}" + cancel-in-progress: true + +on: + workflow_dispatch: + # workflow_call: + # pull_request: + # branches: + # - main + # paths: + # - "analyses/cell-type-wilms-tumor-06/**" + +jobs: + run-module: + if: github.repository_owner == 'AlexsLemonade' + runs-on: ubuntu-latest + + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Set up R + uses: r-lib/actions/setup-r@v2 + with: + r-version: 4.4.0 + use-public-rspm: true + + - name: Set up pandoc + uses: r-lib/actions/setup-pandoc@v2 + + - name: Set up renv + uses: r-lib/actions/setup-renv@v2 + with: + working-directory: ${{ env.MODULE_PATH }} + + # Update this step as needed to download the desired data + - name: Download test data + run: ./download-data.py --test-data --format SCE + + - name: Run analysis module + run: | + cd ${MODULE_PATH} + # run module script(s) here From 41bf440432ec62677452fcdaa1758a6a6fac7a6e Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 17:47:05 -0400 Subject: [PATCH 36/47] Add Docker build and push for Wilms cell typing module --- .../docker_cell-type-wilms-tumor-06.yml | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .github/workflows/docker_cell-type-wilms-tumor-06.yml diff --git a/.github/workflows/docker_cell-type-wilms-tumor-06.yml b/.github/workflows/docker_cell-type-wilms-tumor-06.yml new file mode 100644 index 000000000..e4ba2a78a --- /dev/null +++ b/.github/workflows/docker_cell-type-wilms-tumor-06.yml @@ -0,0 +1,55 @@ +# This is a workflow to build the docker image for the cell-type-wilms-tumor-06 module +# +# Docker modules are run on pull requests when code for files that affect the Docker image have changed. +# If other files are used during the Docker build, they should be added to `paths` +# +# At module initialization, this workflow is inactive, and needs to be activated manually + +name: Build docker image for cell-type-wilms-tumor-06 + +concurrency: + # only one run per branch at a time + group: "docker_cell-type-wilms-tumor-06_${{ github.ref }}" + cancel-in-progress: true + +on: + pull_request: + branches: + - main + paths: + - "analyses/cell-type-wilms-tumor-06/Dockerfile" + - "analyses/cell-type-wilms-tumor-06/.dockerignore" + - "analyses/cell-type-wilms-tumor-06/renv.lock" + - "analyses/cell-type-wilms-tumor-06/conda-lock.yml" + workflow_dispatch: + inputs: + push-ecr: + description: "Push to AWS ECR" + type: boolean + required: true + +jobs: + test-build: + name: Test Build Docker Image + if: github.event_name == 'pull_request' || (contains(github.event_name, 'workflow_') && !inputs.push-ecr) + runs-on: ubuntu-latest + + steps: + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Build image + uses: docker/build-push-action@v5 + with: + context: "{{defaultContext}}:analyses/cell-type-wilms-tumor-06" + push: false + cache-from: type=gha + cache-to: type=gha,mode=max + + build-push: + name: Build and Push Docker Image + if: github.repository_owner == 'AlexsLemonade' && (github.event_name == 'push' || inputs.push-ecr) + uses: ./.github/workflows/build-push-docker-module.yml + with: + module: "cell-type-wilms-tumor-06" + push-ecr: true From afaff4588293a84ff827951304326cb766f8ebc9 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 18:08:00 -0400 Subject: [PATCH 37/47] Add to list of modules with Docker images --- .github/workflows/docker_all-modules.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/docker_all-modules.yml b/.github/workflows/docker_all-modules.yml index 6c93a8dfd..0f1a45fc0 100644 --- a/.github/workflows/docker_all-modules.yml +++ b/.github/workflows/docker_all-modules.yml @@ -38,6 +38,7 @@ jobs: - simulate-sce - cell-type-ewings - doublet-detection + - cell-type-wilms-tumor-06 uses: ./.github/workflows/build-push-docker-module.yml if: github.repository_owner == 'AlexsLemonade' with: From d3bce0ea4525a55953a5866a3c939fc9e0995f62 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sat, 3 Aug 2024 19:47:34 -0400 Subject: [PATCH 38/47] Document experience with Docker and renv --- analyses/cell-type-wilms-tumor-06/README.md | 57 ++++++++++++++++----- 1 file changed, 43 insertions(+), 14 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 41abba550..d741e3836 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -1,8 +1,8 @@ -# Wilms Tumor Dataset Annotation (SCPCP000006) +# Wilms Tumor Dataset Annotation (SCPCP000006) -Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an exacerbated intra- and inter- tumor heterogeneity. -The genetic landscape of WT is very diverse in each of the histological contingents. -The COG classifies WT patients into two groups: the favorable histology and diffuse anaplasia. +Wilms tumor (WT) is the most common pediatric kidney cancer characterized by an exacerbated intra- and inter- tumor heterogeneity. +The genetic landscape of WT is very diverse in each of the histological contingents. +The COG classifies WT patients into two groups: the favorable histology and diffuse anaplasia. Each of these groups is composed of the blastemal, epithelial, and stromal populations of cancer cells in different proportions, as well as cells from the normal kidney, mostly kidney epithelial cells, endothelial cells, immune cells and normal stromal cells (fibroblast). ## Description @@ -24,9 +24,9 @@ The analysis is/will be divided as the following: - [ ] Notebook: explore results from step 6, integrate all samples together and annotate the dataset using (i) metadatafile, (ii) CNV information, (iii) label transfer information ## Usage -From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). -Please before running the script, make sure that the paths are correct. -You can also simply have a look at the html reports in the notebook folder. +From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). +Please before running the script, make sure that the paths are correct. +You can also simply have a look at the html reports in the notebook folder. Here, no need to run anything, we try to guide you through the analysis. Have a look at the code using the unhide code button on the top right of each chunk! ## Input files @@ -57,7 +57,7 @@ Of note, this requires AWS CLI setup to run as intended: https://openscpca.readt ### sample metadata -The OpenScPCA-analysis/data/current/SCPCP000006/single_cell_metadata.tsv file contains clinical information related to the samples in the dataset. +The OpenScPCA-analysis/data/current/SCPCP000006/single_cell_metadata.tsv file contains clinical information related to the samples in the dataset. Some information can be helpful for annotation and validation: - treatment: Some of the samples have been pre-treated with chemotherapy and some are upfront resection. @@ -68,7 +68,7 @@ Some differenices are expected, some marker genes or pathways are associated wit ## Output files -## Marker sets +## Marker sets This folder is a resource for later validation of the annotated cell types. @@ -109,7 +109,7 @@ This folder is a resource for later validation of the annotated cell types. ### The table GeneticAlterations_metadata.csv contains the following column and information: - alteration contains the number and portion of the affected chromosome - gain_loss contains the information regarding the gain or loss of the corresponding genetic alteration -- cell_class is "malignant" +- cell_class is "malignant" - cell_type contains the list of the malignant cell types that are attributed to the marker gene, either blastemal, stromal, epithelial or NA if none of the three histology is more prone to the described genetic alteration - DOI contains the list of main publication identifiers supporting the choice of the genetic alteration - comment can be empty or contains any additional information @@ -135,14 +135,43 @@ The main packages used are: - DT for table visualization - DElegate for differential expression analysis -For complete reproducibility of the results, you can build and run the docker image using the Dockerfile. This will allow you to work on RStudio (R version 4.4.1) from the based image bioconductor/tidyverse:3.19. +### Docker -In the config.yaml file, define your system specific parameter and paths (e.g. to the data). -Execute the run.sh file and open RStudio in your browser (http://localhost:8080/). -By default, username = rstudio, password = wordpass. +To build the Docker image, run the following from this directory: +```shell +docker buildx build . -t openscpca/cell-type-wilms-tumor-06 +``` + +The image will also be available from ECR: + +To run the container and develop in RStudio Server, run the following **from the root of the repository**, Replacing `{PASSWORD}`, including the curly braces, with a password of your choosing: + +```shell +docker run \ + --mount type=bind,target=/home/rstudio/OpenScPCA-analysis,source=$PWD \ + -e PASSWORD={PASSWORD} \ + -p 8787:8787 \ + public.ecr.aws/openscpca/cell-type-wilms-tumor-06:latest +``` + +This will pull the latest version of the image from ECR if you do not yet have a copy locally. + +Navigate to and log in with the username `rstudio` and the password you set. + +Within RStudio Server, `OpenScPCA-analysis` will point to your local copy of the repository. + +#### A note on Apple Silicon + +If you are on a Mac with an M series chip, you will not be able to use RStudio Server if you are using a `linux/amd64` or `linux/x86_84` (like the ones available from ECR). +You must build an ARM image locally to be able to use RStudio Server within the container. +### renv +This module uses `renv`. +If you are using RStudio Server within the container, the `renv` project will not be activated by default. +You can install packages within the container and use `renv::snapshot()` to update the lockfile without activating the project without a problem in our testing. +The `renv` lockfile is used to install R packages in the Docker image. ## Computational resources From dd17e27d1702078a6d3ab1bcfb619d55a88a8c6b Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sun, 4 Aug 2024 07:20:33 -0400 Subject: [PATCH 39/47] Remove files specific to Halbritter lab setup and stop tracking --- analyses/cell-type-wilms-tumor-06/.gitignore | 4 +++ analyses/cell-type-wilms-tumor-06/config.yaml | 12 --------- analyses/cell-type-wilms-tumor-06/run.sh | 26 ------------------- 3 files changed, 4 insertions(+), 38 deletions(-) delete mode 100644 analyses/cell-type-wilms-tumor-06/config.yaml delete mode 100644 analyses/cell-type-wilms-tumor-06/run.sh diff --git a/analyses/cell-type-wilms-tumor-06/.gitignore b/analyses/cell-type-wilms-tumor-06/.gitignore index 418755f52..7ceb4d3e6 100644 --- a/analyses/cell-type-wilms-tumor-06/.gitignore +++ b/analyses/cell-type-wilms-tumor-06/.gitignore @@ -5,3 +5,7 @@ # Ignore the scratch directory (but keep it present) /scratch/* !/scratch/.gitkeep + +# Ignore Docker-related files specific to module author's system +config.yaml +run.sh diff --git a/analyses/cell-type-wilms-tumor-06/config.yaml b/analyses/cell-type-wilms-tumor-06/config.yaml deleted file mode 100644 index 37c992179..000000000 --- a/analyses/cell-type-wilms-tumor-06/config.yaml +++ /dev/null @@ -1,12 +0,0 @@ -project_name: maudp_ScPCA -project_docker: cancerbits/dockr:maudp_ScPCAOpen_podman - - -# SYSTEM-SPECIFIC PARAMETERS (please change to match your local setup): -project_root_host: $CODEBASE/OpenScPCA-analysis/ - - -# PATHS AS VISIBLE WITHIN RSTUDIO (should not be changed): -project_root: /home/rstudio -tmp_root: /home/rstudio/mnt_tmp/ - diff --git a/analyses/cell-type-wilms-tumor-06/run.sh b/analyses/cell-type-wilms-tumor-06/run.sh deleted file mode 100644 index 6933e8f3b..000000000 --- a/analyses/cell-type-wilms-tumor-06/run.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - - -# parse config parameters: -source bash/parse_yaml.sh -eval $(parse_yaml config.yaml CONF_) - -# ids defined in image for the rstudio user -uid=1000 -gid=1000 -# subid ranges on host -subuidSize=$(( $(podman info --format "{{ range .Host.IDMappings.UIDMap }}+{{.Size }}{{end }}" ) - 1 )) -subgidSize=$(( $(podman info --format "{{ range .Host.IDMappings.GIDMap }}+{{.Size }}{{end }}" ) - 1 )) - - -podman run -d --rm \ - --name ${CONF_project_name}_${USER} \ - -e RUNROOTLESS=false \ - --uidmap $uid:0:1 --uidmap 0:1:$uid --uidmap $(($uid+1)):$(($uid+1)):$(($subuidSize-$uid)) \ - --gidmap $gid:0:1 --gidmap 0:1:$gid --gidmap $(($gid+1)):$(($gid+1)):$(($subgidSize-$gid)) \ - --group-add=keep-groups \ - -p 8080:8787 \ - -e PASSWORD=wordpass \ - -e TZ=Europe/Vienna \ - --volume=$(realpath ${CONF_project_root_host%%*##*( )}):${CONF_project_root} \ - ${CONF_project_docker} From 650df7b6cfd5f1066eb6cb432fe83815235dcb88 Mon Sep 17 00:00:00 2001 From: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> Date: Sun, 4 Aug 2024 07:25:16 -0400 Subject: [PATCH 40/47] Add newline --- analyses/cell-type-wilms-tumor-06/components/dependencies.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/analyses/cell-type-wilms-tumor-06/components/dependencies.R b/analyses/cell-type-wilms-tumor-06/components/dependencies.R index 65bcf9b54..d4071c847 100644 --- a/analyses/cell-type-wilms-tumor-06/components/dependencies.R +++ b/analyses/cell-type-wilms-tumor-06/components/dependencies.R @@ -4,5 +4,5 @@ library(tidyverse) # Single-cell packages library(Seurat) # remotes::install_github("satijalab/seurat@v5.1.0") library(presto) # remotes::install_github("immunogenomics/presto") -library(Azimuth) # remotes::install_github("satijalab/azimuth") -library(SCpubr) \ No newline at end of file +library(Azimuth) # remotes::install_github("satijalab/azimuth") +library(SCpubr) From dca3199f5be337c16196e792fc414a6ae4af924d Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 09:43:24 +0200 Subject: [PATCH 41/47] Create run.sh --- analyses/cell-type-wilms-tumor-06/run.sh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 analyses/cell-type-wilms-tumor-06/run.sh diff --git a/analyses/cell-type-wilms-tumor-06/run.sh b/analyses/cell-type-wilms-tumor-06/run.sh new file mode 100644 index 000000000..ab6ad6b82 --- /dev/null +++ b/analyses/cell-type-wilms-tumor-06/run.sh @@ -0,0 +1,21 @@ +# ids defined in image for the rstudio user, if not define as such, it is not possible to login to RStudio +uid=1000 +gid=1000 +# subid ranges on host +subuidSize=$(( $(podman info --format "{{ range .Host.IDMappings.UIDMap }}+{{.Size }}{{end }}" ) - 1 )) +subgidSize=$(( $(podman info --format "{{ range .Host.IDMappings.GIDMap }}+{{.Size }}{{end }}" ) - 1 )) + +# go to the OpenScPCA-analysis folder before mounting $PWD to keep access to OpenScPCA-analysis/data in the R Session +cd \..\..\ + +podman run \ + --name maudp_ScPCA_wilms \ + -e RUNROOTLESS=false \ + --uidmap $uid:0:1 --uidmap 0:1:$uid --uidmap $(($uid+1)):$(($uid+1)):$(($subuidSize-$uid)) \ + --gidmap $gid:0:1 --gidmap 0:1:$gid --gidmap $(($gid+1)):$(($gid+1)):$(($subgidSize-$gid)) \ + --group-add=keep-groups \ + --volume=$PWD/:/home/rstudio \ + -e PASSWORD=wordpass \ + -p 8787:8787 \ + -e TZ=Europe/Vienna \ + openscpca/cell-type-wilms-tumor-06:latest From 410ff394ad155dfebc606fa7522b45a4efe2becf Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:11:01 +0200 Subject: [PATCH 42/47] DOI Correction --- analyses/cell-type-wilms-tumor-06/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index d741e3836..132b08ca3 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -117,7 +117,7 @@ This folder is a resource for later validation of the annotated cell types. |alteration|gain_loss|cell_class|cell_type|DOI|PMID|comment |---|---|---|---|---|---|---| |11p13|loss|malignant|NA|10.1242/dev.153163|NA|NA| -|11p15|loss|malignant|NA|10.1128/mcb.9.4.1799|NA|NA| +|11p15|loss|malignant|NA|10.1128/mcb.9.4.1799-1803.1989|NA|NA| |16q|loss|malignant|NA|NA|1317258|Associated_with_relapse| |1p|loss|malignant|NA|NA|8162576|Associated_with_relapse| |1q|gain|malignant|NA|10.1016/S0002-9440(10)63982-X|NA|Associated_with_relapse| From 4d6e2321b7c188a00f382af7c0c1546be6f7adcd Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:11:29 +0200 Subject: [PATCH 43/47] DOI Correction --- .../marker-sets/GeneticAlterations_metadata.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/marker-sets/GeneticAlterations_metadata.csv b/analyses/cell-type-wilms-tumor-06/marker-sets/GeneticAlterations_metadata.csv index 1d6823153..42479f0e7 100644 --- a/analyses/cell-type-wilms-tumor-06/marker-sets/GeneticAlterations_metadata.csv +++ b/analyses/cell-type-wilms-tumor-06/marker-sets/GeneticAlterations_metadata.csv @@ -1,6 +1,6 @@ alteration,gain_loss,cell_class,cell_type,DOI,PMID,comment 11p13,loss,malignant,NA,10.1242/dev.153163,NA,NA -11p15,loss,malignant,NA,10.1128/mcb.9.4.1799,NA,NA +11p15,loss,malignant,NA,10.1128/mcb.9.4.1799-1803.1989,NA,NA 16q,loss,malignant,NA,NA,1317258,Associated_with_relapse 1p,loss,malignant,NA,NA,8162576,Associated_with_relapse 1q,gain,malignant,NA,10.1016/S0002-9440(10)63982-X,NA,Associated_with_relapse From 5559521bbd942be6abdcec41179a181af5ae7029 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:16:32 +0200 Subject: [PATCH 44/47] Rename run.sh to run-podman-internal.sh --- .../cell-type-wilms-tumor-06/{run.sh => run-podman-internal.sh} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename analyses/cell-type-wilms-tumor-06/{run.sh => run-podman-internal.sh} (100%) diff --git a/analyses/cell-type-wilms-tumor-06/run.sh b/analyses/cell-type-wilms-tumor-06/run-podman-internal.sh similarity index 100% rename from analyses/cell-type-wilms-tumor-06/run.sh rename to analyses/cell-type-wilms-tumor-06/run-podman-internal.sh From edd0e01d8f9188426a1ce75ac3a1fbce5476c848 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:25:03 +0200 Subject: [PATCH 45/47] Update run-podman-internal.sh --- analyses/cell-type-wilms-tumor-06/run-podman-internal.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/run-podman-internal.sh b/analyses/cell-type-wilms-tumor-06/run-podman-internal.sh index ab6ad6b82..d638a786d 100644 --- a/analyses/cell-type-wilms-tumor-06/run-podman-internal.sh +++ b/analyses/cell-type-wilms-tumor-06/run-podman-internal.sh @@ -15,7 +15,7 @@ podman run \ --gidmap $gid:0:1 --gidmap 0:1:$gid --gidmap $(($gid+1)):$(($gid+1)):$(($subgidSize-$gid)) \ --group-add=keep-groups \ --volume=$PWD/:/home/rstudio \ - -e PASSWORD=wordpass \ + -e PASSWORD=$PASSWORD \ -p 8787:8787 \ -e TZ=Europe/Vienna \ openscpca/cell-type-wilms-tumor-06:latest From 3f6439bdd2d21bb3866d5db9da133c21e7799ed1 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:29:35 +0200 Subject: [PATCH 46/47] Update analyses/cell-type-wilms-tumor-06/README.md Co-authored-by: Jaclyn Taroni <19534205+jaclyn-taroni@users.noreply.github.com> --- analyses/cell-type-wilms-tumor-06/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index 132b08ca3..b6de1b314 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -25,7 +25,6 @@ The analysis is/will be divided as the following: ## Usage From Rstudio, run the Rmd reports or render the R scripts (see below R studio session set up). -Please before running the script, make sure that the paths are correct. You can also simply have a look at the html reports in the notebook folder. Here, no need to run anything, we try to guide you through the analysis. Have a look at the code using the unhide code button on the top right of each chunk! From 405730a7a4a069cce3bd64596b44b682031d1254 Mon Sep 17 00:00:00 2001 From: maud-p <100755946+maud-p@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:41:51 +0200 Subject: [PATCH 47/47] Update README.md halbritter specific section to run container --- analyses/cell-type-wilms-tumor-06/README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/analyses/cell-type-wilms-tumor-06/README.md b/analyses/cell-type-wilms-tumor-06/README.md index b6de1b314..1243fc25a 100644 --- a/analyses/cell-type-wilms-tumor-06/README.md +++ b/analyses/cell-type-wilms-tumor-06/README.md @@ -165,6 +165,9 @@ Within RStudio Server, `OpenScPCA-analysis` will point to your local copy of the If you are on a Mac with an M series chip, you will not be able to use RStudio Server if you are using a `linux/amd64` or `linux/x86_84` (like the ones available from ECR). You must build an ARM image locally to be able to use RStudio Server within the container. +#### A note for Halbritter lab internal development +This work has been developed on a system that uses podman instead of docker. The steps to run the docker/podman images are slightly different and we saved in run-podman-internal.sh our internal approach to run the container. Please, refer to the Docker section to build and run the container instead. + ### renv This module uses `renv`. @@ -174,4 +177,4 @@ The `renv` lockfile is used to install R packages in the Docker image. ## Computational resources -No need to run any analysis, just open the metadata table! +