This outlines how to propose a change to mnedesigndata. The guidelines are partly based on the tidyteam’s code review principles.
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 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.
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. See the tidyteam guide on how to create a great issue for more advice.
New code should follow the tidyverse style guide. You can use Air to apply this style, but please don’t restyle code that has nothing to do with your PR.
We use roxygen2, with Markdown syntax, for documentation.
We try to follow the GitHub flow for development.
git pull upstream main..Rproj).R CMD check using devtools::check()
and aim for 0 errors and warnings.It is wise to first think about the scope of your function (or your proposed enhancement of an existing one), and talk it through with other collaborators.
Releases, version numbering and the relation to git branches
main (branch tip) must always
have a <major>.<minor>.<patch> version
number in the DESCRIPTION file. It is the latest released
package version.
main which do not change the
package code itself, but only website setup and repo documentation, must
inherit the same release version number.<major>.<minor>.<patch>.9000. It follows
that they never appear at the tip of the main branch.
Non-package commits may follow this route as well: it is safe
for all new commits.remotes::install_github(), which defaults to downloading
from the main branch, will result in an installation of the
latest release;pkgdown website shows the
version number of the latest release.main can have various names.
However, there is always at least one development
branch whose name begins with dev. For example:
dev_nextrelease, dev_0.4.0, … It is the
collector of new features and bugfixes that will lead to a later
release, and its first commit should be to add a dev-suffix
(.9000) to the current version number (don’t increment
<major>.<minor>.<patch>).
main will be to increment at least one of
<major>, <minor> or
<patch> and to drop the dev-suffix from the version
number (i.e. in the DESCRIPTION file). Such final commits
should happen directly on the development branch. No later than that
commmit (but it can safely be done earlier), also the
.zenodo.json metadata file must be updated to the new
release version number.Steps and tricks in git
The preceding philosophy leads to following steps and guidelines:
<base> branch. Let’s call your new branch the
<feature> branch.
dev* branch, or
it could be a feature branch of someone else you wish to make a
contribution to.git push -u origin yourbranchname; afterwards
git push suffices). It serves as a backup and enables
others to work with you on that branch.git pull origin <base> while having your feature
branch checked out.git checkout <base> followed by
git pull, then switch back to
git checkout <feature> and merge the base branch with
git merge --no-ff <base>.git push, e.g. to implement requested
changes by others.
main).Git resources
Please note that the mnedesigndata project is released with a Contributor Code of Conduct. By contributing to this project you agree to abide by its terms.