diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 248b4a20..fe9ce9d7 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -24,6 +24,8 @@ jobs: - {os: macOS-latest, nosuggests: false, r: 'release'} - {os: windows-latest, nosuggests: false, r: 'devel'} - {os: windows-latest, nosuggests: false, r: 'release'} + - {os: windows-latest, nosuggests: true, r: 'release'} + - {os: windows-latest, nosuggests: false, r: 'oldrel'} - {os: ubuntu-20.04, nosuggests: false, r: 'devel'} - {os: ubuntu-20.04, nosuggests: false, r: 'release'} - {os: ubuntu-20.04, nosuggests: true, r: 'release'} @@ -53,15 +55,12 @@ jobs: any::rcmdcheck fastshp=?ignore NLMR=?ignore - PredictiveEcology/Require@development - PredictiveEcology/reproducible@development - PredictiveEcology/SpaDES.tools@development needs: check - name: Install additional package dependencies run: | pak::pkg_install("ropensci/NLMR") - remotes::install_github("s-u/fastshp") + pak::pkg_install("s-u/fastshp") shell: Rscript {0} - uses: r-lib/actions/check-r-package@v2 diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml index e8a04830..9854df29 100644 --- a/.github/workflows/pkgdown.yaml +++ b/.github/workflows/pkgdown.yaml @@ -24,9 +24,12 @@ jobs: - uses: r-lib/actions/setup-pandoc@v2 + - uses: PredictiveEcology/actions/install-spatial-deps@v0.1 + - uses: r-lib/actions/setup-r@v2 with: - use-public-rspm: true + Ncpus: 2 + use-public-rspm: false - uses: r-lib/actions/setup-r-dependencies@v2 with: @@ -43,7 +46,7 @@ jobs: - name: Install additional package dependencies run: | pak::pkg_install("ropensci/NLMR") - remotes::install_github("s-u/fastshp") + pak::pkg_install("s-u/fastshp") shell: Rscript {0} - name: Build site diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml index 2cf03643..c4d1e9d2 100644 --- a/.github/workflows/test-coverage.yaml +++ b/.github/workflows/test-coverage.yaml @@ -16,6 +16,7 @@ jobs: runs-on: macOS-latest env: GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + USING_COVR: true steps: - uses: actions/checkout@v4 @@ -42,9 +43,10 @@ jobs: - name: Install additional package dependencies run: | pak::pkg_install("ropensci/NLMR") - remotes::install_github("s-u/fastshp") + pak::pkg_install("s-u/fastshp") shell: Rscript {0} - name: Test coverage run: covr::codecov() shell: Rscript {0} + diff --git a/.github/workflows/update-citation-cff.yaml b/.github/workflows/update-citation-cff.yaml new file mode 100644 index 00000000..1b39dd84 --- /dev/null +++ b/.github/workflows/update-citation-cff.yaml @@ -0,0 +1,61 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/master/examples +# The action runs when: +# - A new release is published +# - The DESCRIPTION or inst/CITATION are modified +# - Can be run manually +# For customizing the triggers, visit https://docs.github.com/en/actions/learn-github-actions/events-that-trigger-workflows +on: + release: + types: [published] + push: + branches: [master, main] + paths: + - DESCRIPTION + - inst/CITATION + workflow_dispatch: + +name: Update CITATION.cff + +jobs: + update-citation-cff: + runs-on: macos-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v4 + - uses: PredictiveEcology/actions/install-spatial-deps@v0.1 + - uses: r-lib/actions/setup-r@v2 + with: + Ncpus: 2 + r-version: ${{ matrix.config.r }} + use-public-rspm: false + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: | + any::cffr + any::V8 + + - name: Update CITATION.cff + run: | + + library(cffr) + + # Customize with your own code + # See https://docs.ropensci.org/cffr/articles/cffr.html + + # Write your own keys + mykeys <- list() + + # Create your CITATION.cff file + cff_write(keys = mykeys) + + shell: Rscript {0} + + - name: Commit results + run: | + git config --local user.name "github-actions[bot]" + git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" + git add CITATION.cff + git commit -m 'Update CITATION.cff' || echo "No changes to commit" + git push origin || echo "No changes to commit" + diff --git a/DESCRIPTION b/DESCRIPTION index e464ebbb..000d2dfb 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -16,8 +16,8 @@ Description: Metapackage for implementing a variety of event-based models, with URL: https://spades.predictiveecology.org, https://github.com/PredictiveEcology/SpaDES -Date: 2024-01-31 -Version: 2.0.9.9000 +Date: 2024-04-04 +Version: 2.0.10 Authors@R: c( person("Alex M", "Chubaty", email = "achubaty@for-cast.ca", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-7146-8135")), @@ -35,21 +35,19 @@ Depends: R (>= 4.2) Imports: methods, - quickPlot, - reproducible (>= 1.2.2), - SpaDES.core (>= 1.0.4), - SpaDES.tools, + quickPlot (>= 1.0.2), + reproducible (>= 2.0.11), + SpaDES.core (>= 2.0.3), + SpaDES.tools (>= 2.0.5), utils Suggests: covr, knitr, rmarkdown, - testthat, - SpaDES.addins + testthat Remotes: PredictiveEcology/quickPlot@development, PredictiveEcology/reproducible@development, - PredictiveEcology/SpaDES.addins@development, PredictiveEcology/SpaDES.core@development, PredictiveEcology/SpaDES.tools@development, Encoding: UTF-8 @@ -61,5 +59,5 @@ ByteCompile: yes Collate: 'spades-package.R' 'zzz.R' -RoxygenNote: 7.2.1 +RoxygenNote: 7.3.1 Roxygen: list(markdown = TRUE) diff --git a/NEWS.md b/NEWS.md index 4580f3d6..fe26af1e 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,61 +1,55 @@ -Known issues: +# SpaDES v2.0.10 -version 2.0.9 -============= +* drop support for R 4.1, as it is no longer supported by several dependencies. +* remove suggested dependency `SpaDES.addins` which is archived on CRAN. + +# SpaDES v2.0.9 * fix html problems highlighted by CRAN checks. * remove suggested package `spelling`. -version 2.0.8 -============= +# SpaDES v2.0.8 * drop support for R 3.6, as it is no longer supported by several dependencies. * resubmit due to archived dependency `SpaDES.tools`, which is back on CRAN. -version 2.0.7 -============= +# SpaDES v2.0.7 * move `SpaDES.addins` to Suggests (#359). -version 2.0.6 -============= +# SpaDES v2.0.6 * drop support for R 3.5, as it is no longer supported by several dependencies. * fix CRAN check errors * fix discrepancy in vignette title -version 2.0.5 -============= +# SpaDES v2.0.5 * new package hexsticker and cheatsheet -version 2.0.4 -============= +# SpaDES v2.0.4 * drop support for R 3.3 and 3.4, as these are no longer supported by several dependencies. -version 2.0.3 -============= +# SpaDES v2.0.3 * move caching vignette to `SpaDES.core` package and remove unused dependencies `archivist`, `devtools`, `hunspell`, `igraph` * add `RandomFields` to Suggests (needed for vignettes etc. in `SpaDES.core` and `SpaDES.tools`) * new 'Getting Started' vignette describing the `SpaDES`-ecosystem packages -version 2.0.2 -============= +# SpaDES v2.0.2 * change maintainer email address. * update LandWeb app URL in README. * update cache vignette. * update package dependencies to include those used in tests. -version 2.0.1 -============= +# SpaDES v2.0.1 + * minor bugfix concerning imports -version 2.0.0 -============= +# SpaDES v2.0.0 ## Dependency changes @@ -135,15 +129,15 @@ version 2.0.0 * `zipModule` now has `data` argument, allowing data to be omitted from zipped module. * improved `moduleDiagram` to show `_INPUT_` node in different colour from the other modules -version 1.3.1 -============= +# SpaDES v1.3.1 + * Default module path (set via `spades.modulePath` option) is now set to a temporary location to avoid unintentionally writing to the user's home directory. * add options for cache, input, output dirs (defaults to a temp dir until changed by user) * rename `spades.modulesPath` and `spades.modulesRepo` options to `spades.modulePath` and `spades.moduleRepo` * New cache-related functions: `showCache`, `clearCache` -version 1.3.0 -============= +# SpaDES v1.3.0 + * stricter package version dependencies in Imports and Suggests * `debug` argument in `spades()` can now take any expression, character strings. `TRUE`/`FALSE` changed behavior to show only current event. * timeunits: when there are parent and grandparent modules, if timeunit is defined, it overrides the "smallest unit" rule. Thus, a parent module can force a timeunit. @@ -176,8 +170,8 @@ version 1.3.0 * remove module version warning (#312) * other tweaks and fixes -version 1.2.0 -============= +# SpaDES v1.2.0 + * fix bug associated with forthcoming `dplyr` update * remove `gtools` and `secr` from Imports * `spread` enhancements: circular spreading, landscape-based functions, allow overlapping events @@ -194,12 +188,12 @@ version 1.2.0 * minor performance enhancements * many more and improved unit tests -version 1.1.4 -============= +# SpaDES v1.1.4 + * fix OSX CRAN check errors caused by inconsistent use of `normalizePath` -version 1.1.3 -============= +# SpaDES v1.1.3 + * add `gtools` to Imports * bug fix in `experiment` that did not allow parallel spawning on some systems and crashed with empty `outputs` argument* fix minor bugs in `sampleModules` * lots of documentation enhancements, esp. `?inputs` and `?outputs` @@ -209,8 +203,8 @@ version 1.1.3 * many more unit tests (#139) * other bug fixes -version 1.1.2 -============= +# SpaDES v1.1.2 + * fix issues associated with upcoming `dplyr` updates * performance enhancements: much faster simulation execution * `Plot` accepts colour column in `SpatialPointDataFrame` objects @@ -233,16 +227,16 @@ version 1.1.2 * `outputPath` updates `output(sim)$file` file paths, in addition to just `paths(sim)$outputPath` * other bug fixes -version 1.1.1 -============= +# SpaDES v1.1.1 + * require `archivist` version 2.0 or greater * improved `moduleCoverage` testing and template (PR #257) * correct legends from rasters so that `is.factor(raster)` is `TRUE` * user defined time units can be used in module metadata "timeunit". * add module timeunits to `simList` show method (#260) -version 1.1.0 -============= +# SpaDES v1.1.0 + * require R version 3.2.2 or higher * remove `downloader` from Imports (#203) * add `covr` to Suggests and `lazyeval` to Imports @@ -269,12 +263,12 @@ version 1.1.0 * allow more signatures in `simInit` (modules can be character) * other bug fixes -version 1.0.3 -============= +# SpaDES v1.0.3 + * fully fix `inputs` data.frame construction in `simInit` (#225) -version 1.0.2 -============= +# SpaDES v1.0.2 + * update maintainer's and authors' email addresses * fix bug in `.parseModule` (#215) * improve dependency graph & module diagram (#216) @@ -287,14 +281,14 @@ version 1.0.2 * fix `inputs` data.frame construction in `simInit` (#225) * various other bug fixes -version 1.0.1 -============= +# SpaDES v1.0.1 + * no longer `attach` the simulation environment (#212) * improve documentation * bug fixes -version 1.0.0 -============= +# SpaDES v1.0.0 + * no longer rely on side effects to update objects in global environment; instead uses simulation environments (#185) (not backwards compatible!) * sample modules rewritten to use simulation environments (#185) (not backwards compatible!). * redefined `simList` class: @@ -351,14 +345,14 @@ version 1.0.0 * prepend copyright info to `LICENSE` and `README` (with #140) * various other bug fixes -version 0.6.2 -============= +# SpaDES v0.6.2 + This is a minor release update to satisfy CRAN submission requirements. * bug fix when saving files -version 0.6.1 -============= +# SpaDES v0.6.1 + * added the Queen as copyright holder (#140) * explicitly use GPL-3 (previously used GPL) (#140) * modules now require metadata; module code without it will break! @@ -399,16 +393,16 @@ version 0.6.1 * new function, `randomPolygons`, will create random raster maps (not vector maps) of polygons * numerous bugfixes -version 0.4.0 -============= +# SpaDES v0.4.0 + * second public ("beta") release * more improvements to `Plot` function, including dramatically faster for files on disk * added second "Model" that adds and integrates 3 sample modules, Fire, Succession and Aging * added Plotting vignette * bugfixes -version 0.3.1 -============= +# SpaDES v0.3.1 + * first public ("beta") release * reworked plotting and visualization (it's faster, more reliable) * added additional parameter checks and improved debugging @@ -418,11 +412,11 @@ version 0.3.1 - more complete code documentation * numerous bug fixes -version 0.2 -============= +# SpaDES v0.2 + * renamed package to `SpaDES` -version 0.1 -============= +# SpaDES v0.1 + * first working alpha version * lots of "wishlist" items still to be implemented diff --git a/man/SpaDES-package.Rd b/man/SpaDES-package.Rd index b35e0761..6d189c40 100644 --- a/man/SpaDES-package.Rd +++ b/man/SpaDES-package.Rd @@ -102,7 +102,7 @@ Other contributors: \itemize{ \item Yong Luo \email{yluo1@lakeheadu.ca} [contributor] \item Steve Cumming \email{Steve.Cumming@sbf.ulaval.ca} [contributor] - \item Her Majesty the Queen in Right of Canada, as represented by the Minister of Natural Resources Canada [copyright holder] + \item His Majesty the Queen in Right of Canada, as represented by the Minister of Natural Resources Canada [copyright holder] } }