This guide is for maintainers who want to change
jpplantnames without first reading the whole package. It
maps common maintenance goals to the files that usually need to be
edited.
For Japanese, see 日本語: メンテナンスガイド.
Project Map
| If you want to change… | Edit these files |
|---|---|
| Checklist download URL, cache file name, or cache location | R/cache.R |
| How the checklist Excel file is parsed | R/load.R |
scientific_name() behavior |
R/lookup.R,
tests/testthat/test-lookup.R
|
japanese_name_search() fields or matching rules |
R/lookup.R,
tests/testthat/test-lookup.R
|
| GBIF response fields or API behavior |
R/gbif.R, tests/testthat/test-gbif.R
|
| Exported functions |
NAMESPACE, matching .Rd files in
man/
|
| Package metadata, dependencies, site URL | DESCRIPTION |
| README and pkgdown home page | README.md |
| Japanese README | README.ja.md |
| pkgdown navigation and reference sections | _pkgdown.yml |
| User guides |
vignettes/get-started.Rmd,
vignettes/ja-get-started.Rmd
|
| Maintenance guides |
vignettes/maintenance.Rmd,
vignettes/ja-maintenance.Rmd
|
| Package development tutorial |
vignettes/package-development.Rmd,
vignettes/ja-package-development.Rmd
|
| GitHub Actions R package check | .github/workflows/R-CMD-check.yaml |
| GitHub Pages / pkgdown deployment | .github/workflows/pkgdown.yaml |
Function Behavior
japanese_name_download()
Implemented in R/cache.R.
Change this file when:
- the checklist Excel file URL changes;
- the cache file name should change;
- you want to change how local fixture sources are copied in tests;
- you want to change the cache directory policy.
The function should keep returning the cached file path invisibly.
Tests for cache behavior live in
tests/testthat/test-cache-load.R.
japanese_name_load()
Implemented in R/load.R.
Change this file when:
- the checklist sheet or required columns change;
- required post-processing is added after reading the file.
The checklist Excel file is read from the JN_dataset
sheet. Keep structure tests in the synthetic fixture rather than
downloading the full checklist file during unit tests.
scientific_name()
Implemented in R/lookup.R.
Change this file when:
- exact-match behavior changes;
- synonym handling changes;
- no-match behavior changes;
- ambiguity handling changes;
- the return value should include more metadata.
The current contract is intentionally conservative:
- exact-match the
和名and別名columns; - use only rows where
ステータス == "標準"; - return
NA_character_when there is no standard exact match; - error when multiple standard exact matches are found.
If this contract changes, update the README, both usage guides, and tests.
japanese_name_search()
Implemented in R/lookup.R.
Change this file when:
- adding a new
fieldoption; - changing partial matching behavior;
- adding normalization such as hiragana-to-katakana conversion;
- adding richer candidate ranking.
Add tests for each new search mode. Search should remain explicit and
inspectable; avoid silently changing scientific_name() into
a fuzzy lookup.
Documentation
The pkgdown home page is generated from README.md, so
keep README.md in English and link to
README.ja.md and the Japanese guide.
Use this split:
-
README.md: English top-level landing page. -
README.ja.md: Japanese landing page. -
vignettes/get-started.Rmd: English user guide. -
vignettes/ja-get-started.Rmd: Japanese user guide. -
vignettes/maintenance.Rmd: English maintainer guide. -
vignettes/ja-maintenance.Rmd: Japanese maintainer guide. -
vignettes/package-development.Rmd: English package-build tutorial. -
vignettes/ja-package-development.Rmd: Japanese package-build tutorial. -
_pkgdown.yml: site navigation, article groups, and reference sections.
After editing documentation, build the site locally when possible:
pkgdown::build_site(preview = FALSE)Tests and Checks
Run unit tests:
testthat::test_local(".", reporter = "summary")Build and check the package:
On Windows, if Pandoc is not on PATH, set
RSTUDIO_PANDOC to an installed Pandoc directory before
building vignettes or pkgdown.
Release Checklist
Before pushing a maintenance change:
- Update tests for any behavior change.
- Update README and both language guides if user-visible behavior changes.
- Run
testthat::test_local(). - Run
R CMD buildandR CMD check. - Build pkgdown locally if documentation changed.
- Push and verify both GitHub Actions workflows.
- Confirm the site at https://maple60.github.io/jpplantnames/.