Skip to content

Commit

Permalink
update documentation
Browse files Browse the repository at this point in the history
- get_description moved to struct and updated
  • Loading branch information
grlloyd committed Jan 31, 2024
1 parent ad6e0fb commit 0938837
Show file tree
Hide file tree
Showing 112 changed files with 1,457 additions and 461 deletions.
129 changes: 73 additions & 56 deletions .github/workflows/check-bioc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ name: R-CMD-check-bioc
## "/nocache" in the commit message.
env:
has_testthat: 'true'
run_covr: 'true'
run_pkgdown: 'false'
run_covr: 'false'
run_pkgdown: 'true'
has_RUnit: 'false'
cache-version: 'cache-v1'
run_docker: 'false'
Expand All @@ -52,9 +52,9 @@ jobs:
fail-fast: false
matrix:
config:
- { os: ubuntu-latest, r: 'devel', bioc: '3.17', cont: "bioconductor/bioconductor_docker:devel", rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest" }
- { os: macOS-latest, r: 'devel', bioc: '3.17'}
- { os: windows-latest, r: 'devel', bioc: '3.17'}
- { os: ubuntu-latest, r: '4.3', bioc: '3.17', cont: "bioconductor/bioconductor_docker:RELEASE_3_17", rspm: "https://packagemanager.rstudio.com/cran/__linux__/jammy/latest" }
- { os: macOS-latest, r: '4.3', bioc: '3.17'}
- { os: windows-latest, r: '4.3', bioc: '3.17'}
## Check https://github.com/r-lib/actions/tree/master/examples
## for examples using the http-user-agent
env:
Expand Down Expand Up @@ -105,23 +105,23 @@ jobs:
uses: actions/cache@v3
with:
path: ${{ env.R_LIBS_USER }}
key: ${{ env.cache-version }}-${{ runner.os }}-biocversion-devel-r-devel-${{ hashFiles('.github/depends.Rds') }}
restore-keys: ${{ env.cache-version }}-${{ runner.os }}-biocversion-devel-r-devel-
key: ${{ env.cache-version }}-${{ runner.os }}-biocversion-RELEASE_3_17-r-4.3-${{ hashFiles('.github/depends.Rds') }}
restore-keys: ${{ env.cache-version }}-${{ runner.os }}-biocversion-RELEASE_3_17-r-4.3-

- name: Cache R packages on Linux
if: "!contains(github.event.head_commit.message, '/nocache') && runner.os == 'Linux' "
uses: actions/cache@v3
with:
path: /home/runner/work/_temp/Library
key: ${{ env.cache-version }}-${{ runner.os }}-biocversion-devel-r-devel-${{ hashFiles('.github/depends.Rds') }}
restore-keys: ${{ env.cache-version }}-${{ runner.os }}-biocversion-devel-r-devel-
key: ${{ env.cache-version }}-${{ runner.os }}-biocversion-RELEASE_3_17-r-4.3-${{ hashFiles('.github/depends.Rds') }}
restore-keys: ${{ env.cache-version }}-${{ runner.os }}-biocversion-RELEASE_3_17-r-4.3-

- name: Install Linux system dependencies
if: runner.os == 'Linux'
run: |
sysreqs=$(Rscript -e 'cat("apt-get update -y && apt-get install -y", paste(gsub("apt-get install -y ", "", remotes::system_requirements("ubuntu", "20.04")), collapse = " "))')
echo $sysreqs
sudo -s eval "$sysreqs"
# - name: Install Linux system dependencies
# if: runner.os == 'Linux'
# run: |
# sysreqs=$(Rscript -e 'cat("apt-get update -y && apt-get install -y", paste(gsub("apt-get install -y ", "", remotes::system_requirements("ubuntu", "20.04")), collapse = " "))')
# echo $sysreqs
# sudo -s eval "$sysreqs"

- name: Install macOS system dependencies
if: matrix.config.os == 'macOS-latest'
Expand Down Expand Up @@ -169,35 +169,19 @@ jobs:
## https://github.com/r-lib/remotes/issues/296
## Ideally, all dependencies should get installed in the first pass.
## Set the repos source depending on the OS
## Alternatively use https://storage.googleapis.com/bioconductor_docker/packages/
## though based on https://bit.ly/bioc2021-package-binaries
## the Azure link will be the main one going forward.
gha_repos <- if(
.Platform$OS.type == "unix" && Sys.info()["sysname"] != "Darwin"
) c(
"AnVIL" = "https://bioconductordocker.blob.core.windows.net/packages/3.17/bioc",
BiocManager::repositories()
) else BiocManager::repositories()
## For running the checks
message(paste('****', Sys.time(), 'installing rcmdcheck and BiocCheck ****'))
install.packages(c("rcmdcheck", "BiocCheck"), repos = gha_repos)
install.packages(c("rcmdcheck", "BiocCheck"), repos = BiocManager::repositories())
## Pass #1 at installing dependencies
## This pass uses AnVIL-powered fast binaries
## details at https://github.com/nturaga/bioc2021-bioconductor-binaries
## The speed gains only apply to the docker builds.
message(paste('****', Sys.time(), 'pass number 1 at installing dependencies: local dependencies ****'))
remotes::install_local(dependencies = TRUE, repos = gha_repos, build_vignettes = FALSE, upgrade = TRUE)
remotes::install_local(dependencies = TRUE, repos = BiocManager::repositories(), build_vignettes = FALSE, upgrade = TRUE)
continue-on-error: true
shell: Rscript {0}

- name: Install dependencies pass 2
run: |
## Pass #2 at installing dependencies
## This pass does not use AnVIL and will thus update any packages
## that have seen been updated in Bioconductor
message(paste('****', Sys.time(), 'pass number 2 at installing dependencies: any remaining dependencies ****'))
remotes::install_local(dependencies = TRUE, repos = BiocManager::repositories(), build_vignettes = TRUE, upgrade = TRUE, force = TRUE)
shell: Rscript {0}
Expand All @@ -210,15 +194,15 @@ jobs:
shell: Rscript {0}

- name: Install covr
if: github.ref == 'refs/heads/master' && env.run_covr == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_covr == 'true' && runner.os == 'Linux'
run: |
remotes::install_cran("covr")
shell: Rscript {0}

- name: Install pkgdown
if: github.ref == 'refs/heads/master' && env.run_pkgdown == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_pkgdown == 'true' && runner.os == 'Linux'
run: |
remotes::install_github("r-lib/pkgdown")
remotes::install_cran("pkgdown")
shell: Rscript {0}

- name: Session info
Expand Down Expand Up @@ -266,17 +250,17 @@ jobs:
shell: Rscript {0}

- name: Test coverage
if: github.ref == 'refs/heads/master' && env.run_covr == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_covr == 'true' && runner.os == 'Linux'
run: |
covr::codecov()
shell: Rscript {0}

- name: Install package
if: github.ref == 'refs/heads/master' && env.run_pkgdown == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_pkgdown == 'true' && runner.os == 'Linux'
run: R CMD INSTALL .

- name: Build pkgdown site
if: github.ref == 'refs/heads/master' && env.run_pkgdown == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_pkgdown == 'true' && runner.os == 'Linux'
run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE)
shell: Rscript {0}
## Note that you need to run pkgdown::deploy_to_branch(new_process = FALSE)
Expand All @@ -285,12 +269,12 @@ jobs:
## makes the git history recognizable by pkgdown.

