diff --git a/.Rbuildignore b/.Rbuildignore
index ff8d289..ea6da77 100644
--- a/.Rbuildignore
+++ b/.Rbuildignore
@@ -4,3 +4,4 @@
^CODE_OF_CONDUCT\.md$
^LICENSE\.md$
^\.github$
+^codecov\.yml$
diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml
new file mode 100644
index 0000000..6f45a13
--- /dev/null
+++ b/.github/workflows/R-CMD-check.yaml
@@ -0,0 +1,49 @@
+# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
+# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
+on:
+ push:
+ branches: [main, master]
+ pull_request:
+ branches: [main, master]
+
+name: R-CMD-check
+
+jobs:
+ R-CMD-check:
+ runs-on: ${{ matrix.config.os }}
+
+ name: ${{ matrix.config.os }} (${{ matrix.config.r }})
+
+ strategy:
+ fail-fast: false
+ matrix:
+ config:
+ - {os: macOS-latest, r: 'release'}
+ - {os: windows-latest, r: 'release'}
+ - {os: ubuntu-latest, r: 'devel', http-user-agent: 'release'}
+ - {os: ubuntu-latest, r: 'release'}
+ - {os: ubuntu-latest, r: 'oldrel-1'}
+
+ env:
+ GITHUB_PAT: ${{ secrets.GHA_TOKEN }}
+ R_KEEP_PKG_SOURCE: yes
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - uses: r-lib/actions/setup-pandoc@v2
+
+ - uses: r-lib/actions/setup-r@v2
+ with:
+ r-version: ${{ matrix.config.r }}
+ http-user-agent: ${{ matrix.config.http-user-agent }}
+ use-public-rspm: true
+
+ - uses: r-lib/actions/setup-r-dependencies@v2
+ with:
+ extra-packages: any::rcmdcheck
+ needs: check
+
+ - uses: r-lib/actions/check-r-package@v2
+ with:
+ upload-snapshots: true
diff --git a/.github/workflows/pr-commands.yaml b/.github/workflows/pr-commands.yaml
new file mode 100644
index 0000000..55ea746
--- /dev/null
+++ b/.github/workflows/pr-commands.yaml
@@ -0,0 +1,79 @@
+# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
+# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
+on:
+ issue_comment:
+ types: [created]
+
+name: Commands
+
+jobs:
+ document:
+ if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/document') }}
+ name: document
+ runs-on: ubuntu-latest
+ env:
+ GITHUB_PAT: ${{ secrets.GHA_TOKEN }}
+ steps:
+ - uses: actions/checkout@v2
+
+ - uses: r-lib/actions/pr-fetch@v2
+ with:
+ repo-token: ${{ secrets.GHA_TOKEN }}
+
+ - uses: r-lib/actions/setup-r@v2
+ with:
+ use-public-rspm: true
+
+ - uses: r-lib/actions/setup-r-dependencies@v2
+ with:
+ extra-packages: any::roxygen2
+ needs: pr-document
+
+ - name: Document
+ run: roxygen2::roxygenise()
+ shell: Rscript {0}
+
+ - name: commit
+ run: |
+ git config --local user.name "$GITHUB_ACTOR"
+ git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com"
+ git add man/\* NAMESPACE
+ git commit -m 'Document'
+
+ - uses: r-lib/actions/pr-push@v2
+ with:
+ repo-token: ${{ secrets.GHA_TOKEN }}
+
+ style:
+ if: ${{ github.event.issue.pull_request && (github.event.comment.author_association == 'MEMBER' || github.event.comment.author_association == 'OWNER') && startsWith(github.event.comment.body, '/style') }}
+ name: style
+ runs-on: ubuntu-latest
+ env:
+ GITHUB_PAT: ${{ secrets.GHA_TOKEN }}
+ steps:
+ - uses: actions/checkout@v2
+
+ - uses: r-lib/actions/pr-fetch@v2
+ with:
+ repo-token: ${{ secrets.GHA_TOKEN }}
+
+ - uses: r-lib/actions/setup-r@v2
+
+ - name: Install dependencies
+ run: install.packages("styler")
+ shell: Rscript {0}
+
+ - name: Style
+ run: styler::style_pkg()
+ shell: Rscript {0}
+
+ - name: commit
+ run: |
+ git config --local user.name "$GITHUB_ACTOR"
+ git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com"
+ git add \*.R
+ git commit -m 'Style'
+
+ - uses: r-lib/actions/pr-push@v2
+ with:
+ repo-token: ${{ secrets.GHA_TOKEN }}
diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml
new file mode 100644
index 0000000..4b65418
--- /dev/null
+++ b/.github/workflows/test-coverage.yaml
@@ -0,0 +1,31 @@
+# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
+# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
+on:
+ push:
+ branches: [main, master]
+ pull_request:
+ branches: [main, master]
+
+name: test-coverage
+
+jobs:
+ test-coverage:
+ runs-on: ubuntu-latest
+ env:
+ GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - uses: r-lib/actions/setup-r@v2
+ with:
+ use-public-rspm: true
+
+ - uses: r-lib/actions/setup-r-dependencies@v2
+ with:
+ extra-packages: any::covr
+ needs: coverage
+
+ - name: Test coverage
+ run: covr::codecov(quiet = FALSE)
+ shell: Rscript {0}
diff --git a/DESCRIPTION b/DESCRIPTION
index 4253541..77f17b3 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -26,6 +26,7 @@ Imports:
hardhat,
rlang
Suggests:
+ covr,
knitr,
modeldata,
parsnip,
diff --git a/R/bespoke-package.R b/R/bespoke-package.R
index d8a2077..3e0628e 100644
--- a/R/bespoke-package.R
+++ b/R/bespoke-package.R
@@ -13,6 +13,7 @@
# limitations under the License.
#' @keywords internal
+#' @aliases bespoke-package
"_PACKAGE"
# The following block is used by usethis to automatically manage
diff --git a/README.Rmd b/README.Rmd
index 598c044..d2f9eed 100644
--- a/README.Rmd
+++ b/README.Rmd
@@ -18,6 +18,8 @@ knitr::opts_chunk$set(
# bespoke
+[![R-CMD-check](https://github.com/macmillancontentscience/bespoke/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/macmillancontentscience/bespoke/actions/workflows/R-CMD-check.yaml)
+[![Codecov test coverage](https://codecov.io/gh/macmillancontentscience/bespoke/branch/main/graph/badge.svg)](https://app.codecov.io/gh/macmillancontentscience/bespoke?branch=main)
Sometimes it makes sense to define a simple baseline model programmatically, using simple rules defined by subject matter experts.
diff --git a/README.md b/README.md
index b43f350..db302cc 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,10 @@
# bespoke
+
+[![R-CMD-check](https://github.com/macmillancontentscience/bespoke/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/macmillancontentscience/bespoke/actions/workflows/R-CMD-check.yaml)
+[![Codecov test
+coverage](https://codecov.io/gh/macmillancontentscience/bespoke/branch/main/graph/badge.svg)](https://app.codecov.io/gh/macmillancontentscience/bespoke?branch=main)
Sometimes it makes sense to define a simple baseline model
diff --git a/codecov.yml b/codecov.yml
new file mode 100644
index 0000000..04c5585
--- /dev/null
+++ b/codecov.yml
@@ -0,0 +1,14 @@
+comment: false
+
+coverage:
+ status:
+ project:
+ default:
+ target: auto
+ threshold: 1%
+ informational: true
+ patch:
+ default:
+ target: auto
+ threshold: 1%
+ informational: true
diff --git a/man/bespoke-package.Rd b/man/bespoke-package.Rd
index 10f9f3f..73e0de5 100644
--- a/man/bespoke-package.Rd
+++ b/man/bespoke-package.Rd
@@ -2,10 +2,12 @@
% Please edit documentation in R/bespoke-package.R
\docType{package}
\name{bespoke-package}
-\alias{bespoke}
\alias{bespoke-package}
+\alias{_PACKAGE}
\title{bespoke: Manual Baseline Models}
\description{
+\if{html}{\figure{logo.png}{options: style='float: right' alt='logo' width='120'}}
+
Create hand-crafted baseline models for use in the tidymodels framework. These "models"" use user-supplied functions to make predictions, but can be used (for example) in a tidymodels stack.
}
\seealso{