From 7b9c49deea8a7c56177ee7344084c5403da8b491 Mon Sep 17 00:00:00 2001 From: Claudiu Forgaci Date: Sun, 23 Jun 2024 23:49:01 +0200 Subject: [PATCH 1/5] Add pkgcheck GitHub action --- .github/workflows/pkgcheck.yaml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/pkgcheck.yaml diff --git a/.github/workflows/pkgcheck.yaml b/.github/workflows/pkgcheck.yaml new file mode 100644 index 0000000..ae92b26 --- /dev/null +++ b/.github/workflows/pkgcheck.yaml @@ -0,0 +1,23 @@ +name: pkgcheck + +# This will cancel running jobs once a new run is triggered +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref }} + cancel-in-progress: true + +on: + # Manually trigger the Action under Actions/pkgcheck + workflow_dispatch: + # Run on every push to main + push: + branches: + - main + - 3-pkgcheck-cf + +jobs: + pkgcheck: + runs-on: ubuntu-latest + permissions: + issues: write + steps: + - uses: ropensci-review-tools/pkgcheck-action@main From 3a2d6eecbec9c673dfd29ac3e95545e9caad1bdf Mon Sep 17 00:00:00 2001 From: Claudiu Forgaci Date: Sun, 23 Jun 2024 23:53:28 +0200 Subject: [PATCH 2/5] Add contributing guidelines --- .github/CONTRIBUTING.md | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .github/CONTRIBUTING.md diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..7e8530d --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,47 @@ +# Contributing to CRiSp + +This outlines how to propose a change to CRiSp. +For a detailed discussion on contributing to packages, please see the tidyverse [development contributing guide](https://rstd.io/tidy-contrib) and [code review principles](https://code-review.tidyverse.org/). + +## Fixing typos + +You can fix typos, spelling mistakes, or grammatical errors in the documentation directly using the GitHub web interface, as long as the changes are made in the _source_ file. +This generally means you'll need to edit [roxygen2 comments](https://roxygen2.r-lib.org/articles/roxygen2.html) in an `.R`, not a `.Rd` file. +You can find the `.R` file that generates the `.Rd` by reading the comment in the first line. + +## Bigger changes + +If you want to make a bigger change, it's a good idea to first file an issue and make sure someone from the team agrees that it’s needed. +If you’ve found a bug, please file an issue that illustrates the bug with a minimal +[reprex](https://www.tidyverse.org/help/#reprex) (this will also help you write a unit test, if needed). +See our guide on [how to create a great issue](https://code-review.tidyverse.org/issues/) for more advice. + +### Pull request process + +* Fork the package and clone onto your computer. If you haven't done this before, we recommend using `usethis::create_from_github("CityRiverSpaces/CRiSp", fork = TRUE)`. + +* Install all development dependencies with `devtools::install_dev_deps()`, and then make sure the package passes R CMD check by running `devtools::check()`. + If R CMD check doesn't pass cleanly, it's a good idea to ask for help before continuing. +* Create a Git branch for your pull request (PR). We recommend using `usethis::pr_init("brief-description-of-change")`. + +* Make your changes, commit to git, and then create a PR by running `usethis::pr_push()`, and following the prompts in your browser. + The title of your PR should briefly describe the change. + The body of your PR should contain `Fixes #issue-number`. + +* For user-facing changes, add a bullet to the top of `NEWS.md` (i.e. just below the first header). Follow the style described in . + +### Code style + +* New code should follow the tidyverse [style guide](https://style.tidyverse.org). + You can use the [styler](https://CRAN.R-project.org/package=styler) package to apply these styles, but please don't restyle code that has nothing to do with your PR. + +* We use [roxygen2](https://cran.r-project.org/package=roxygen2), with [Markdown syntax](https://cran.r-project.org/web/packages/roxygen2/vignettes/rd-formatting.html), for documentation. + +* We use [testthat](https://cran.r-project.org/package=testthat) for unit tests. + Contributions with test cases included are easier to accept. + +## Code of Conduct + +Please note that the CRiSp project is released with a +[Contributor Code of Conduct](CODE_OF_CONDUCT.md). By contributing to this +project you agree to abide by its terms. From 1e70c024594493397b68758c284920d047af2d92 Mon Sep 17 00:00:00 2001 From: Claudiu Forgaci Date: Sun, 23 Jun 2024 23:53:56 +0200 Subject: [PATCH 3/5] Tidy descsription file --- DESCRIPTION | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index c91b5a2..d96c058 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -8,7 +8,7 @@ Authors@R: c( comment = c(ORCID = "0000-0003-3286-0139")), person("Netherlands eScience Center", , , "info@esciencecenter.nl", role = "fnd") ) -Description: CRiSp (City River Spaces) provides tools to automate the +Description: CRiSp (City River Spaces) provides tools to automate the morphological delineation of riverside urban areas. License: Apache License (>= 2) URL: https://cityriverspaces.github.io/CRiSp/ @@ -17,8 +17,9 @@ Suggests: knitr, rmarkdown, testthat (>= 3.0.0) +VignetteBuilder: + knitr Config/testthat/edition: 3 Encoding: UTF-8 Roxygen: list(markdown = TRUE) RoxygenNote: 7.3.1 -VignetteBuilder: knitr From 37d3fc01283daa92b6e4787f893fc6918e1e1d79 Mon Sep 17 00:00:00 2001 From: Claudiu Forgaci Date: Sun, 23 Jun 2024 23:54:40 +0200 Subject: [PATCH 4/5] Initialise codemeta.json file --- .Rbuildignore | 1 + codemeta.json | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 codemeta.json diff --git a/.Rbuildignore b/.Rbuildignore index e4d4b45..18e9c28 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -7,3 +7,4 @@ ^_pkgdown\.yml$ ^docs$ ^pkgdown$ +^codemeta\.json$ diff --git a/codemeta.json b/codemeta.json new file mode 100644 index 0000000..c9725fe --- /dev/null +++ b/codemeta.json @@ -0,0 +1,95 @@ +{ + "@context": "https://doi.org/10.5063/schema/codemeta-2.0", + "@type": "SoftwareSourceCode", + "identifier": "CRiSp", + "description": "CRiSp (City River Spaces) provides tools to automate the morphological delineation of riverside urban areas.", + "name": "CRiSp: Automate the Delineation of Urban River Spaces", + "codeRepository": "https://github.com/CityRiverSpaces/CRiSp", + "issueTracker": "https://github.com/CityRiverSpaces/crisp/issues", + "license": "Apache License 2", + "version": "0.0.0.9000", + "programmingLanguage": { + "@type": "ComputerLanguage", + "name": "R", + "url": "https://r-project.org" + }, + "runtimePlatform": "R version 4.3.3 (2024-02-29)", + "author": [ + { + "@type": "Person", + "givenName": "Claudiu", + "familyName": "Forgaci", + "email": "c.forgaci@tudelft.nl", + "@id": "https://orcid.org/0000-0003-3218-5102" + }, + { + "@type": "Person", + "givenName": "Francesco", + "familyName": "Nattino", + "email": "f.nattino@esciencecenter.nl", + "@id": "https://orcid.org/0000-0003-3286-0139" + } + ], + "funder": [ + { + "@type": "Organization", + "name": "Netherlands eScience Center", + "email": "info@esciencecenter.nl" + } + ], + "maintainer": [ + { + "@type": "Person", + "givenName": "Claudiu", + "familyName": "Forgaci", + "email": "c.forgaci@tudelft.nl", + "@id": "https://orcid.org/0000-0003-3218-5102" + } + ], + "softwareSuggestions": [ + { + "@type": "SoftwareApplication", + "identifier": "knitr", + "name": "knitr", + "provider": { + "@id": "https://cran.r-project.org", + "@type": "Organization", + "name": "Comprehensive R Archive Network (CRAN)", + "url": "https://cran.r-project.org" + }, + "sameAs": "https://CRAN.R-project.org/package=knitr" + }, + { + "@type": "SoftwareApplication", + "identifier": "rmarkdown", + "name": "rmarkdown", + "provider": { + "@id": "https://cran.r-project.org", + "@type": "Organization", + "name": "Comprehensive R Archive Network (CRAN)", + "url": "https://cran.r-project.org" + }, + "sameAs": "https://CRAN.R-project.org/package=rmarkdown" + }, + { + "@type": "SoftwareApplication", + "identifier": "testthat", + "name": "testthat", + "version": ">= 3.0.0", + "provider": { + "@id": "https://cran.r-project.org", + "@type": "Organization", + "name": "Comprehensive R Archive Network (CRAN)", + "url": "https://cran.r-project.org" + }, + "sameAs": "https://CRAN.R-project.org/package=testthat" + } + ], + "softwareRequirements": { + "SystemRequirements": null + }, + "fileSize": "3.255KB", + "relatedLink": "https://cityriverspaces.github.io/CRiSp/", + "readme": "https://github.com/CityRiverSpaces/CRiSp/blob/main/README.md", + "contIntegration": "https://github.com/CityRiverSpaces/CRiSp/actions/workflows/R-CMD-check.yaml" +} From 10d5ba986a3468e78208a7358ce433ba0bdc5917 Mon Sep 17 00:00:00 2001 From: Claudiu Forgaci Date: Tue, 25 Jun 2024 14:17:29 +0200 Subject: [PATCH 5/5] Add placeholder test This is needed to pass the test coverage check of pkgcheck --- tests/testthat/test-hello.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/testthat/test-hello.R b/tests/testthat/test-hello.R index 8849056..1af0527 100644 --- a/tests/testthat/test-hello.R +++ b/tests/testthat/test-hello.R @@ -1,3 +1,3 @@ -test_that("multiplication works", { - expect_equal(2 * 2, 4) +test_that("hello world works", { + expect_output(hello(), "Hello, world!") })