- name: Install deploy dependencies
if: github.ref == 'refs/heads/master' && env.run_pkgdown == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_pkgdown == 'true' && runner.os == 'Linux'
run: |
apt-get update && apt-get -y install rsync
- name: Deploy pkgdown site to GitHub pages 🚀
if: github.ref == 'refs/heads/master' && env.run_pkgdown == 'true' && runner.os == 'Linux'
if: github.ref == 'refs/heads/devel' && env.run_pkgdown == 'true' && runner.os == 'Linux'
uses: JamesIves/github-pages-deploy-action@releases/v4
with:
clean: false
Expand All @@ -301,21 +285,54 @@ jobs:
if: failure()
uses: actions/upload-artifact@master
with:
name: ${{ runner.os }}-biocversion-devel-r-devel-results
name: ${{ runner.os }}-biocversion-RELEASE_3_17-r-4.3-results
path: check

## Note that DOCKER_PASSWORD is really a token for your dockerhub
## account, not your actual dockerhub account password.
## This comes from
## https://seandavi.github.io/BuildABiocWorkshop/articles/HOWTO_BUILD_WORKSHOP.html#6-add-secrets-to-github-repo
## Check https://github.com/docker/build-push-action/tree/releases/v1
## for more details.
- uses: docker/build-push-action@v1
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && runner.os == 'Linux' "

