You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: CONTRIBUTION.md
+78-17
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,19 @@
1
1
# Contributing to immunarch
2
2
3
-
This outlines how to propose a change to immunarch.
3
+
This document outlines how to propose a change to immunarch.
4
4
5
-
### Fixing typos
6
5
7
-
Small typos or grammatical errors in documentation may be edited directly using
8
-
the GitLab web IDE functionality / GitHub web interface, so long as the changes are made in the _source_ file.
6
+
## How to contribute?
9
7
10
-
* YES: you edit a roxygen comment in a `.R` file below `R/`.
11
-
* NO: you edit an `.Rd` file below `man/`.
8
+
There are three general ways to contribute to the package.
9
+
10
+
1. Code contribution via pull requests. Helps us improve the codebase of the package, add new features or fix bugs and typos in the documentation.
11
+
12
+
2. Bug reports and feature requests via GitHub issues. Helps us notice important issues and improvements to address.
13
+
14
+
3. Helping others by answering tickets in GitHub issues. Greatly helps build the community and accelerates the immune repertoire research progress.
15
+
16
+
## Code contribution via pull requests
12
17
13
18
### Prerequisites
14
19
@@ -20,23 +25,79 @@ that via GitHub, please note it in the issue.
20
25
21
26
### Pull request process
22
27
28
+
* Always start by forking the `dev` branch [from here](https://github.com/immunomind/immunarch/tree/dev) to make sure you have the latest pre-release version of `immunarch`. Name it accordingly to your contributions. `repClonality refactor` or `fix-issue-12` would work.
23
29
* We recommend that you create a Git branch for each pull request (PR).
24
-
* Look at the CI (Continuous Integration) build status before and after making changes.
25
-
The `README` should contain badges for any continuous integration services used
26
-
by the package.
27
-
* New code should follow our style guide that is the tidyverse [style guide](http://style.tidyverse.org)
28
-
with a very minor addition of using `=` instead of `<-` in variable assignment.
29
-
You can use the [styler](https://CRAN.R-project.org/package=styler) package to
30
+
* We follow the [following guidelines for commit naming](https://medium.com/@kevinkreuzer/the-way-to-fully-automated-releases-in-open-source-projects-44c015f38fd6).
31
+
* New code should follow our style guide that is the tidyverse [style guide](http://style.tidyverse.org) You can use the [styler](https://CRAN.R-project.org/package=styler) package to
30
32
apply these styles, but please don't restyle code that has nothing to do with
31
33
your PR.
32
34
* We use [roxygen2](https://cran.r-project.org/package=roxygen2) for documentation.
33
35
* We use [testthat](https://cran.r-project.org/package=testthat). Contributions
34
-
with test cases included are easier to accept.
35
-
* For user-facing changes, add a bullet to the top of `NEWS.md` below the current
36
-
development version header describing the changes made followed by your GitHub
37
-
username, and links to relevant issue(s)/PR(s).
36
+
with test cases included are easier to accept.
37
+
* Look at the CI (Continuous Integration) build status before and after making changes.
38
+
The `README` should contain badges for any continuous integration services used
39
+
by the package.
40
+
41
+
### Fixing typos
42
+
43
+
Small typos or grammatical errors in documentation may be edited directly using
44
+
the GitLab web IDE functionality / GitHub web interface, so long as the changes are made in the _source_ file. Please make sure to create a Pull Request instead of commiting directly to the `master` branch.
45
+
46
+
* YES: you edit a roxygen comment in a `.R` file below `R/`.
We follow the [following guidelines for commit naming](https://medium.com/@kevinkreuzer/the-way-to-fully-automated-releases-in-open-source-projects-44c015f38fd6).
60
+
61
+
#### Commit types
62
+
63
+
There are eight types of commits: `chore`, `docs`, `feat`, `fix`, `refactor`, `test`, `perf`, `style`. Most used are `feat` for implementation of a new feauture, `docs` for updating the documentation, `fix` for fixing a bug.
64
+
65
+
Commit name examples: `feat(diversity): added the Chao1 method for diversity estimations`, `fix(clonality): fixed a bug in clonality computations #12`, where `#12` is a link to the issue on the immunarch issue page.
66
+
67
+
#### Commit scopes
68
+
69
+
- Changes in analysis- and visualisation-specific functions: `diversity`, `overlap`, `pub-rep`, `clonality`, `gene-usage`, `explore`, `kmers`, `spectratype`, `dynamics`, `tools`, `single-cell`.
70
+
71
+
- General changes in visualisation functions (e.g., replace one package with another, or change a non-specific visualisation function such as `vis_bar`): `vis`
72
+
73
+
- Changes in parsing: `io`
74
+
75
+
- Changes in databases support: `db`
76
+
77
+
- Changes in additional functions such as general statistics functions: `utility`
78
+
79
+
- Changes in data: `data`
80
+
81
+
- Changes in NAMESPACE, DESCRIPTION, citations, ISSUE_TEMPLATE.md, etc., without README: `upkeep`
82
+
83
+
- Changes in README and vignettes: `vignette`
84
+
85
+
- Changes in Continuous Integration: `ci`
86
+
87
+
- Changes in Shiny applications: `shiny`
88
+
89
+
90
+
## Bug reports and feature requests
91
+
92
+
### How to create an Issue
93
+
94
+
We have a rich list of templates for Issues [here](https://github.com/immunomind/immunarch/tree/master/.github/ISSUE_TEMPLATE). Go to the [GitHub Issues page](https://github.com/immunomind/immunarch/issues) for `immunarch` and create a new Issue ticket from there.
95
+
96
+
## Helping others by answering tickets
97
+
98
+
Got to [GitHub Issues page](https://github.com/immunomind/immunarch/issues) and find Issues that you are familiar with to answer.
38
99
39
-
###Code of Conduct
100
+
## Code of Conduct
40
101
41
102
Please note that this project is released with a [Contributor Code of
42
103
Conduct](code-of-conduct.md). By participating in this project you agree to
0 commit comments