Skip to content

Commit 4b99170

Browse files
docs: add slightly tweaked boilerplate CONTRIBUTING.md (#1423)
2 parents 7291118 + 8e90f48 commit 4b99170

1 file changed

Lines changed: 56 additions & 0 deletions

File tree

.github/CONTRIBUTING.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Contributing to igraph
2+
3+
This outlines how to propose a change to igraph.
4+
5+
## Fixing typos
6+
7+
You can fix typos, spelling mistakes, or grammatical errors in the documentation directly using the GitHub web interface,
8+
as long as the changes are made in the _source_ file.
9+
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.
10+
You can find the `.R` file that generates the `.Rd` by reading the comment in the first line.
11+
12+
## Bigger changes
13+
14+
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.
15+
If you’ve found a bug,
16+
please file an issue that illustrates the bug with a minimal [reprex](https://www.tidyverse.org/help/#reprex)
17+
(this will also help you write a unit test, if needed).
18+
See the tidyverse guide on [how to create a great issue](https://code-review.tidyverse.org/issues/) for more advice.
19+
20+
### Pull request process
21+
22+
* Fork the package and clone onto your computer.
23+
If you haven't done this before, you can use `usethis::create_from_github("igraph/rigraph", fork = TRUE)`.
24+
25+
* Install all development dependencies with `pak::pak()`,
26+
and then make sure the package passes R CMD check by running `devtools::check()`.
27+
If R CMD check doesn't pass cleanly, it's a good idea to ask for help before continuing.
28+
* Create a Git branch for your pull request (PR).
29+
You can use [usethis](https://usethis.r-lib.org/articles/pr-functions.html), GitHub Desktop, etc.
30+
31+
* Make your changes, commit to git, and then create a PR.
32+
The title of your PR should briefly describe the change.
33+
The body of your PR should contain `Fixes #issue-number`.
34+
35+
### Code style
36+
37+
* New code should follow the tidyverse [style guide](https://style.tidyverse.org).
38+
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.
39+
40+
* We use [roxygen2](https://cran.r-project.org/package=roxygen2),
41+
with [Markdown syntax](https://cran.r-project.org/web/packages/roxygen2/vignettes/rd-formatting.html),
42+
for documentation.
43+
44+
* We use [testthat](https://cran.r-project.org/package=testthat) for unit tests.
45+
Please add test cases for the change you are proposing, or ask us for help.
46+
47+
### Test files
48+
49+
We strive to align script and test names.
50+
This is still a work-in-progress but the goal is to have code from `R/name.R` tested in `tests/testthat/test-name.R`.
51+
This allows easy toggling between the two files thanks to `usethis::use_test()` and `usethis::use_r()`.
52+
53+
## Code of Conduct
54+
55+
Please note that the igraph project is released with a [Contributor Code of Conduct](https://igraph.org/code-of-conduct.html).
56+
By contributing to this project you agree to abide by its terms.

0 commit comments

Comments
 (0)