## Code adapted from
## https://github.com/waldronlab/cBioPortalData/blob/e0440a4445f0cc731e426363a76faa22ee5e0f9d/.github/workflows/devel_check_dock.yml#L65-L92
docker-build-and-push:
runs-on: ubuntu-latest
needs: build-check
steps:
- name: Checkout Repository
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && github.ref == 'refs/heads/devel'"
uses: actions/checkout@v3

- name: Register repo name
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && github.ref == 'refs/heads/devel'"
id: reg_repo_name
run: |
echo CONT_IMG_NAME=$(echo ${{ github.event.repository.name }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV
- name: Set up QEMU
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && github.ref == 'refs/heads/devel'"
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && github.ref == 'refs/heads/devel'"
uses: docker/setup-buildx-action@v2

- name: Login to Docker Hub
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && github.ref == 'refs/heads/devel'"
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
## Note that DOCKERHUB_TOKEN is really a token for your dockerhub
## account, not your actual dockerhub account password. You can get it
## from https://hub.docker.com/settings/security.
## Check https://github.com/docker/build-push-action/tree/v4.0.0
## for more details.
## Alternatively, try checking
## https://seandavi.github.io/BuildABiocWorkshop/articles/HOWTO_BUILD_WORKSHOP.html.

- name: Build and Push Docker
if: "!contains(github.event.head_commit.message, '/nodocker') && env.run_docker == 'true' && github.ref == 'refs/heads/devel' && success()"
uses: docker/build-push-action@v4
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
repository: computational-metabolomics/structtoolbox
tag_with_ref: true
tag_with_sha: true
tags: latest
context: .
push: true
tags: >
${{ secrets.DOCKERHUB_USERNAME }}/${{ env.CONT_IMG_NAME }}:latest,
${{ secrets.DOCKERHUB_USERNAME }}/${{ env.CONT_IMG_NAME }}:devel
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Package: structToolbox
Type: Package
Title: Data processing & analysis tools for Metabolomics and other omics
Version: 1.13.5
Version: 1.13.6
Authors@R: c(
person(
c("Gavin","Rhys"),
Expand Down
2 changes: 1 addition & 1 deletion NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,6 @@ import(methods)
import(scales)
import(stats)
import(struct)
import(utils)
importFrom(scales,squish)
importFrom(sp,point.in.polygon)
importFrom(utils,capture.output)
4 changes: 1 addition & 3 deletions R/PCA_class.R
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
#' @eval get_description('PCA')
#' @eval struct::get_description('PCA')
#' @import struct
#' @export PCA
#' @examples
#' M = PCA()
PCA = function(number_components=2,...) {
out=struct::new_struct('PCA',
number_components=number_components,
Expand Down
14 changes: 10 additions & 4 deletions R/forward_selection_by_rank_class.R
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,13 @@
#' M = run(M,D,balanced_accuracy())
#'
#' @export forward_selection_by_rank
forward_selection_by_rank = function(min_no_vars=1,max_no_vars=100,step_size=1,factor_name,variable_rank,...) {
forward_selection_by_rank = function(
min_no_vars=1,
max_no_vars=100,
step_size=1,
factor_name,
variable_rank,
...) {
out=struct::new_struct('forward_selection_by_rank',
min_no_vars=min_no_vars,
max_no_vars=max_no_vars,
Expand Down Expand Up @@ -49,21 +55,21 @@ forward_selection_by_rank = function(min_no_vars=1,max_no_vars=100,step_size=1,f
smoothed='entity',
searchlist='entity'
),
prototype = list(variable_rank=c(1,2,3),
prototype = list(
name = 'Forward selection by rank',
description = paste0('A model is trained and performance metric ',
'computed by including increasing numbers of features in the model. ',
'The features to be included in each step are defined by their rank, ',
'which is computed from another variable e.g. VIP score. An "optimal"',
'subset of features is suggested by minimising the input performance metric.'),
result='results',
.params=c('min_no_vars','max_no_vars','step_size','factor_name'),
.params=c('min_no_vars','max_no_vars','step_size','factor_name','variable_rank'),
.outputs=c('metric','results','chosen_vars','smoothed','searchlist'),
variable_rank=entity(
name = 'Variable rank',
description = 'The values used to rank the features.',
type=c('numeric','integer'),
value=numeric(0)
value=1
),
min_no_vars = entity(
name = 'Minimum number of variables',
Expand Down
1 change: 1 addition & 0 deletions R/structToolbox.R
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@
#' @import struct
#' @import methods
#' @import stats
#' @import utils
NULL
## NULL
Loading

0 comments on commit 0938837

Please sign in to comment.