{"id":73613,"name":"rworkflows","description":"Continuous integration for R packages. 🔀 Automates testing ✅, documentation website building 📦, \u0026 containerised deployment 🐳. ","url":"https://github.com/neurogenomics/rworkflows","last_synced_at":"2025-09-08T16:06:59.404Z","repository":{"id":62810903,"uuid":"422262705","full_name":"neurogenomics/rworkflows","owner":"neurogenomics","description":"Continuous integration for R packages. 🔀 Automates testing ✅, documentation website building 📦, \u0026 containerised deployment 🐳. ","archived":false,"fork":false,"pushed_at":"2025-08-23T19:55:04.000Z","size":13246,"stargazers_count":80,"open_issues_count":32,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-24T07:43:37.549Z","etag":null,"topics":["bioconductor","containers","continuous-integration","cran-r","docker","dockerhub","github-actions","r","reproducibility","workflows"],"latest_commit_sha":null,"homepage":"https://neurogenomics.github.io/rworkflows/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neurogenomics.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-10-28T15:44:27.000Z","updated_at":"2025-08-23T19:48:27.000Z","dependencies_parsed_at":"2023-09-22T20:21:42.196Z","dependency_job_id":"cbe50f36-ae3c-406a-bc03-cffc33c5c130","html_url":"https://github.com/neurogenomics/rworkflows","commit_stats":{"total_commits":351,"total_committers":2,"mean_commits":175.5,"dds":0.002849002849002802,"last_synced_commit":"8a5161312f385ac2a07a4b53bb64efbc7029d8f7"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/neurogenomics/rworkflows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/sbom","scorecard":{"id":112947,"data":{"date":"2025-08-04","repo":{"name":"github.com/neurogenomics/rworkflows","commit":"59ca487a20663bcdd0176837c09de5d44946e24b"},"scorecard":{"version":"v5.2.1-28-gc1d103a9","commit":"c1d103a9bb9f635ec7260bf9aa0699466fa4be0e"},"score":4.6,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 5/12 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#cii-best-practices"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#dangerous-workflow"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#vulnerabilities"}},{"name":"Token-Permissions","score":8,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/rworkflows.yml:1","Warn: no topLevel permission defined: .github/workflows/rworkflows_dev.yml:1","Warn: no topLevel permission defined: .github/workflows/rworkflows_static.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#token-permissions"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#fuzzing"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_dev.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_dev.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:73: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:101: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:104: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:109: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:124: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:134: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:185: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:353: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:361: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:380: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:399: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: containerImage not pinned by hash: inst/templates/Dockerfile:21","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  11 third-party GitHubAction dependencies pinned","Info:   0 out of   1 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#pinned-dependencies"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#security-policy"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/rworkflows_static.yml:35"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-15T15:37:53.573Z","repository_id":62810903,"created_at":"2025-08-15T15:37:53.573Z","updated_at":"2025-08-15T15:37:53.573Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274210608,"owners_count":25241790,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"neurogenomics","name":"neurogenomics","uuid":"48588661","kind":"organization","description":"Neurogenomics Lab, UK Dementia Research Institute at Imperial College London ","email":null,"website":"https://www.neurogenomics.co.uk","location":"United Kingdom","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/48588661?v=4","repositories_count":56,"last_synced_at":"2023-05-26T20:30:34.149Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/neurogenomics","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-21T01:22:40.882Z","updated_at":"2023-05-26T20:30:34.166Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics/repositories"},"packages":[{"id":5800986,"name":"neurogenomics/rworkflows","ecosystem":"actions","description":"rworkflows: Full workflow to test, document, and deploy R packages.\n","homepage":"https://neurogenomics.github.io/rworkflows/","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/neurogenomics/rworkflows","keywords_array":["bioconductor","containers","continuous-integration","cran-r","docker","dockerhub","github-actions","r","reproducibility","workflows"],"namespace":"neurogenomics","versions_count":5,"first_release_published_at":"2021-12-06T17:25:14.000Z","latest_release_published_at":"2023-10-29T10:24:06.000Z","latest_release_number":"v0","last_synced_at":"2025-08-24T13:30:09.117Z","created_at":"2023-01-04T12:41:32.742Z","updated_at":"2025-08-24T13:55:54.257Z","registry_url":"https://github.com/neurogenomics/rworkflows","install_command":null,"documentation_url":null,"metadata":{"name":"rworkflows","description":"rworkflows: Full workflow to test, document, and deploy R packages.\n","author":"Brian M. Schilder","branding":{"icon":"check-square","color":"green"},"inputs":{"run_bioccheck":{"description":"Run Bioconductor checks. Must pass in order to continue workflow.\n","default":true},"run_rcmdcheck":{"description":"Run R CMD checks. Must pass in order to continue workflow.\n","default":true},"as_cran":{"description":"When running R CMD checks, use the '--as-cran' flag to apply CRAN standards.\n"},"run_vignettes":{"description":"Build and check R package vignettes.\n","default":true},"run_covr":{"description":"Run code coverage tests and publish results to Codecov.\n","default":true},"run_pkgdown":{"description":"Knit the README.Rmd (if available), build documentation website, and deploy to gh-pages branch.\n","default":true},"has_testthat":{"description":"Run unit tests with the `testthat` package and report the results. Requires a subdirectory named 'tests'.\n","default":true},"has_runit":{"description":"Run unit tests with the `RUnit` package. Requires a subdirectory named 'unitTests'.\n","default":false},"has_latex":{"description":"Install a suite of LaTeX dependencies used for rendering Sweave (.rnw) and other documentation files.\n","default":false},"tinytex_installer":{"description":"Which release of tinytex (bundles of LaTeX packages) to use. All options can be found here: https://github.com/rstudio/tinytex-releases/ Note, 'TinyTeX-2' is only available for 'tinytex_version: daily'.\n","default":"TinyTeX-1"},"tinytex_version":{"description":"Which version of tinytext to use.  When set to '', uses the latest daily build. All versions can be found here: https://github.com/rstudio/tinytex-releases/releases\n","default":""},"pandoc_version":{"description":"Which version of pandoc to use.  For details see here: https://github.com/r-lib/actions/tree/v2-branch/setup-pandoc\n","default":"2.19"},"run_docker":{"description":"Whether to build and push a Docker container to DockerHub.\n","default":false},"docker_registry":{"description":"Docker container registry to push to.  Options include: - ghcr.io : GitHub Container Registry (https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry) - docker.io : DockerHub (https://hub.docker.com/) \n","default":"ghcr.io"},"docker_user":{"description":"Docker registry username.  Not used when `docker_registry=\"ghcr.io\"`.\n"},"docker_org":{"description":"Docker registry organization name. Can be the same as `docker_user`. Not used when `docker_registry=\"ghcr.io\"`.\n"},"DOCKER_TOKEN":{"description":"Docker registry authentication token. Not used when `docker_registry=\"ghcr.io\"`.\n"},"GITHUB_TOKEN":{"description":"GitHub authentication token with permissions to push  to the R package's GitHub repository.  Also used to bypass GitHub download limits. By default, uses {{ secrets.GITHUB_TOKEN }} which is automatically set up by GitHub.  However users can also choose to pass a custom GitHub secret variable (e.g. {{ secrets.PAT_GITHUB }}) which allows access to private repositories. Read here for more details:  https://docs.github.com/en/actions/security-guides/automatic-token-authentication.\n"},"cache_version":{"description":"Which cache version to use.  Change this when trying to avoid using previous caches.\n","default":"cache-v1"},"runner_os":{"description":"The Operating System (OS) that the workflow is running on.\n","default":"Linux"},"timeout":{"description":"The maximum time to wait for long R processes like  dependency installations, downloads, and code checks.\n","default":2000},"miniforge_variant":{"description":"If provided, this variant of Miniforge will be downloaded and installed. If `miniforge_variant=false`, Miniforge will not be installed at all. If `miniforge_variant=\"\"`, the \"Miniforge3\" variant will be installed. If `miniforge_version` is not provided, the `latest` version will be used. Currently-known values: - \"Miniforge3\" (default) - \"Miniforge-pypy3\" - \"Mambaforge\" - \"Mambaforge-pypy3\". Visit https://github.com/conda-forge/miniforge/releases/ for more  information on available variants.\n","default":false},"miniforge_version":{"description":"If provided, this version of the given Miniforge variant will be downloaded and installed. If `miniforge_variant` is not provided, `Miniforge3` will be used. Visit https://github.com/conda-forge/miniforge/releases/ for more information on available versions.\n","default":"latest"},"activate_environment":{"description":"Environment name (or path) to activate on all shells. Default is `test` which will be created in `$CONDA/envs/test`. If an empty string is used, no environment is activated by default (For `base` activation see the `auto-activate-base` option). If the environment does not exist, it will be created and activated. If `environment-file` is used and you want that to be the environment used, you need to explicitely provide the name of that environment on `activate-environment`. If using sh/bash/cmd.exe shells please read the IMPORTANT! section on the README.md! to properly activate conda environments on these shells.\n","default":"test"},"environment_file":{"description":"Path or URL to a .yml file to build the conda environment with.  For more information see:  https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#creating-an-environment-from-an-environment-yml-file\n","default":""},"channels":{"description":"Conda configuration. Comma separated list of channels to use in order of priority. See https://docs.conda.io/projects/conda/en/latest/user-guide/configuration/ for more information.\n","default":""},"free_diskspace":{"description":"Free up additional disk space by deleting non-essential sofwares.\n","default":false}},"runs":{"using":"composite","steps":[{"name":"🔭 Collect Workflow Telemetry","uses":"runforesight/workflow-telemetry-action@v1","continue-on-error":true,"with":{"github_token":"${{ inputs.GITHUB_TOKEN }}","comment_on_pr":false}},{"name":"💾 Free Disk Space","if":"inputs.free_diskspace == 'true' \u0026\u0026 runner.os == 'Linux'","uses":"jlumbroso/free-disk-space@main"},{"name":"🌎 Set environment variables","run":"echo \"RGL_USE_NULL=TRUE\" \u003e\u003e $GITHUB_ENV\necho \"R_REMOTES_NO_ERRORS_FROM_WARNINGS=${{ true }}\" \u003e\u003e $GITHUB_ENV\necho \"RSPM=${{ matrix.config.rspm }}\" \u003e\u003e $GITHUB_ENV\necho \"TZ=UTC\" \u003e\u003e $GITHUB_ENV\necho \"NOT_CRAN=${{ !inputs.as_cran }}\" \u003e\u003e $GITHUB_ENV\n","shell":"bash {0}"},{"name":"🐍 Setup Miniconda","if":"inputs.miniforge_variant != 'false'","uses":"conda-incubator/setup-miniconda@v2","with":{"auto-update-conda":false,"python-version":"${{ matrix.python-version }}","miniforge-variant":"${{ inputs.miniforge_variant }}","miniforge-version":"${{ inputs.miniforge_version }}","activate-environment":"${{ inputs.activate_environment }}","environment-file":"${{ inputs.environment_file }}","channels":"${{ inputs.channels }}"}},{"name":"📚 Set R library home on Linux","if":"runner.os == 'Linux'","run":"mkdir -p /__w/_temp/Library\necho \".libPaths('/__w/_temp/Library')\" \u003e ~/.Rprofile\ngit config --global --add safe.directory '*'\n","shell":"bash {0}"},{"name":"⏬ Checkout repository","uses":"actions/checkout@v4"},{"name":"🛠 Setup R and Bioconductor","if":"runner.os != 'Linux'","uses":"grimbough/bioc-actions/setup-bioc@v1","with":{"bioc-version":"${{ matrix.config.bioc }}"}},{"name":"🛠 Install Pandoc","if":"inputs.pandoc_version != 'false' \u0026\u0026 runner.os != 'Linux'","uses":"r-lib/actions/setup-pandoc@v2","with":{"pandoc-version":"${{ inputs.pandoc_version }}"}},{"name":"❔ Query dependencies","env":{"GITHUB_TOKEN":"${{ inputs.GITHUB_TOKEN }}"},"run":"options(crayon.enabled = TRUE)\ninstall.packages('remotes')\nremotes::install_github(\"r-lib/remotes\")\nsaveRDS(remotes::dev_package_deps(dependencies = TRUE), \".github/depends.Rds\", version = 2)\n","shell":"Rscript {0}"},{"name":"🏦 Restore R package cache","if":"!contains(github.event.head_commit.message, '[nocache]') \u0026\u0026 runner.os != 'Linux'\n","uses":"actions/cache@v3","with":{"path":"${{ env.R_LIBS_USER }}","key":"${{ inputs.cache_version }}-${{ runner.os }}-biocversion-${{ matrix.config.bioc }}-r-${{ matrix.config.r }}-${{ hashFiles('.github/depends.Rds') }}","restore-keys":"${{ inputs.cache_version }}-${{ runner.os }}-biocversion-${{ matrix.config.bioc }}-r-${{  matrix.config.r }}-"}},{"name":"🏦 Cache R packages on Linux","if":"!contains(github.event.head_commit.message, '[nocache]') \u0026\u0026 runner.os == 'Linux'\n","uses":"actions/cache@v3","with":{"path":"/home/runner/work/_temp/Library","key":"${{ inputs.cache_version }}-${{ runner.os }}-biocversion-${{ matrix.config.bioc }}-r-${{  matrix.config.r }}-${{ hashFiles('.github/depends.Rds') }}","restore-keys":"${{ inputs.cache_version }}-${{ runner.os }}-biocversion-${{ matrix.config.bioc }}-r-${{  matrix.config.r }}-"}},{"name":"🛠 Install Linux system dependencies","if":"runner.os == 'Linux'","run":"sysreqs=$(Rscript -e 'cat(\"apt-get update -y \u0026\u0026 apt-get install -y\", paste(gsub(\"apt-get install -y \", \"\", remotes::system_requirements(\"ubuntu\", \"20.04\")), collapse = \" \"))')\necho $sysreqs\nsudo -s eval \"$sysreqs\"\nsudo apt-get install -y qpdf rsync\n","shell":"bash {0}"},{"name":"🛠 Install macOS system dependencies","if":"runner.os == 'macOS'","run":"#### --- Justifications for each package --- ####\n### libxml2 ###\n# Enable installing XML from source if needed\n### imagemagick@6 ###\n# Required to install magick as noted at\n# https://github.com/r-lib/usethis/commit/f1f1e0d10c1ebc75fd4c18fa7e2de4551fd9978f#diff-9bfee71065492f63457918efcd912cf2\n### harfbuzz fribidi ###\n# For textshaping, required by ragg, and required by pkgdown\n### libgit2 ###\n# For installing usethis's dependency gert\n### xquartz --cask ###\n# Required for tcltk\n### libxfont ###\n# Required for some ggplot2 functions\n### texlive ###\n# Required for rendering Sweave files (even with r-lib/actions/setup-tinytex)\n\n#### --- Install packages --- ####\n### Install normally ###\nbrew install libxml2 imagemagick@6 harfbuzz fribidi libgit2 texlive\n### Install via cask ###\nbrew install xquartz --cask\n### Set up xml2 ###\necho \"XML_CONFIG=/usr/local/opt/libxml2/bin/xml2-config\" \u003e\u003e $GITHUB_ENV\n","shell":"bash {0}"},{"name":"🛠 Install Windows system dependencies","if":"inputs.has_latex == 'true' \u0026\u0026 runner.os == 'Windows'","run":"#### npm ####\nnpm install curl\n","shell":"pwsh {0}"},{"name":"🛠 Install latex","if":"inputs.has_latex == 'true'","uses":"r-lib/actions/setup-tinytex@v2","env":{"TINYTEX_INSTALLER":"${{ inputs.tinytex_installer }}","TINYTEX_VERSION":"${{ inputs.tinytex_version }}"}},{"name":"🛠 Install latex packages","if":"inputs.has_latex == 'true'","env":{"tinytex_installer":"${{ inputs.tinytex_installer }}","tinytex_version":"${{ inputs.tinytex_version }}"},"run":"install.packages(\"tinytex\")\nextra_packages \u003c- c(\"bera\",\"nowidow\",\"parnotes\",\"marginfix\",\"etoolbox\",\n\"titlesec\",\"sectsty\",\"framed\",\"enumitem\",\"parskip\",\"soul\",\"placeins\",\n\"footmisc\",\"changepage\",\"xstring\",\"caption\",\"mathtools\",\"fancyhdr\",\n\"preprint\",\"ragged2e\",\"pdfcrop\",\"titling\",\"silence\",\"everysel\")\ntinytex::tlmgr_install(pkgs = extra_packages)\n","shell":"Rscript {0}"},{"name":"🛠 Install dependencies pass 1","env":{"timeout":"${{ inputs.timeout }}","GITHUB_TOKEN":"${{ inputs.GITHUB_TOKEN }}"},"run":"options(crayon.enabled = TRUE, timeout=Sys.getenv(\"timeout\"))\n## For running the checks\nmessage(paste('****', Sys.time(), 'installing rcmdcheck ****'))\ninstall.packages(c(\"rmarkdown\",\"BiocManager\"), dependencies = TRUE)\nmessage(paste('****', Sys.time(), 'pass number 1 at installing dependencies****'))\nrepos \u003c- BiocManager::repositories()\nremotes::install_local(repos=repos, dependencies=TRUE, build_vignettes=FALSE, upgrade=TRUE, force=TRUE)\n","continue-on-error":true,"shell":"Rscript {0}"},{"name":"🛠 Install dependencies pass 2","env":{"timeout":"${{ inputs.timeout }}","GITHUB_TOKEN":"${{ inputs.GITHUB_TOKEN }}"},"run":"options(crayon.enabled = TRUE, timeout=Sys.getenv(\"timeout\"))\nmessage(paste('****', Sys.time(), 'pass number 2 at installing dependencies****'))\nrepos \u003c- BiocManager::repositories()\nremotes::install_local(repos=repos, dependencies=TRUE, build_vignettes=FALSE, upgrade=TRUE, force=TRUE)\n","shell":"Rscript {0}"},{"name":"🛠 Install RUnit (via BiocGenerics)","if":"inputs.has_runit == 'true'","run":"options(crayon.enabled = TRUE)\nBiocManager::install(\"BiocGenerics\")\n","shell":"Rscript {0}"},{"name":"🛠 Install covr","if":"inputs.run_covr == 'true' \u0026\u0026 runner.os == 'Linux'","run":"options(crayon.enabled = TRUE)\ninstall.packages(\"covr\")\n","shell":"Rscript {0}"},{"name":"🛠 Install pkgdown","if":"inputs.run_pkgdown == 'true' \u0026\u0026 runner.os == 'Linux'","run":"options(crayon.enabled = TRUE)\ninstall.packages(\"pkgdown\")\n","shell":"Rscript {0}"},{"name":"ℹ️ Session info ️","run":"options(width = 100, crayon.enabled = TRUE)\npkgs \u003c- installed.packages()[,\"Package\"]\nif(!require(\"sessioninfo\", quietly=TRUE)) install.packages(\"sessioninfo\")\ntryCatch({\n  sessioninfo::session_info(pkgs, include_base = TRUE)\n}, error = function(x){utils::sessionInfo()})\n","shell":"Rscript {0}"},{"name":"✅ Run CMD check","if":"inputs.run_rcmdcheck == 'true'","env":{"_R_CHECK_CRAN_INCOMING_":false,"RGL_USE_NULL":"${{ env.RGL_USE_NULL }}","DISPLAY":99.0,"AS_CRAN":"${{ inputs.as_cran }}","run_vignettes":"${{ inputs.run_vignettes }}","timeout":"${{ inputs.timeout }}"},"run":"options(crayon.enabled = TRUE, timeout=Sys.getenv(\"timeout\"))\nif(!require(\"rcmdcheck\", quietly=TRUE)) install.packages(\"rcmdcheck\")\nas_cran \u003c- if(Sys.getenv(\"AS_CRAN\")=='true') \"--as-cran\" else NULL\nrun_build_vignettes \u003c- if(Sys.getenv(\"run_vignettes\")=='true') NULL else \"--no-build-vignettes\"\nrun_vignettes \u003c- if(Sys.getenv(\"run_vignettes\")=='true') NULL else \"--ignore-vignettes\"\nrcmdcheck::rcmdcheck(\n    args = c(\"--no-manual\", \"--timings\", as_cran, run_vignettes),\n    build_args = c(\"--no-manual\", \"--keep-empty-dirs\", \"--no-resave-data\", run_build_vignettes),\n    error_on = \"warning\",\n    check_dir = \"check\")\n","shell":"Rscript {0}"},{"name":"📋 Reveal testthat details","if":"inputs.has_testthat == 'true'","run":"find . -name testthat.Rout -exec cat '{}' ';'\n","shell":"bash {0}"},{"name":"📋 Run RUnit tests (via BiocGenerics)","if":"inputs.has_runit == 'true'","env":{"timeout":"${{ inputs.timeout }}"},"run":"options(crayon.enabled = TRUE, timeout=Sys.getenv(\"timeout\"))\nBiocGenerics:::testPackage()\n","shell":"Rscript {0}"},{"name":"✅ Run BiocCheck","if":"inputs.run_bioccheck == 'true'","env":{"DISPLAY":99.0,"RGL_USE_NULL":"${{ env.RGL_USE_NULL }}","run_vignettes":"${{ inputs.run_vignettes }}","as_cran":"${{ inputs.as_cran }}","timeout":"${{ inputs.timeout }}"},"run":"options(crayon.enabled = TRUE, timeout=Sys.getenv(\"timeout\"))\n#### Install deps ####\nif(!require(\"BiocManager\", quietly=TRUE)) install.packages(\"BiocManager\")\nif(!require(\"BiocCheck\", quietly=TRUE)) BiocManager::install(\"BiocCheck\")\n#### Allow for packages on CRAN ####\nno_check_vignettes \u003c- Sys.getenv(\"run_vignettes\")=='true'\nas_cran \u003c- Sys.getenv(\"as_cran\")=='true'\n#### Run checks ####\nBiocCheck::BiocCheck(\n    dir('check', 'tar.gz$', full.names = TRUE),\n    `quit-with-status` = TRUE,\n    `no-check-R-ver` = TRUE,\n    `no-check-vignettes` = no_check_vignettes,\n    `no-check-CRAN` = as_cran,\n    `no-check-bioc-help` = as_cran)\n","shell":"Rscript {0}"},{"name":"📋 Test coverage","if":"inputs.run_covr == 'true' \u0026\u0026 runner.os == 'Linux'","run":"covr::codecov()\n","shell":"Rscript {0}"},{"name":"🛠 Install package ️","if":"inputs.run_pkgdown == 'true' \u0026\u0026 runner.os == 'Linux'","run":"R CMD INSTALL .","shell":"bash {0}"},{"name":"ℹ️ Get R package info","if":"runner.os == 'Linux'","run":"#### DockerHub repos must be lowercase (,,) ####\nname=$(grep '^Package:' DESCRIPTION | cut -d\\   -f2)\necho \"packageName=${name,,}\" \u003e\u003e $GITHUB_ENV\necho \"packageNameOrig=${name}\" \u003e\u003e $GITHUB_ENV\necho $name\nversion=$(grep Version DESCRIPTION | grep -o \"[0-9.]\\+\")\necho \"packageVersion=${version}\" \u003e\u003e $GITHUB_ENV\necho $version\necho \"BASE_IMAGE=${{ matrix.config.cont }}\" \u003e\u003e $GITHUB_ENV\n","shell":"bash {0}"},{"name":"📦 Render README","if":"inputs.run_pkgdown == 'true' \u0026\u0026 runner.os == 'Linux'","env":{"DISPLAY":99.0},"run":"if(file.exists(\"README.Rmd\")){\n  options(crayon.enabled = TRUE)\n  if(!require(\"rmarkdown\", quietly=TRUE)) install.packages(\"rmarkdown\");\n  rmarkdown::render(\"README.Rmd\", output_format = rmarkdown::github_document(html_preview = FALSE));\n}\n","shell":"Rscript {0}"},{"name":"📦 Build pkgdown site","if":"inputs.run_pkgdown == 'true' \u0026\u0026 runner.os == 'Linux'","run":"options(crayon.enabled = TRUE)\npkgdown::build_site_github_pages(new_process = FALSE, install = FALSE)\n","shell":"Rscript {0}"},{"name":"📦🚀 Deploy pkgdown site to GitHub pages","if":"inputs.run_pkgdown == 'true' \u0026\u0026 runner.os == 'Linux'","uses":"JamesIves/github-pages-deploy-action@releases/v4","with":{"clean":false,"branch":"gh-pages","folder":"docs","token":"${{ inputs.GITHUB_TOKEN }}"}},{"name":"⏫ Upload check results","if":"failure()","uses":"actions/upload-artifact@v3","with":{"name":"${{ runner.os }}-biocversion-${{ matrix.config.bioc }}-r-${{  matrix.config.r }}-results","path":"check"}},{"name":"🐳✏️ Create Docker file","if":"(!contains(github.event.head_commit.message, '/nodocker')) \u0026\u0026 inputs.run_docker == 'true' \u0026\u0026 runner.os == 'Linux'\n","env":{"BASE_IMAGE":"${{ matrix.config.cont }}","GITHUB_TOKEN":"${{ inputs.GITHUB_TOKEN }}"},"run":"options(crayon.enabled = TRUE)\nif(!require(\"rworkflows\", quietly=TRUE)) remotes::install_github(\"neurogenomics/rworkflows\")\npath \u003c- rworkflows::use_dockerfile(base_image=Sys.getenv(\"BASE_IMAGE\"))\n","shell":"Rscript {0}"},{"name":"🐳🚀 Build and push to GHCR","if":"(!contains(github.event.head_commit.message, '/nodocker')) \u0026\u0026 inputs.run_docker == 'true' \u0026\u0026 runner.os == 'Linux' \u0026\u0026 inputs.docker_registry == 'ghcr.io'\n","uses":"docker/build-push-action@v1","env":{"GITHUB_TOKEN":"${{ inputs.GITHUB_TOKEN }}"},"with":{"username":"${{ github.repository_owner }}","password":"${{ inputs.GITHUB_TOKEN }}","registry":"${{ inputs.docker_registry }}","repository":"${{ github.repository }}","tag_with_ref":true,"tag_with_sha":false,"tags":"${{ env.packageVersion }},\nlatest\n","build_args":"PKG=${{ env.packageNameOrig }},\nBASE_IMAGE=${{ matrix.config.cont }}\n"}},{"name":"🐳🚀 Build and push to DockerHub","if":"(!contains(github.event.head_commit.message, '/nodocker')) \u0026\u0026 inputs.run_docker == 'true' \u0026\u0026 runner.os == 'Linux' \u0026\u0026 inputs.docker_registry == 'docker.io'\n","uses":"docker/build-push-action@v1","env":{"GITHUB_TOKEN":"${{ inputs.GITHUB_TOKEN }}"},"with":{"username":"${{ inputs.docker_user }}","password":"${{ inputs.DOCKER_TOKEN }}","repository":"${{ inputs.docker_org }}/${{ env.packageName }}","tag_with_ref":true,"tag_with_sha":false,"tags":"${{ env.packageVersion }},\nlatest\n","build_args":"PKG=${{ env.packageNameOrig }},\nBASE_IMAGE=${{ env.BASE_IMAGE }}\n"}}]},"default_branch":"master","path":null},"repo_metadata":{"id":62810903,"uuid":"422262705","full_name":"neurogenomics/rworkflows","owner":"neurogenomics","description":"Continuous integration for R packages. 🔀 Automates testing ✅, documentation website building 📦, \u0026 containerised deployment 🐳. ","archived":false,"fork":false,"pushed_at":"2025-08-23T19:55:04.000Z","size":13246,"stargazers_count":80,"open_issues_count":32,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-24T07:43:37.549Z","etag":null,"topics":["bioconductor","containers","continuous-integration","cran-r","docker","dockerhub","github-actions","r","reproducibility","workflows"],"latest_commit_sha":null,"homepage":"https://neurogenomics.github.io/rworkflows/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neurogenomics.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-10-28T15:44:27.000Z","updated_at":"2025-08-23T19:48:27.000Z","dependencies_parsed_at":"2023-09-22T20:21:42.196Z","dependency_job_id":"cbe50f36-ae3c-406a-bc03-cffc33c5c130","html_url":"https://github.com/neurogenomics/rworkflows","commit_stats":{"total_commits":351,"total_committers":2,"mean_commits":175.5,"dds":0.002849002849002802,"last_synced_commit":"8a5161312f385ac2a07a4b53bb64efbc7029d8f7"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/neurogenomics/rworkflows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/sbom","scorecard":{"id":112947,"data":{"date":"2025-08-04","repo":{"name":"github.com/neurogenomics/rworkflows","commit":"59ca487a20663bcdd0176837c09de5d44946e24b"},"scorecard":{"version":"v5.2.1-28-gc1d103a9","commit":"c1d103a9bb9f635ec7260bf9aa0699466fa4be0e"},"score":4.6,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 5/12 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#cii-best-practices"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#dangerous-workflow"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#vulnerabilities"}},{"name":"Token-Permissions","score":8,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/rworkflows.yml:1","Warn: no topLevel permission defined: .github/workflows/rworkflows_dev.yml:1","Warn: no topLevel permission defined: .github/workflows/rworkflows_static.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#token-permissions"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#fuzzing"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_dev.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_dev.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:73: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:101: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:104: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:109: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:124: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:134: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:185: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:353: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:361: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:380: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:399: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: containerImage not pinned by hash: inst/templates/Dockerfile:21","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  11 third-party GitHubAction dependencies pinned","Info:   0 out of   1 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#pinned-dependencies"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#security-policy"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/rworkflows_static.yml:35"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-15T15:37:53.573Z","repository_id":62810903,"created_at":"2025-08-15T15:37:53.573Z","updated_at":"2025-08-15T15:37:53.573Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271874755,"owners_count":24837294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-24T02:00:11.135Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"neurogenomics","name":"neurogenomics","uuid":"48588661","kind":"organization","description":"Neurogenomics Lab, UK Dementia Research Institute at Imperial College London ","email":null,"website":"https://www.neurogenomics.co.uk","location":"United Kingdom","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/48588661?v=4","repositories_count":56,"last_synced_at":"2023-05-26T20:30:34.149Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/neurogenomics","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-21T01:22:40.882Z","updated_at":"2023-05-26T20:30:34.166Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics/repositories"},"tags":[{"name":"v0","sha":"83cabfde32eb2d53ffd7a274dfe7498fb03f68a3","kind":"commit","published_at":"2023-10-29T10:24:06.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v0","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v0","dependencies_parsed_at":"2023-11-03T04:20:08.381Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v0/manifests"},{"name":"v1.2","sha":"0886fd703b6b7a483f1ff75dcaa686090d2d622e","kind":"commit","published_at":"2023-09-14T14:30:44.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v1.2","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v1.2","dependencies_parsed_at":"2023-10-29T04:17:51.741Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.2/manifests"},{"name":"v1.1","sha":"0886fd703b6b7a483f1ff75dcaa686090d2d622e","kind":"commit","published_at":"2023-09-14T14:30:44.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v1.1","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v1.1","dependencies_parsed_at":"2023-10-29T04:17:51.739Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.1/manifests"},{"name":"v1","sha":"79b84b2c46b5db44a48ab6431a1e387ad8d954cf","kind":"commit","published_at":"2022-11-07T02:52:08.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v1","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v1","dependencies_parsed_at":"2023-05-31T19:23:29.224Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1/manifests"},{"name":"latest","sha":"5b57916e55a9689aa86259a2caae600e7fe7bf0e","kind":"commit","published_at":"2021-12-06T17:25:14.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/latest","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/latest","dependencies_parsed_at":"2023-05-31T19:23:29.358Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@latest","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/latest","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/latest/manifests"}]},"repo_metadata_updated_at":"2025-08-24T13:55:54.257Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":6,"rankings":{"downloads":null,"dependent_repos_count":14.447789573760101,"dependent_packages_count":0.0,"stargazers_count":4.043733164316273,"forks_count":11.012517826018064,"docker_downloads_count":null,"average":7.37601014102361},"purl":"pkg:githubactions/neurogenomics/rworkflows","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/actions/neurogenomics/rworkflows","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/actions/neurogenomics/rworkflows","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/actions/neurogenomics/rworkflows/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-15T22:18:05.044Z","issues_count":116,"pull_requests_count":22,"avg_time_to_close_issue":3965373.0,"avg_time_to_close_pull_request":875908.2857142857,"issues_closed_count":84,"pull_requests_closed_count":21,"pull_request_authors_count":5,"issue_authors_count":12,"avg_comments_per_issue":2.1206896551724137,"avg_comments_per_pull_request":1.5454545454545454,"merged_pull_requests_count":19,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":4,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":3163832.5,"past_year_avg_time_to_close_pull_request":2866006.1666666665,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":6,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":3,"past_year_avg_comments_per_issue":1.25,"past_year_avg_comments_per_pull_request":1.5714285714285714,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/issues","maintainers":[{"login":"bschilder","count":108,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bschilder"},{"login":"HDash","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/HDash"}],"active_maintainers":[{"login":"HDash","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/HDash"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/packages/neurogenomics%2Frworkflows/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/packages/neurogenomics%2Frworkflows/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/packages/neurogenomics%2Frworkflows/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/packages/neurogenomics%2Frworkflows/related_packages","maintainers":[],"registry":{"name":"github actions","url":"https://github.com/marketplace/actions/","ecosystem":"actions","default":true,"packages_count":32192,"maintainers_count":0,"namespaces_count":20211,"keywords_count":6167,"github":"actions","metadata":{"funded_packages_count":2687},"icon_url":"https://github.com/actions.png","created_at":"2023-01-03T17:16:39.185Z","updated_at":"2025-09-08T05:02:05.918Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/github%20actions/namespaces"}},{"id":5726080,"name":"rworkflows","ecosystem":"cran","description":"Test, Document, Containerise, and Deploy R Packages","homepage":"https://github.com/neurogenomics/rworkflows","licenses":"GPL-3","normalized_licenses":["GPL-3.0"],"repository_url":"https://github.com/neurogenomics/rworkflows","keywords_array":[],"namespace":null,"versions_count":8,"first_release_published_at":"2022-12-21T00:00:00.000Z","latest_release_published_at":"2025-01-23T00:00:00.000Z","latest_release_number":"1.0.6","last_synced_at":"2025-08-24T13:30:03.594Z","created_at":"2022-12-21T13:44:23.723Z","updated_at":"2025-08-24T13:55:54.245Z","registry_url":"https://cran.r-project.org/package=rworkflows","install_command":null,"documentation_url":"http://cran.r-project.org/web/packages/rworkflows/rworkflows.pdf","metadata":{},"repo_metadata":{"id":62810903,"uuid":"422262705","full_name":"neurogenomics/rworkflows","owner":"neurogenomics","description":"Continuous integration for R packages. 🔀 Automates testing ✅, documentation website building 📦, \u0026 containerised deployment 🐳. ","archived":false,"fork":false,"pushed_at":"2025-08-23T19:55:04.000Z","size":13246,"stargazers_count":80,"open_issues_count":32,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-24T07:43:37.549Z","etag":null,"topics":["bioconductor","containers","continuous-integration","cran-r","docker","dockerhub","github-actions","r","reproducibility","workflows"],"latest_commit_sha":null,"homepage":"https://neurogenomics.github.io/rworkflows/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neurogenomics.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-10-28T15:44:27.000Z","updated_at":"2025-08-23T19:48:27.000Z","dependencies_parsed_at":"2023-09-22T20:21:42.196Z","dependency_job_id":"cbe50f36-ae3c-406a-bc03-cffc33c5c130","html_url":"https://github.com/neurogenomics/rworkflows","commit_stats":{"total_commits":351,"total_committers":2,"mean_commits":175.5,"dds":0.002849002849002802,"last_synced_commit":"8a5161312f385ac2a07a4b53bb64efbc7029d8f7"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/neurogenomics/rworkflows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/sbom","scorecard":{"id":112947,"data":{"date":"2025-08-04","repo":{"name":"github.com/neurogenomics/rworkflows","commit":"59ca487a20663bcdd0176837c09de5d44946e24b"},"scorecard":{"version":"v5.2.1-28-gc1d103a9","commit":"c1d103a9bb9f635ec7260bf9aa0699466fa4be0e"},"score":4.6,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#maintained"}},{"name":"Code-Review","score":4,"reason":"Found 5/12 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#code-review"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#cii-best-practices"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#dangerous-workflow"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#vulnerabilities"}},{"name":"Token-Permissions","score":8,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/rworkflows.yml:1","Warn: no topLevel permission defined: .github/workflows/rworkflows_dev.yml:1","Warn: no topLevel permission defined: .github/workflows/rworkflows_static.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#token-permissions"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#fuzzing"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_dev.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_dev.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:73: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:101: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:104: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:109: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:124: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:134: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:185: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:353: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:361: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:380: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rworkflows_static.yml:399: update your workflow using https://app.stepsecurity.io/secureworkflow/neurogenomics/rworkflows/rworkflows_static.yml/master?enable=pin","Warn: containerImage not pinned by hash: inst/templates/Dockerfile:21","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  11 third-party GitHubAction dependencies pinned","Info:   0 out of   1 containerImage dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#pinned-dependencies"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#security-policy"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/rworkflows_static.yml:35"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-15T15:37:53.573Z","repository_id":62810903,"created_at":"2025-08-15T15:37:53.573Z","updated_at":"2025-08-15T15:37:53.573Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271874755,"owners_count":24837294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-24T02:00:11.135Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"neurogenomics","name":"neurogenomics","uuid":"48588661","kind":"organization","description":"Neurogenomics Lab, UK Dementia Research Institute at Imperial College London ","email":null,"website":"https://www.neurogenomics.co.uk","location":"United Kingdom","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/48588661?v=4","repositories_count":56,"last_synced_at":"2023-05-26T20:30:34.149Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/neurogenomics","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-21T01:22:40.882Z","updated_at":"2023-05-26T20:30:34.166Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neurogenomics/repositories"},"tags":[{"name":"v0","sha":"83cabfde32eb2d53ffd7a274dfe7498fb03f68a3","kind":"commit","published_at":"2023-10-29T10:24:06.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v0","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v0","dependencies_parsed_at":"2023-11-03T04:20:08.381Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v0/manifests"},{"name":"v1.2","sha":"0886fd703b6b7a483f1ff75dcaa686090d2d622e","kind":"commit","published_at":"2023-09-14T14:30:44.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v1.2","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v1.2","dependencies_parsed_at":"2023-10-29T04:17:51.741Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.2/manifests"},{"name":"v1.1","sha":"0886fd703b6b7a483f1ff75dcaa686090d2d622e","kind":"commit","published_at":"2023-09-14T14:30:44.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v1.1","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v1.1","dependencies_parsed_at":"2023-10-29T04:17:51.739Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1.1/manifests"},{"name":"v1","sha":"79b84b2c46b5db44a48ab6431a1e387ad8d954cf","kind":"commit","published_at":"2022-11-07T02:52:08.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/v1","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/v1","dependencies_parsed_at":"2023-05-31T19:23:29.224Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@v1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/v1/manifests"},{"name":"latest","sha":"5b57916e55a9689aa86259a2caae600e7fe7bf0e","kind":"commit","published_at":"2021-12-06T17:25:14.000Z","download_url":"https://codeload.github.com/neurogenomics/rworkflows/tar.gz/latest","html_url":"https://github.com/neurogenomics/rworkflows/releases/tag/latest","dependencies_parsed_at":"2023-05-31T19:23:29.358Z","dependency_job_id":null,"purl":"pkg:github/neurogenomics/rworkflows@latest","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/latest","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/tags/latest/manifests"}]},"repo_metadata_updated_at":"2025-08-24T13:55:54.244Z","dependent_packages_count":0,"downloads":404,"downloads_period":"last-month","dependent_repos_count":4,"rankings":{"downloads":31.229515457525025,"dependent_repos_count":14.502768549280177,"dependent_packages_count":28.64230343300111,"stargazers_count":7.188413499867127,"forks_count":12.185506732813607,"docker_downloads_count":null,"average":18.74970153449741},"purl":"pkg:cran/rworkflows","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/cran/rworkflows","docker_dependents_count":1,"docker_downloads_count":15,"usage_url":"https://repos.ecosyste.ms/usage/cran/rworkflows","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/cran/rworkflows/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-15T22:18:05.044Z","issues_count":116,"pull_requests_count":22,"avg_time_to_close_issue":3965373.0,"avg_time_to_close_pull_request":875908.2857142857,"issues_closed_count":84,"pull_requests_closed_count":21,"pull_request_authors_count":5,"issue_authors_count":12,"avg_comments_per_issue":2.1206896551724137,"avg_comments_per_pull_request":1.5454545454545454,"merged_pull_requests_count":19,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":4,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":3163832.5,"past_year_avg_time_to_close_pull_request":2866006.1666666665,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":6,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":3,"past_year_avg_comments_per_issue":1.25,"past_year_avg_comments_per_pull_request":1.5714285714285714,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/issues","maintainers":[{"login":"bschilder","count":108,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bschilder"},{"login":"HDash","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/HDash"}],"active_maintainers":[{"login":"HDash","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/HDash"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rworkflows/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rworkflows/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rworkflows/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rworkflows/related_packages","maintainers":[{"uuid":"brian_schilder@alumni.brown.edu","login":null,"name":"Brian Schilder","email":"brian_schilder@alumni.brown.edu","url":null,"packages_count":1,"html_url":null,"role":null,"created_at":"2022-12-21T13:45:31.827Z","updated_at":"2022-12-21T13:45:31.827Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/maintainers/brian_schilder@alumni.brown.edu/packages"}],"registry":{"name":"cran.r-project.org","url":"https://cran.r-project.org","ecosystem":"cran","default":true,"packages_count":26181,"maintainers_count":14299,"namespaces_count":0,"keywords_count":8326,"github":"r-project-org","metadata":{"funded_packages_count":539},"icon_url":"https://github.com/r-project-org.png","created_at":"2022-04-06T16:32:25.637Z","updated_at":"2025-09-08T06:54:01.855Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/namespaces"}}],"commits":{"id":472962,"full_name":"neurogenomics/rworkflows","default_branch":"master","committers":[{"name":"Brian M. Schilder","email":"34280215+bschilder","login":"bschilder","count":546},{"name":"HDash","email":"16350928+HDash","login":"HDash","count":11},{"name":"js2264","email":"jacquesserizay@gmail.com","login":"js2264","count":8},{"name":"Tuomas Borman","email":"60338854+TuomasBorman","login":"TuomasBorman","count":2},{"name":"Ali Sajid Imami","email":"395482+AliSajid","login":"AliSajid","count":1}],"total_commits":568,"total_committers":5,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":113.6,"dds":0.03873239436619713,"past_year_committers":[{"name":"HDash","email":"16350928+HDash","login":"HDash","count":11},{"name":"Brian M. Schilder","email":"34280215+bschilder","login":"bschilder","count":6},{"name":"js2264","email":"jacquesserizay@gmail.com","login":"js2264","count":3},{"name":"Tuomas Borman","email":"60338854+TuomasBorman","login":"TuomasBorman","count":2}],"past_year_total_commits":22,"past_year_total_committers":4,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":5.5,"past_year_dds":0.5,"last_synced_at":"2025-05-21T13:39:10.787Z","last_synced_commit":"59ca487a20663bcdd0176837c09de5d44946e24b","created_at":"2023-03-09T00:58:35.955Z","updated_at":"2025-05-21T13:39:10.788Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:16.827Z","repositories_count":5480019,"commits_count":853389126,"contributors_count":31098155,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"neurogenomics/rworkflows","html_url":"https://github.com/neurogenomics/rworkflows","last_synced_at":"2025-08-31T13:17:58.770Z","status":null,"issues_count":116,"pull_requests_count":24,"avg_time_to_close_issue":3965373.0,"avg_time_to_close_pull_request":1417017.956521739,"issues_closed_count":84,"pull_requests_closed_count":23,"pull_request_authors_count":5,"issue_authors_count":12,"avg_comments_per_issue":2.103448275862069,"avg_comments_per_pull_request":1.5416666666666667,"merged_pull_requests_count":21,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":3,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":3163832.5,"past_year_avg_time_to_close_pull_request":3001434.8333333335,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":6,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":1.0,"past_year_avg_comments_per_pull_request":1.5714285714285714,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"created_at":"2023-05-10T23:09:53.962Z","updated_at":"2025-09-03T04:29:46.346Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/neurogenomics%2Frworkflows/issues","issue_labels_count":{"enhancement":50,"bug":36,"GitHub Actions":26,"documentation":20,"publication":9,"help wanted":6,"🐳 Docker":4,"CRAN":4,"good first issue":3,"🕰️ Longevity 🕰️":3,"conda":2,"bug in dependency":2},"pull_request_labels_count":{"bug":4,"GitHub Actions":3,"enhancement":1,"bug in dependency":1,"🐳 Docker":1},"issue_author_associations_count":{"COLLABORATOR":94,"NONE":13,"CONTRIBUTOR":4},"pull_request_author_associations_count":{"CONTRIBUTOR":15,"COLLABORATOR":10,"MEMBER":2,"NONE":1},"issue_authors":{"bschilder":94,"lcolladotor":4,"HDash":2,"TuomasBorman":2,"stemangiola":2,"AliSajid":2,"OskarGauffin":1,"barracuda156":1,"vvyas-arcus":1,"Daenarys8":1,"vjcitn":1},"pull_request_authors":{"HDash":10,"bschilder":10,"js2264":6,"AliSajid":1,"TuomasBorman":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:17.013Z","repositories_count":10168351,"issues_count":32015117,"pull_requests_count":100242866,"authors_count":10730290,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"bug":2,"GitHub Actions":1,"enhancement":1},"past_year_pull_request_labels_count":{"bug":2,"GitHub Actions":1,"bug in dependency":1,"🐳 Docker":1},"past_year_issue_author_associations_count":{"CONTRIBUTOR":2,"NONE":1},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":7,"MEMBER":2},"past_year_issue_authors":{"HDash":2,"Daenarys8":1},"past_year_pull_request_authors":{"HDash":8,"TuomasBorman":1},"maintainers":[{"login":"bschilder","count":104,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bschilder"},{"login":"HDash","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/HDash"}],"active_maintainers":[{"login":"HDash","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/HDash"}]},"events":{"total":{"IssuesEvent":4,"WatchEvent":6,"DeleteEvent":2,"IssueCommentEvent":16,"PushEvent":41,"PullRequestReviewEvent":5,"PullRequestReviewCommentEvent":4,"PullRequestEvent":9,"ForkEvent":1,"CreateEvent":2},"last_year":{"IssuesEvent":4,"WatchEvent":6,"DeleteEvent":2,"IssueCommentEvent":16,"PushEvent":41,"PullRequestReviewEvent":5,"PullRequestReviewCommentEvent":4,"PullRequestEvent":9,"ForkEvent":1,"CreateEvent":2}},"keywords":["bioconductor","containers","continuous-integration","cran-r","docker","dockerhub","github-actions","r","reproducibility","workflows"],"dependencies":[{"ecosystem":"cran","filepath":"DESCRIPTION","sha":null,"kind":"manifest","created_at":"2022-11-07T03:45:15.155Z","updated_at":"2022-11-07T03:45:15.155Z","repository_link":"https://github.com/neurogenomics/rworkflows/blob/master/DESCRIPTION","dependencies":[{"id":6620824519,"package_name":"R","ecosystem":"cran","requirements":"\u003e= 4.2","direct":true,"kind":"depends","optional":false},{"id":6620824520,"package_name":"here","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":6620824521,"package_name":"yaml","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":6620824522,"package_name":"utils","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":6620824523,"package_name":"markdown","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824524,"package_name":"rmarkdown","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824525,"package_name":"magick","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824526,"package_name":"remotes","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824527,"package_name":"knitr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824528,"package_name":"BiocStyle","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824529,"package_name":"covr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824530,"package_name":"testthat","ecosystem":"cran","requirements":"\u003e= 3.0.0","direct":true,"kind":"suggests","optional":false},{"id":6620824531,"package_name":"badger","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":6620824532,"package_name":"hexSticker","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/rworkflows.yml","sha":null,"kind":"manifest","created_at":"2023-01-04T10:58:16.247Z","updated_at":"2023-01-04T10:58:16.247Z","repository_link":"https://github.com/neurogenomics/rworkflows/blob/master/.github/workflows/rworkflows.yml","dependencies":[{"id":6861937009,"package_name":"neurogenomics/rworkflows","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/rworkflows_static.yml","sha":null,"kind":"manifest","created_at":"2023-01-04T10:58:16.267Z","updated_at":"2023-01-04T10:58:16.267Z","repository_link":"https://github.com/neurogenomics/rworkflows/blob/master/.github/workflows/rworkflows_static.yml","dependencies":[{"id":6861937048,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937049,"package_name":"r-lib/actions/setup-r","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937050,"package_name":"r-lib/actions/setup-pandoc","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937051,"package_name":"actions/cache","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937052,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937053,"package_name":"docker/build-push-action","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":"action.yml","sha":null,"kind":"manifest","created_at":"2023-01-04T10:58:16.305Z","updated_at":"2023-01-04T10:58:16.305Z","repository_link":"https://github.com/neurogenomics/rworkflows/blob/master/action.yml","dependencies":[{"id":6861937056,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":6861937057,"package_name":"grimbough/bioc-actions/setup-bioc","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":6861937058,"package_name":"r-lib/actions/setup-pandoc","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937059,"package_name":"actions/cache","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":6861937060,"package_name":"r-lib/actions/setup-tinytex","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937061,"package_name":"r-lib/actions/setup-r-dependencies","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937062,"package_name":"codecov/codecov-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":6861937063,"package_name":"JamesIves/github-pages-deploy-action","ecosystem":"actions","requirements":"releases/v4","direct":true,"kind":"composite","optional":false},{"id":6861937064,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6861937065,"package_name":"docker/build-push-action","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"docker","filepath":"inst/templates/Dockerfile","sha":null,"kind":"manifest","created_at":"2023-01-04T10:58:16.373Z","updated_at":"2023-01-04T10:58:16.373Z","repository_link":"https://github.com/neurogenomics/rworkflows/blob/master/inst/templates/Dockerfile","dependencies":[{"id":6861937086,"package_name":"bioconductor/bioconductor_docker","ecosystem":"docker","requirements":"devel","direct":true,"kind":"build","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/rworkflows_dev.yml","sha":null,"kind":"manifest","created_at":"2023-09-22T20:21:41.552Z","updated_at":"2023-09-22T20:21:41.552Z","repository_link":"https://github.com/neurogenomics/rworkflows/blob/master/.github/workflows/rworkflows_dev.yml","dependencies":[{"id":13882086948,"package_name":"neurogenomics/rworkflows","ecosystem":"actions","requirements":"dev","direct":true,"kind":"composite","optional":false}]}],"score":12.394044873832941,"created_at":"2025-09-08T11:26:00.571Z","updated_at":"2025-10-07T08:26:41.297Z","avatar_url":"https://github.com/neurogenomics.png","language":"HTML","category":null,"sub_category":null,"monthly_downloads":404,"funding_links":[],"readme_doi_urls":["https://doi.org/10.5281/zenodo.10048573'"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/73613","html_url":"https://science.ecosyste.ms/projects/73613"}