diff --git a/.github/workflows/quarto_netlify.yml b/.github/workflows/quarto_netlify.yml index 0c118bbd..1b726e51 100644 --- a/.github/workflows/quarto_netlify.yml +++ b/.github/workflows/quarto_netlify.yml @@ -29,13 +29,9 @@ jobs: - uses: r-lib/actions/setup-r@v2 with: - r-version: "4.2" + r-version: "4.3" use-public-rspm: true - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - - name: Set up environment run: | echo "LINUX_VERSION=$(uname -rs)" >> $GITHUB_ENV @@ -54,12 +50,11 @@ jobs: - name: Install Quarto uses: quarto-dev/quarto-actions/setup@v2 with: - version: 1.4.130 + version: 1.4.527 - name: Render with Quarto shell: bash -l {0} run: | - source renv/python/virtualenvs/renv-python-3.10/bin/activate quarto render --profile evaluate_code ## push actions diff --git a/CHANGELOG.md b/CHANGELOG.md index 3ddbb2cc..1eb8f970 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # openproblems.bio unreleased +## MINOR CHANGES + + +* Several infrastructure updates (PR #298): + + - Update R packages + - Remove Python from list of dependencies + - Update Quarto + - Fixes to styling + - Simplify footer + - Update openproblems-v2 submodule + ## BUG FIXES * Updated the `openproblems-v2` submodule (PR #295). This fixes a deprecation error due to an update in ruamel.yaml. diff --git a/_openproblems-v2 b/_openproblems-v2 index 347185db..45e9e434 160000 --- a/_openproblems-v2 +++ b/_openproblems-v2 @@ -1 +1 @@ -Subproject commit 347185dba5c445e1c380ac9ceef080e7dd86da6e +Subproject commit 45e9e434a7c99ac8beaee17af84a37d99a7e41e2 diff --git a/_quarto.yml b/_quarto.yml index 0bcade87..e9d02156 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -15,7 +15,7 @@ website: google-analytics: 'UA-178400615-1' page-footer: - left: "© Open Problems 2023 with all data licensed under [CC-BY](https://creativecommons.org/licenses/by/2.0/). View on [GitHub](https://github.com/openproblems-bio/openproblems-v2). Made with [Quarto♥](https://quarto.org)." + left: "© Open Problems 2023 with all data licensed under [CC-BY](https://creativecommons.org/licenses/by/2.0/)." navbar: logo: images/logo.png diff --git a/documentation/reference/openproblems-v2/src-task_id.qmd b/documentation/reference/openproblems-v2/src-task_id.qmd index 599105bd..e5e62e03 100644 --- a/documentation/reference/openproblems-v2/src-task_id.qmd +++ b/documentation/reference/openproblems-v2/src-task_id.qmd @@ -1,5 +1,5 @@ --- -title: src/tasks/\/ +title: src/tasks/task_id --- Each task should contain a data processor (to transform common datasets into task-specific datasets), methods, control methods (for quality control), and metrics (@fig-task-workflow). diff --git a/events/2021-09_neurips/index.qmd b/events/2021-09_neurips/index.qmd index e997f24e..33c539bc 100644 --- a/events/2021-09_neurips/index.qmd +++ b/events/2021-09_neurips/index.qmd @@ -4,15 +4,15 @@ subtitle: Solving various multimodal integration tasks using ML description: | A NeurIPS Competition (2021) - [See on EvalAI](https://eval.ai/web/challenges/challenge-page/1111/overview){class="btn btn-primary" style="border: 1px solid white;"} - [Sign up for updates](https://docs.google.com/forms/d/e/1FAIpQLSe90Oky4-1b0HbdLsp5Yqo9juCd2mq-NlGHU9NHRW1ECok1xQ/viewform){class="btn btn-primary" style="border: 1px solid white;"} + [See on EvalAI](https://eval.ai/web/challenges/challenge-page/1111/overview){class="btn btn-primary"} + [Sign up for updates](https://docs.google.com/forms/d/e/1FAIpQLSe90Oky4-1b0HbdLsp5Yqo9juCd2mq-NlGHU9NHRW1ECok1xQ/viewform){class="btn btn-primary"} - [Watch the video](https://www.youtube.com/watch?v=ZXDILOyiy7A){class="btn btn-secondary" style="border: 1px solid white; font-size: 0.8rem; padding: 3px 10px;"} - [Read the documentation](/events/2021-09_neurips/documentation/index.qmd){class="btn btn-secondary" style="border: 1px solid white; font-size: 0.8rem; padding: 3px 10px;"} - [Download the data](https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE194122){class="btn btn-secondary" style="border: 1px solid white; font-size: 0.8rem; padding: 3px 10px;"} + [Watch the video](https://www.youtube.com/watch?v=ZXDILOyiy7A){class="btn btn-secondary"} + [Read the documentation](/events/2021-09_neurips/documentation/index.qmd){class="btn btn-secondary"} + [Download the data](https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE194122){class="btn btn-secondary"} - [Read the datasets paper (NeurIPS 2021)](https://datasets-benchmarks-proceedings.neurips.cc/paper/2021/hash/158f3069a435b314a80bdcb024f8e422-Abstract-round2.html){class="btn btn-secondary" style="border: 1px solid white; font-size: 0.8rem; padding: 3px 10px;"} - [Read the competition paper (ICML 2022)](https://proceedings.mlr.press/v176/lance22a.html){class="btn btn-secondary" style="border: 1px solid white; font-size: 0.8rem; padding: 3px 10px;"} + [Read the datasets paper (NeurIPS 2021)](https://datasets-benchmarks-proceedings.neurips.cc/paper/2021/hash/158f3069a435b314a80bdcb024f8e422-Abstract-round2.html){class="btn btn-secondary"} + [Read the competition paper (ICML 2022)](https://proceedings.mlr.press/v176/lance22a.html){class="btn btn-secondary"} title-block-banner-color: white title-block-banner: ../../images/heros/competition_dark.jpg page-layout: full @@ -30,7 +30,8 @@ image: image.svg ## Summary :::: -::::{.section-content} +::::{.section} +:::{.section-content} Scaling from a dozen cells a decade ago to millions of cells today, single-cell measurement technologies are driving a revolution in the life sciences. Recent advances make it possible to measure multiple high-dimensional modalities (e.g. DNA accessibility, RNA, and proteins) simultaneously in the same cell. Such data provides, for the first time, a direct and comprehensive view into the layers of gene regulation that drive biological diversity and disease. In this competition for [NeurIPS 2021](https://neurips.cc/Conferences/2021/CompetitionTrack), we present three tasks on multimodal single-cell data using a first-of-its-kind multi-omics benchmarking dataset. Teams will predict one modality from another and learn representations of multiple modalities measured in the same cells. Progress will reveal how a common genetic blueprint gives rise to distinct cell types and processes, as a foundation for improving human health. @@ -38,6 +39,7 @@ In this competition for [NeurIPS 2021](https://neurips.cc/Conferences/2021/Compe {{< video https://www.youtube.com/embed/y5YbM0tbvCo >}} To learn more, you can watch a [lecture](https://www.youtube.com/watch?v=ZXDILOyiy7A) presented at the Broad Institute's Models Inferences and Algorithms meeting (slides). +::: :::: ::: @@ -46,7 +48,8 @@ To learn more, you can watch a [lecture](https://www.youtube.com/watch?v=ZXDILOy ## Winners :::: -::::{.section-content} +::::{.section} +:::{.section-content} We're proud to announce the winners of our 2021 NeurIPS competition! #### Task 1 - Modality Prediction @@ -93,6 +96,7 @@ Sumeer Khan, Robert Lehman, Xabier Martinez De Morentin, Minxing Pang, Aidyn Ub ##### CITE, online: Dengkw **University of Michigan, [code](https://github.com/openproblems-bio/neurips2021_multimodal_topmethods/tree/main/src/joint_embedding/methods/Guanlab-dengkw)** Kaiwen Deng +::: :::: ::: @@ -102,7 +106,8 @@ Kaiwen Deng ## Details :::: -::::{.section-content} +::::{.section} +:::{.section-content} The competition will focus on three tasks: 1. **Predicting one modality from another** - Given one modality, predict the other. @@ -123,6 +128,7 @@ If you ever have any questions, please feel free to reach out on the Open Proble If you'd like to get updates, please fill out the interest list below: +::: :::: ::: @@ -133,8 +139,8 @@ If you'd like to get updates, please fill out the interest list below: ## Sponsors :::: -::::{.section-content} - +::::{.section} +:::{.section-content} ```{=html}
@@ -175,6 +181,7 @@ If you'd like to get updates, please fill out the interest list below:
``` +::: :::: ::: @@ -183,8 +190,8 @@ If you'd like to get updates, please fill out the interest list below: ## Organizers :::: -::::{.section-content} - +::::{.section} +:::{.section-content} _In alphabetical order_ - **Daniel Burkhardt** (Primary contact) is a Machine Learning @@ -262,5 +269,6 @@ _In alphabetical order_ dimensionality reduction, visualization, denoising, data augmentation, and coarse graining, with particular focus on applications in biomedical data exploration. +::: :::: ::: \ No newline at end of file diff --git a/events/2022-08_neurips/index.qmd b/events/2022-08_neurips/index.qmd index 581caeb1..85ab03fc 100644 --- a/events/2022-08_neurips/index.qmd +++ b/events/2022-08_neurips/index.qmd @@ -4,7 +4,7 @@ subtitle: A competition on predicting multimodal expression across batches and t description: | A NeurIPS Competition (2022) - [See on Kaggle](https://www.kaggle.com/competitions/open-problems-multimodal){class="btn btn-primary" style="border: 1px solid white;"} + [See on Kaggle](https://www.kaggle.com/competitions/open-problems-multimodal){class="btn btn-primary"} date: "2022-08-15" start-date: "2022-08-15" end-date: "2022-11-15" @@ -18,12 +18,12 @@ image: image.png --- :::{layout="[[30,70]]"} -::::{.section-header} +::::{.section-content} ## Summary :::: -::::{.section-content} - +::::{.section} +:::{.section-content} Scaling from a dozen cells a decade ago to millions of cells today, single-cell measurement technologies are driving a revolution in the life sciences. Recent advances make it possible to measure multiple high-dimensional modalities (e.g. DNA accessibility, RNA, and proteins) simultaneously in the same cell. Such data provides, for the first time, a direct and comprehensive view into the layers of gene regulation that drive biological diversity and disease. In [2021](https://openproblems.bio/neurips_2021), we organized the first single-cell analysis competition at NeurIPS bringing together 280 participants to compete on an atlas-scale dataset of human bone marrow cells from 12 donors generated across 4 sites globally. @@ -33,17 +33,18 @@ In this competition for [NeurIPS 2022](https://neurips.cc/Conferences/2022/Compe In the test set, taken from an unseen later time point in the dataset, competitors will be provided with one modality and be tasked with predicting a paired modality measured in the same cell. The added challenge of this competition is that the test data will be from a later time point than any time point in the training data. To read all the details, [See on Kaggle!](https://www.kaggle.com/competitions/open-problems-multimodal/) +::: :::: ::: :::{layout="[[30,70]]"} -::::{.section-header} +::::{.section-content} ## Sponsors :::: -::::{.section-content} - +::::{.section} +:::{.section-content} ```{=html}
@@ -89,6 +90,7 @@ To read all the details, [See on Kaggle!](https://www.kaggle.com/competitions/op
``` +::: :::: ::: @@ -97,8 +99,8 @@ To read all the details, [See on Kaggle!](https://www.kaggle.com/competitions/op ## Organizers :::: -::::{.section-content} - +::::{.section} +:::{.section-content} _In alphabetical order_ - **Daniel Burkhardt** (Primary contact) is a Machine Learning @@ -151,6 +153,6 @@ _In alphabetical order_ Artificial Intelligence Cooperation Unit; and a faculty member of the Wellcome Trust Sanger Institute, Cambridge, UK. His lab develops innovative methods for single-cell analysis. - +::: :::: ::: \ No newline at end of file diff --git a/events/2023-08_neurips/index.qmd b/events/2023-08_neurips/index.qmd index 9f3b533e..b013bbeb 100644 --- a/events/2023-08_neurips/index.qmd +++ b/events/2023-08_neurips/index.qmd @@ -2,7 +2,7 @@ title: "NeurIPS 2023: Single-Cell Perturbation Prediction" subtitle: Generalizing experimental interventions to unseen contexts, a NeurIPS 2023 competition description: | - [Get Started on Kaggle](https://www.kaggle.com/competitions/open-problems-single-cell-perturbations){class="btn btn-primary" style="border: 1px solid white;"} + [Get Started on Kaggle](https://www.kaggle.com/competitions/open-problems-single-cell-perturbations){class="btn btn-primary"} date: "2023-08-30" start-date: "2023-09-11" end-date: "2023-11-30" @@ -81,8 +81,8 @@ Single-cell sequencing technologies have revolutionized our understanding of the ## Organizers :::: -::::{.section-content} - +::::{.section} +:::{.section-content} _In alphabetical order_ - **Daniel Burkhardt** (Primary contact) is a Machine Learning Scientist at Cellarity, a biotechnology company in Boston. He is a core organizer of the Open Problems in Single-Cell Analysis project. He completed his PhD in Genetics at Yale University with a specialization in machine learning under the supervision of Smita Krishnaswamy. His dissertation focused on modeling experimental perturbations and biological heterogeneity in single-cell datasets. Daniel is also the core organizer of the Machine Learning for Single Cell Analysis workshop, offered bi-annually since 2019 by the Krishnaswamy Lab at Yale. @@ -98,5 +98,6 @@ _In alphabetical order_ - **Angela Pisco** is the Director for Computational Biology at insitro, a biotechnology company in South San Francisco, and a core organizer of the Open Problems in Single-Cell Analysis project. Her main research interests are single cell genomics with a focus on building single cell atlas to understand health and disease. Angela's team is passionate about extracting meaningful information from biomedical datasets and use that to improve disease understanding and drug development. +::: :::: ::: diff --git a/renv.lock b/renv.lock index f76ad71c..fa9ca000 100644 --- a/renv.lock +++ b/renv.lock @@ -1,6 +1,6 @@ { "R": { - "Version": "4.2.3", + "Version": "4.3.2", "Repositories": [ { "Name": "CRAN", @@ -8,11 +8,6 @@ } ] }, - "Python": { - "Version": "3.10.12", - "Type": "virtualenv", - "Name": "./renv/python/virtualenvs/renv-python-3.10" - }, "Packages": { "DBI": { "Package": "DBI", @@ -27,19 +22,20 @@ }, "DT": { "Package": "DT", - "Version": "0.28", + "Version": "0.31", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "crosstalk", "htmltools", "htmlwidgets", + "httpuv", "jquerylib", "jsonlite", "magrittr", "promises" ], - "Hash": "ab745834dfae7eaf71dd0b90f3b66759" + "Hash": "77b5189f5272ae2b21e3ac2175ad107c" }, "MASS": { "Package": "MASS", @@ -58,7 +54,7 @@ }, "Matrix": { "Package": "Matrix", - "Version": "1.6-1", + "Version": "1.6-4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -71,7 +67,7 @@ "stats", "utils" ], - "Hash": "cb6855ac711958ca734b75e631b2035d" + "Hash": "d9c655b30a2edc6bb2244c1d1e8d549d" }, "R.cache": { "Package": "R.cache", @@ -114,7 +110,7 @@ }, "R.utils": { "Package": "R.utils", - "Version": "2.12.2", + "Version": "2.12.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -125,7 +121,7 @@ "tools", "utils" ], - "Hash": "325f01db13da12c04d8f6e7be36ff514" + "Hash": "3dc2829b790254bfba21e60965787651" }, "R6": { "Package": "R6", @@ -160,17 +156,16 @@ }, "RcppEigen": { "Package": "RcppEigen", - "Version": "0.3.3.9.3", + "Version": "0.3.3.9.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ - "Matrix", "R", "Rcpp", "stats", "utils" ], - "Hash": "1e035db628cefb315c571202d70202fe" + "Hash": "acb0a5bf38490f26ab8661b467f4f53a" }, "RcppTOML": { "Package": "RcppTOML", @@ -185,7 +180,7 @@ }, "Rdpack": { "Package": "Rdpack", - "Version": "2.5", + "Version": "2.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -195,17 +190,17 @@ "tools", "utils" ], - "Hash": "2a4dbc2502d3fd9f1c5d24b14a223583" + "Hash": "3e1384ada5d3948b392e98b11434d972" }, "askpass": { "Package": "askpass", - "Version": "1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "sys" ], - "Hash": "e8a22846fff485f0be3770c2da758713" + "Hash": "cad6cf7f1d5f6e906700b9d3e718c796" }, "assertthat": { "Package": "assertthat", @@ -303,7 +298,7 @@ }, "bslib": { "Package": "bslib", - "Version": "0.5.1", + "Version": "0.6.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -314,12 +309,13 @@ "htmltools", "jquerylib", "jsonlite", + "lifecycle", "memoise", "mime", "rlang", "sass" ], - "Hash": "283015ddfbb9d7bf15ea9f0b5698f0d9" + "Hash": "c0d8599494bc7fb408cd206bbdd9cab0" }, "cachem": { "Package": "cachem", @@ -359,14 +355,14 @@ }, "cli": { "Package": "cli", - "Version": "3.6.1", + "Version": "3.6.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "89e6d8219950eac806ae0c489052048a" + "Hash": "1216ac65ac55ec0058a6f75d7ca0fd52" }, "clipr": { "Package": "clipr", @@ -448,13 +444,13 @@ }, "cpp11": { "Package": "cpp11", - "Version": "0.4.6", + "Version": "0.4.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "707fae4bbf73697ec8d85f9d7076c061" + "Hash": "5a295d7d963cc5035284dcdbaf334f4e" }, "crayon": { "Package": "crayon", @@ -470,7 +466,7 @@ }, "crosstalk": { "Package": "crosstalk", - "Version": "1.2.0", + "Version": "1.2.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -479,21 +475,21 @@ "jsonlite", "lazyeval" ], - "Hash": "6aa54f69598c32177e920eb3402e8293" + "Hash": "ab12c7b080a57475248a30f4db6298c0" }, "curl": { "Package": "curl", - "Version": "5.0.2", + "Version": "5.2.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "511bacbfa153a15251166b463b4da4f9" + "Hash": "ce88d13c0b10fe88a37d9c59dba2d7f9" }, "cyclocomp": { "Package": "cyclocomp", - "Version": "1.1.0", + "Version": "1.1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -503,22 +499,22 @@ "remotes", "withr" ], - "Hash": "53cbed70a2f7472d48fb6aef08442f25" + "Hash": "cdc4a473222b0112d4df0bcfbed12d44" }, "data.table": { "Package": "data.table", - "Version": "1.14.8", + "Version": "1.14.10", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "b4c06e554f33344e044ccd7fdca750a9" + "Hash": "6ea17a32294d8ca00455825ab0cf71b9" }, "dbplyr": { "Package": "dbplyr", - "Version": "2.3.3", + "Version": "2.4.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -542,21 +538,20 @@ "vctrs", "withr" ], - "Hash": "d6fd1b1440c1cacc6623aaa4e9fe352b" + "Hash": "59351f28a81f0742720b85363c4fdd61" }, "desc": { "Package": "desc", - "Version": "1.4.2", + "Version": "1.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "cli", - "rprojroot", "utils" ], - "Hash": "6b9602c7ebbe87101a9c8edb6e8b6d21" + "Hash": "99b79fcbd6c4d1ce087f5c5c758b384f" }, "digest": { "Package": "digest", @@ -571,7 +566,7 @@ }, "dplyr": { "Package": "dplyr", - "Version": "1.1.2", + "Version": "1.1.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -590,7 +585,7 @@ "utils", "vctrs" ], - "Hash": "dea6970ff715ca541c387de363ff405e" + "Hash": "fedd9d00c2944ff00a0e2696ccf048ec" }, "dtplyr": { "Package": "dtplyr", @@ -624,18 +619,18 @@ }, "evaluate": { "Package": "evaluate", - "Version": "0.21", + "Version": "0.23", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "methods" ], - "Hash": "d59f3b464e8da1aef82dc04b588b8dfb" + "Hash": "daf4a1246be12c1fa8c7705a0935c1a0" }, "fansi": { "Package": "fansi", - "Version": "1.0.4", + "Version": "1.0.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -643,7 +638,7 @@ "grDevices", "utils" ], - "Hash": "1d9e7ad3c8312a192dea7d3db0274fde" + "Hash": "962174cf2aeb5b9eea581522286a911f" }, "farver": { "Package": "farver", @@ -700,14 +695,9 @@ }, "funkyheatmap": { "Package": "funkyheatmap", - "Version": "0.4.0", - "Source": "GitHub", - "RemoteType": "github", - "RemoteUsername": "dynverse", - "RemoteRepo": "funkyheatmap", - "RemoteRef": "HEAD", - "RemoteSha": "eb35bedb04e6757fbfc83f45b409db31bb2003e7", - "RemoteHost": "api.github.com", + "Version": "0.5.0", + "Source": "Repository", + "Repository": "CRAN", "Requirements": [ "R", "RColorBrewer", @@ -726,7 +716,7 @@ "tibble", "tidyr" ], - "Hash": "583544ab5c22e486d30e05f97bf67602" + "Hash": "eedee2c78f3d6ae372e1bc3079896c28" }, "gargle": { "Package": "gargle", @@ -792,7 +782,7 @@ }, "ggplot2": { "Package": "ggplot2", - "Version": "3.4.3", + "Version": "3.4.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -813,7 +803,7 @@ "vctrs", "withr" ], - "Hash": "85846544c596e71f8f46483ab165da33" + "Hash": "313d31eff2274ecf4c1d3581db7241f9" }, "glue": { "Package": "glue", @@ -896,7 +886,7 @@ }, "haven": { "Package": "haven", - "Version": "2.5.3", + "Version": "2.5.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -913,7 +903,7 @@ "tidyselect", "vctrs" ], - "Hash": "9b302fe352f9cfc5dcf0a4139af3a565" + "Hash": "9171f898db9d9c4c1b2c745adc2c1ef1" }, "here": { "Package": "here", @@ -952,7 +942,7 @@ }, "htmltools": { "Package": "htmltools", - "Version": "0.5.6", + "Version": "0.5.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -965,11 +955,11 @@ "rlang", "utils" ], - "Hash": "a2326a66919a3311f7fbb1e3bf568283" + "Hash": "2d7b3857980e0e0d0a1fd6f11928ab0f" }, "htmlwidgets": { "Package": "htmlwidgets", - "Version": "1.6.2", + "Version": "1.6.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -980,7 +970,22 @@ "rmarkdown", "yaml" ], - "Hash": "a865aa85bcb2697f47505bfd70422471" + "Hash": "04291cc45198225444a397606810ac37" + }, + "httpuv": { + "Package": "httpuv", + "Version": "1.6.13", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "Rcpp", + "later", + "promises", + "utils" + ], + "Hash": "d23d2879001f3d82ee9dc38a9ef53c4c" }, "httr": { "Package": "httr", @@ -1031,13 +1036,13 @@ }, "jsonlite": { "Package": "jsonlite", - "Version": "1.8.7", + "Version": "1.8.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "methods" ], - "Hash": "266a20443ca13c65688b2116d5220f76" + "Hash": "e1b9c55281c5adc4dd113652d9e26768" }, "kableExtra": { "Package": "kableExtra", @@ -1069,7 +1074,7 @@ }, "knitr": { "Package": "knitr", - "Version": "1.43", + "Version": "1.45", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1081,18 +1086,18 @@ "xfun", "yaml" ], - "Hash": "9775eb076713f627c07ce41d8199d8f6" + "Hash": "1ec462871063897135c1bcbe0fc8f07d" }, "labeling": { "Package": "labeling", - "Version": "0.4.2", + "Version": "0.4.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "graphics", "stats" ], - "Hash": "3d5108641f47470611a32d0bdf357a72" + "Hash": "b64ec208ac5bc1852b285f665d6368b3" }, "languageserver": { "Package": "languageserver", @@ -1120,18 +1125,18 @@ }, "later": { "Package": "later", - "Version": "1.3.1", + "Version": "1.3.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "Rcpp", "rlang" ], - "Hash": "40401c9cf2bc2259dfe83311c9384710" + "Hash": "a3e051d405326b8b0012377434c62b37" }, "lattice": { "Package": "lattice", - "Version": "0.21-8", + "Version": "0.22-5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1142,7 +1147,7 @@ "stats", "utils" ], - "Hash": "0b8a6d63c8770f02a8b5635f3c431e6b" + "Hash": "7c5e89f04e72d6611c77451f6331a091" }, "lazyeval": { "Package": "lazyeval", @@ -1156,7 +1161,7 @@ }, "lifecycle": { "Package": "lifecycle", - "Version": "1.0.3", + "Version": "1.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1165,11 +1170,11 @@ "glue", "rlang" ], - "Hash": "001cecbeac1cff9301bdc3775ee46a86" + "Hash": "b8552d117e1b808b09a832f589b79035" }, "lintr": { "Package": "lintr", - "Version": "3.1.0", + "Version": "3.1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1186,11 +1191,11 @@ "xml2", "xmlparsedata" ], - "Hash": "2b4b803af6017e93b67ddaf0eacba918" + "Hash": "93e9379f4be8c0bf1862dfc7f720193e" }, "lubridate": { "Package": "lubridate", - "Version": "1.9.2", + "Version": "1.9.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1199,7 +1204,7 @@ "methods", "timechange" ], - "Hash": "e25f18436e3efd42c7c590a1c4c15390" + "Hash": "680ad542fbcf801442c83a6ac5a2126c" }, "magrittr": { "Package": "magrittr", @@ -1280,7 +1285,7 @@ }, "nlme": { "Package": "nlme", - "Version": "3.1-163", + "Version": "3.1-164", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1290,17 +1295,17 @@ "stats", "utils" ], - "Hash": "8d1938040a05566f4f7a14af4feadd6b" + "Hash": "a623a2239e642806158bc4dc3f51565d" }, "openssl": { "Package": "openssl", - "Version": "2.1.0", + "Version": "2.1.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "askpass" ], - "Hash": "273a6bb4a9844c296a459d2176673270" + "Hash": "2a0dc8c6adfb6f032e4d4af82d258ab5" }, "patchwork": { "Package": "patchwork", @@ -1337,6 +1342,21 @@ ], "Hash": "15da5a8412f317beeee6175fbc76f4bb" }, + "pkgbuild": { + "Package": "pkgbuild", + "Version": "1.4.3", + "Source": "Repository", + "Repository": "CRAN", + "Requirements": [ + "R", + "R6", + "callr", + "cli", + "desc", + "processx" + ], + "Hash": "c0143443203205e6a2760ce553dafc24" + }, "pkgconfig": { "Package": "pkgconfig", "Version": "2.0.3", @@ -1349,7 +1369,7 @@ }, "pkgload": { "Package": "pkgload", - "Version": "1.3.2.1", + "Version": "1.3.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1360,12 +1380,13 @@ "fs", "glue", "methods", + "pkgbuild", "rlang", "rprojroot", "utils", "withr" ], - "Hash": "a7f498a1b2a4a6816148e498509f6e1d" + "Hash": "903d68319ae9923fb2e2ee7fa8230b91" }, "png": { "Package": "png", @@ -1379,24 +1400,27 @@ }, "polyclip": { "Package": "polyclip", - "Version": "1.10-4", + "Version": "1.10-6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "66bbfa06f78108ee967220643596c91e" + "Hash": "436542aadb70675e361cf359285af7c7" }, "prettyunits": { "Package": "prettyunits", - "Version": "1.1.1", + "Version": "1.2.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "95ef9167b75dde9d2ccc3c7528393e7e" + "Requirements": [ + "R" + ], + "Hash": "6b01fc98b1e86c4f705ce9dcfd2f57c7" }, "processx": { "Package": "processx", - "Version": "3.8.2", + "Version": "3.8.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1405,20 +1429,21 @@ "ps", "utils" ], - "Hash": "3efbd8ac1be0296a46c55387aeace0f3" + "Hash": "82d48b1aec56084d9438dbf98087a7e9" }, "progress": { "Package": "progress", - "Version": "1.2.2", + "Version": "1.2.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ + "R", "R6", "crayon", "hms", "prettyunits" ], - "Hash": "14dc9f7a3c91ebb14ec5bb9208a07061" + "Hash": "f4625e061cb2865f111b47ff163a5ca6" }, "promises": { "Package": "promises", @@ -1464,14 +1489,14 @@ }, "ragg": { "Package": "ragg", - "Version": "1.2.5", + "Version": "1.2.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "systemfonts", "textshaping" ], - "Hash": "690bc058ea2b1b8a407d3cfe3dce3ef9" + "Hash": "90a1b8b7e518d7f90480d56453b4d062" }, "rappdirs": { "Package": "rappdirs", @@ -1485,7 +1510,7 @@ }, "rbibutils": { "Package": "rbibutils", - "Version": "2.2.15", + "Version": "2.2.16", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1493,7 +1518,7 @@ "tools", "utils" ], - "Hash": "565c201eeda84b882b592618055b0d92" + "Hash": "8c06968e0a5b0209c5f34239b1302336" }, "readr": { "Package": "readr", @@ -1535,10 +1560,10 @@ }, "rematch": { "Package": "rematch", - "Version": "1.0.1", + "Version": "2.0.0", "Source": "Repository", "Repository": "CRAN", - "Hash": "c66b930d20bb6d858cd18e1cebcfae5c" + "Hash": "cbff1b666c6fa6d21202f07e2318d4f1" }, "rematch2": { "Package": "rematch2", @@ -1566,13 +1591,13 @@ }, "renv": { "Package": "renv", - "Version": "1.0.2", + "Version": "1.0.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "utils" ], - "Hash": "4b22ac016fe54028b88d0c68badbd061" + "Hash": "41b847654f567341725473431dd0d5ab" }, "reprex": { "Package": "reprex", @@ -1598,7 +1623,7 @@ }, "reticulate": { "Package": "reticulate", - "Version": "1.31", + "Version": "1.34.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1616,7 +1641,7 @@ "utils", "withr" ], - "Hash": "5e2f71b7ccd5c060ad439a4824b4288c" + "Hash": "a69f815bcba8a055de0b08339b943f9e" }, "rex": { "Package": "rex", @@ -1630,18 +1655,18 @@ }, "rlang": { "Package": "rlang", - "Version": "1.1.1", + "Version": "1.1.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "utils" ], - "Hash": "a85c767b55f0bf9b7ad16c6d7baee5bb" + "Hash": "50a6dbdc522936ca35afc5e2082ea91b" }, "rmarkdown": { "Package": "rmarkdown", - "Version": "2.24", + "Version": "2.25", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1661,7 +1686,7 @@ "xfun", "yaml" ], - "Hash": "3854c37590717c08c32ec8542a2e0a35" + "Hash": "d65e35823c817f09f4de424fcdfa812a" }, "roxygen2": { "Package": "roxygen2", @@ -1691,13 +1716,13 @@ }, "rprojroot": { "Package": "rprojroot", - "Version": "2.0.3", + "Version": "2.0.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1de7ab598047a87bba48434ba35d497d" + "Hash": "4c8415e0ec1e29f3f4f6fc108bef0144" }, "rstudioapi": { "Package": "rstudioapi", @@ -1728,7 +1753,7 @@ }, "sass": { "Package": "sass", - "Version": "0.4.7", + "Version": "0.4.8", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1738,25 +1763,27 @@ "rappdirs", "rlang" ], - "Hash": "6bd4d33b50ff927191ec9acbf52fd056" + "Hash": "168f9353c76d4c4b0a0bbf72e2c2d035" }, "scales": { "Package": "scales", - "Version": "1.2.1", + "Version": "1.3.0", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "R6", "RColorBrewer", + "cli", "farver", + "glue", "labeling", "lifecycle", "munsell", "rlang", "viridisLite" ], - "Hash": "906cb23d2f1c5680b8ce439b44c6fa63" + "Hash": "c19df082ba346b0ffa6f833e92de34d1" }, "selectr": { "Package": "selectr", @@ -1773,7 +1800,7 @@ }, "stringi": { "Package": "stringi", - "Version": "1.7.12", + "Version": "1.8.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1782,11 +1809,11 @@ "tools", "utils" ], - "Hash": "ca8bd84263c77310739d2cf64d84d7c9" + "Hash": "058aebddea264f4c99401515182e656a" }, "stringr": { "Package": "stringr", - "Version": "1.5.0", + "Version": "1.5.1", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1799,11 +1826,11 @@ "stringi", "vctrs" ], - "Hash": "671a4d384ae9d32fc47a14e98bfa3dc8" + "Hash": "960e2ae9e09656611e0b8214ad543207" }, "styler": { "Package": "styler", - "Version": "1.10.1", + "Version": "1.10.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1818,11 +1845,11 @@ "vctrs", "withr" ], - "Hash": "b0911fdb2c682f526f6e9c131fd40a1f" + "Hash": "d61238fd44fc63c8adf4565efe8eb682" }, "svglite": { "Package": "svglite", - "Version": "2.1.1", + "Version": "2.1.3", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1830,7 +1857,7 @@ "cpp11", "systemfonts" ], - "Hash": "29442899581643411facb66f4add846a" + "Hash": "124a41fdfa23e8691cb744c762f10516" }, "sys": { "Package": "sys", @@ -1841,18 +1868,18 @@ }, "systemfonts": { "Package": "systemfonts", - "Version": "1.0.4", + "Version": "1.0.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", "cpp11" ], - "Hash": "90b28393209827327de889f49935140a" + "Hash": "15b594369e70b975ba9f064295983499" }, "textshaping": { "Package": "textshaping", - "Version": "0.3.6", + "Version": "0.3.7", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -1860,7 +1887,7 @@ "cpp11", "systemfonts" ], - "Hash": "1ab6223d3670fac7143202cb6a2d43d5" + "Hash": "997aac9ad649e0ef3b97f96cddd5622b" }, "tibble": { "Package": "tibble", @@ -1973,13 +2000,13 @@ }, "tinytex": { "Package": "tinytex", - "Version": "0.46", + "Version": "0.49", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "xfun" ], - "Hash": "0c41a73214d982f539c56a7773c7afa5" + "Hash": "5ac22900ae0f386e54f1c307eca7d843" }, "tweenr": { "Package": "tweenr", @@ -2009,13 +2036,13 @@ }, "utf8": { "Package": "utf8", - "Version": "1.2.3", + "Version": "1.2.4", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R" ], - "Hash": "1fe17157424bb09c48a8b3b550c753bc" + "Hash": "62b65c52671e6665f803ff02954446e9" }, "uuid": { "Package": "uuid", @@ -2029,7 +2056,7 @@ }, "vctrs": { "Package": "vctrs", - "Version": "0.6.3", + "Version": "0.6.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -2039,7 +2066,7 @@ "lifecycle", "rlang" ], - "Hash": "d0ef2856b83dc33ea6e255caf6229ee2" + "Hash": "c03fa420630029418f7e6da3667aac4a" }, "viridisLite": { "Package": "viridisLite", @@ -2053,7 +2080,7 @@ }, "vroom": { "Package": "vroom", - "Version": "1.6.3", + "Version": "1.6.5", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -2075,7 +2102,7 @@ "vctrs", "withr" ], - "Hash": "8318e64ffb3a70e652494017ec455561" + "Hash": "390f9315bc0025be03012054103d227c" }, "webshot": { "Package": "webshot", @@ -2092,7 +2119,7 @@ }, "withr": { "Package": "withr", - "Version": "2.5.0", + "Version": "2.5.2", "Source": "Repository", "Repository": "CRAN", "Requirements": [ @@ -2101,29 +2128,31 @@ "graphics", "stats" ], - "Hash": "c0e49a9760983e81e55cdd9be92e7182" + "Hash": "4b25e70111b7d644322e9513f403a272" }, "xfun": { "Package": "xfun", - "Version": "0.40", + "Version": "0.41", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "stats", "tools" ], - "Hash": "be07d23211245fc7d4209f54c4e4ffc8" + "Hash": "460a5e0fe46a80ef87424ad216028014" }, "xml2": { "Package": "xml2", - "Version": "1.3.5", + "Version": "1.3.6", "Source": "Repository", "Repository": "CRAN", "Requirements": [ "R", - "methods" + "cli", + "methods", + "rlang" ], - "Hash": "6c40e5cfcc6aefd88110666e18c31f40" + "Hash": "1d0336142f4cd25d8d23cd3ba7a8fb61" }, "xmlparsedata": { "Package": "xmlparsedata", @@ -2137,10 +2166,10 @@ }, "yaml": { "Package": "yaml", - "Version": "2.3.7", + "Version": "2.3.8", "Source": "Repository", "Repository": "CRAN", - "Hash": "0d0056cc5383fbc240ccd0cb584bf436" + "Hash": "29240487a071f535f5e5d5a323b7afbd" } } } diff --git a/renv/activate.R b/renv/activate.R index 2969c732..cb5401f9 100644 --- a/renv/activate.R +++ b/renv/activate.R @@ -2,7 +2,7 @@ local({ # the requested version of renv - version <- "1.0.2" + version <- "1.0.3" attr(version, "sha") <- NULL # the project directory @@ -1034,19 +1034,6 @@ local({ } - - renv_bootstrap_in_rstudio <- function() { - commandArgs()[[1]] == "RStudio" - } - - # Used to work around buglet in RStudio if hook uses readline - renv_bootstrap_flush_console <- function() { - tryCatch({ - tools <- as.environment("tools:rstudio") - tools$.rs.api.sendToConsole("", echo = FALSE, focus = FALSE) - }, error = function(cnd) {}) - } - renv_json_read <- function(file = NULL, text = NULL) { jlerr <- NULL @@ -1185,16 +1172,8 @@ local({ # construct full libpath libpath <- file.path(root, prefix) - if (renv_bootstrap_in_rstudio()) { - # RStudio only updates console once .Rprofile is finished, so - # instead run code on sessionInit - setHook("rstudio.sessionInit", function(...) { - renv_bootstrap_exec(project, libpath, version) - renv_bootstrap_flush_console() - }) - } else { - renv_bootstrap_exec(project, libpath, version) - } + # run bootstrap code + renv_bootstrap_exec(project, libpath, version) invisible() diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 71aea259..00000000 --- a/requirements.txt +++ /dev/null @@ -1,10 +0,0 @@ -anndata==0.8.0 -h5py==3.8.0 -natsort==8.3.0 -numpy==1.24.2 -packaging==23.0 -pandas==1.5.3 -python-dateutil==2.8.2 -pytz==2022.7.1 -scipy==1.10.1 -six==1.16.0 diff --git a/theme.scss b/theme.scss index 7f72726d..18cf9ae4 100644 --- a/theme.scss +++ b/theme.scss @@ -38,4 +38,25 @@ p { a { font-family: 'hk_groteskmedium', Fallback, sans-serif; font-weight: bold; +} + +li { + font-family: 'hk_groteskmedium', Fallback, sans-serif; +} + +/* set background-color to --quarto-body-bg */ +.navbar { + background-color: var(--quarto-body-bg) !important; +} + +/* styling for hero buttons */ +a.btn-primary { + border: 1px solid white !important; + color: white !important; +} +a.btn-secondary { + border: 1px solid white !important; + font-size: 0.8rem !important; + padding: 3px 10px !important; + color: white !important; } \ No newline at end of file