Update GHA
diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml
index 0fdc22d..5065b4c 100644
--- a/.github/workflows/R-CMD-check.yaml
+++ b/.github/workflows/R-CMD-check.yaml
@@ -1,4 +1,4 @@
-# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
+# 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
 #
 # NOTE: This workflow is overkill for most R packages and
@@ -30,63 +30,55 @@
       matrix:
         config:
           # testing R release with last shipped pandoc version in RStudio IDE and new pandoc
-          - {os: macOS-latest,   pandoc: '2.11.4', r: 'release'}
-          - {os: macOS-latest,   pandoc: '2.14.2', r: 'release'}
-
-          # TODO: issue on windows with pandoc 2.11.4 - change when fixed
-          - {os: windows-latest, pandoc: '2.7.3', r: 'release'}
-          # Use 3.6 to trigger usage of RTools35
-          - {os: windows-latest, pandoc: '2.7.3', r: '3.6'}
-
-          # Use older ubuntu to maximise backward compatibility
-          - {os: ubuntu-18.04,   pandoc: '2.11.4', r: 'devel', http-user-agent: 'release'}
-          - {os: ubuntu-18.04,   pandoc: 'devel', r: 'release'}
-          - {os: ubuntu-18.04,   pandoc: '2.14.2', r: 'release'}
-          - {os: ubuntu-18.04,   pandoc: '2.11.4', r: 'release'}
-          - {os: ubuntu-18.04,   pandoc: '2.11.4', r: 'oldrel-1'}
-
+          - {os: windows-latest, pandoc: '3.1.1',    r: 'release'}
+          - {os: macOS-latest,   pandoc: '3.1.1',    r: 'release'}
+          - {os: ubuntu-latest,  pandoc: 'devel',    r: 'release'}
+          # testing older pandoc versions
+          - {os: ubuntu-latest,  pandoc: '2.19.2',   r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.18',     r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.17.1.1', r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.16.2',   r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.14.2',   r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.11.4',   r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.7.3',    r: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.5',      r: 'release'}
+          # testing other R versions
+          - {os: ubuntu-latest,  pandoc: '2.11.4',   r: 'devel', http-user-agent: 'release'}
+          - {os: ubuntu-latest,  pandoc: '2.11.4',   r: 'oldrel-1'}
+          - {os: ubuntu-latest,  pandoc: '2.11.4',   r: 'oldrel-2'}
+          - {os: ubuntu-latest,  pandoc: '2.11.4',   r: 'oldrel-3'}
     env:
       GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
       R_KEEP_PKG_SOURCE: yes
 
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v3
 
-      - uses: r-lib/actions/setup-pandoc@v1
-        if: matrix.config.pandoc != 'devel'
-        with:
-          pandoc-version: ${{ matrix.config.pandoc }}
-      
-      - uses: cderv/actions/setup-pandoc-nightly@nightly-pandoc
-        if: matrix.config.pandoc == 'devel'
+      - uses: r-lib/actions/setup-pandoc@v2
 
-      - uses: r-lib/actions/setup-r@v1
+      - 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@v1
+      - uses: r-lib/actions/setup-r-dependencies@v2
         with:
-          extra-packages: rcmdcheck
+          extra-packages: any::rcmdcheck
+          needs: check
 
-      - uses: r-lib/actions/check-r-package@master
+      - name: Remove default installed Pandoc
+        if: runner.os == 'Linux'
+        run: sudo dpkg -r pandoc
 
-      - name: Show testthat output
-        if: always()
-        run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true
-        shell: bash
-
-      - name: Upload check results
-        if: failure()
-        uses: actions/upload-artifact@main
+      - uses: r-lib/actions/setup-pandoc@v2
+        if: matrix.config.pandoc != 'devel'
         with:
-          name: ${{ runner.os }}-r${{ matrix.config.r }}-results
-          path: check
-          
-      - name: Test coverage
-        if: success() && runner.os == 'Linux' && matrix.config.r == 'release' && matrix.config.pandoc == '2.11.4'
-        run: |
-          pak::pkg_install('covr')
-          covr::codecov()
-        shell: Rscript {0}
+          pandoc-version: ${{ matrix.config.pandoc }}
+
+      - uses: cderv/actions/setup-pandoc-nightly@nightly-pandoc
+        if: matrix.config.pandoc == 'devel'
+
+      - 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
index 1cdafbf..71f335b 100644
--- a/.github/workflows/pr-commands.yaml
+++ b/.github/workflows/pr-commands.yaml
@@ -1,4 +1,4 @@
-# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
+# 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:
@@ -8,28 +8,30 @@
 
 jobs:
   document:
-    if: startsWith(github.event.comment.body, '/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.GITHUB_TOKEN }}
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v3
 
-      - uses: r-lib/actions/pr-fetch@v1
+      - uses: r-lib/actions/pr-fetch@v2
         with:
           repo-token: ${{ secrets.GITHUB_TOKEN }}
 
-      - uses: r-lib/actions/setup-r@v1
+      - uses: r-lib/actions/setup-r@v2
         with:
           use-public-rspm: true
 
-      - uses: r-lib/actions/setup-r-dependencies@v1
+      - uses: r-lib/actions/setup-r-dependencies@v2
         with:
-          extra-packages: roxygen2
+          extra-packages: any::roxygen2
+          needs: pr-document
 
       - name: Document
-        run: Rscript -e 'roxygen2::roxygenise()'
+        run: roxygen2::roxygenise()
+        shell: Rscript {0}
 
       - name: commit
         run: |
@@ -38,30 +40,32 @@
           git add man/\* NAMESPACE
           git commit -m 'Document'
 
-      - uses: r-lib/actions/pr-push@v1
+      - uses: r-lib/actions/pr-push@v2
         with:
           repo-token: ${{ secrets.GITHUB_TOKEN }}
 
   style:
-    if: startsWith(github.event.comment.body, '/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.GITHUB_TOKEN }}
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v3
 
-      - uses: r-lib/actions/pr-fetch@v1
+      - uses: r-lib/actions/pr-fetch@v2
         with:
           repo-token: ${{ secrets.GITHUB_TOKEN }}
 
-      - uses: r-lib/actions/setup-r@v1
+      - uses: r-lib/actions/setup-r@v2
 
       - name: Install dependencies
-        run: Rscript -e 'install.packages("styler")'
+        run: install.packages("styler")
+        shell: Rscript {0}
 
       - name: Style
-        run: Rscript -e 'styler::style_pkg()'
+        run: styler::style_pkg()
+        shell: Rscript {0}
 
       - name: commit
         run: |
@@ -70,6 +74,6 @@
           git add \*.R
           git commit -m 'Style'
 
-      - uses: r-lib/actions/pr-push@v1
+      - uses: r-lib/actions/pr-push@v2
         with:
           repo-token: ${{ secrets.GITHUB_TOKEN }}