Skip to content

Commit 6769c64

Browse files
committed
PASSBOLT-2474 Add new contribution guidelines
1 parent 1e1a447 commit 6769c64

File tree

1 file changed

+59
-21
lines changed

1 file changed

+59
-21
lines changed

CONTRIBUTING.md

+59-21
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,6 @@
44

55
Thank you for your interest in passbolt. We welcome contributions from everyone, this guide is here to help you get started!
66

7-
### How can you help?
8-
9-
There are several ways you can help out:
10-
11-
* Create an [issue](https://github.com/passbolt/passbolt/issues) on GitHub, if you have found a bug or want to propose a new feature or a change request.
12-
* Review [enhancement or new feature requests](https://github.com/passbolt/passbolt/issues) and contribute to the functional or technical specifications in the issues.
13-
* Write patches for open bug/feature issues, preferably with test cases included
14-
* Contribute to the [documentation](https://passbolt.com/help).
15-
* Help design the proposed changes by editing the [styleguide](https://github.com/passbolt/passbolt_styleguide) or by submitting changes in the [wireframes](https://github.com/passbolt/passbolt_wireframes).
16-
* Write unit test cases to help increase [test coverage](https://coveralls.io/github/passbolt/passbolt).
17-
* Extend the [selenium test suite](https://github.com/passbolt/passbolt_selenium) for any open bug or change requests
18-
19-
If you have any suggestions or want to get involved in other ways feel free to get in touch with us at [[email protected]](mailto:[email protected])!
20-
217
### Code of Conduct
228

239
First things first, please read our [Code of Conduct](https://www.passbolt.com/code_of_conduct).
@@ -42,18 +28,70 @@ The passbolt team will take the following actions:
4228
- Prominently feature the problem in the release announcement.
4329
- Provide credits in the release announcement to the reporter if they so desire.
4430

45-
### Reporting regular issues
31+
### Reporting a bug
32+
Please only use github for bugs or pull request.
4633

4734
* Make sure you have a [GitHub account](https://github.com/signup/free).
48-
* If you are planning to start a new functionality or create a major change request, write down the functional and technical specifications first.
49-
* Create a document that is viewable by everyone
50-
* Define the problem you are trying to solve, who is impacted, why it is important, etc.
51-
* Present a solution. Explaining your approach gives an opportunity for other people to contribute and avoid frictions down the line.
5235
* Submit an [issue](https://github.com/passbolt/passbolt/issues)
5336
* Check first that a similar issue does not already exist.
5437
* Make sure you fill in the earliest version that you know has the issue if it is a bug.
55-
* Clearly describe the issue including steps to reproduce when it is a bug and/or a link to the specification document
56-
* If applicable, allow people to visualize your proposed changes via changes to the [styleguide](https://github.com/passbolt/passbolt_styleguide)
38+
* Clearly describe the issue including steps to reproduce the bug
39+
40+
### Requesting a new feature or ehancement
41+
42+
Please use the community forum: http://community.passbolt.com/
43+
Do not use github to request new features.
44+
45+
### Getting help with an installation issue
46+
47+
Please use the community forum: http://community.passbolt.com/
48+
Do not use github to request help with your instance installation.
49+
50+
### How can you help?
51+
52+
There are several ways you can help out:
53+
54+
* Create an [issue](https://github.com/passbolt/passbolt/issues) on GitHub ONLY if you have found a bug
55+
* Review [enhancement or new feature requests](https://community.passbolt.com/c/backlog) on the community foum and contribute to the functional or technical specifications in the issues.
56+
* Write patches for open bug/feature issues, preferably with test cases included
57+
* Contribute to the [documentation](https://passbolt.com/help).
58+
* Help design the proposed changes by editing the [styleguide](https://github.com/passbolt/passbolt_styleguide) or by submitting changes in the [wireframes](https://github.com/passbolt/passbolt_wireframes).
59+
* Write unit test cases to help increase [test coverage](https://coveralls.io/github/passbolt/passbolt).
60+
* Extend the [selenium test suite](https://github.com/passbolt/passbolt_selenium) for any open bug or change requests
61+
62+
If you have any suggestions or want to get involved in other ways feel free to get in touch with us at [[email protected]](mailto:[email protected])!
63+
64+
### Making code changes
65+
66+
#### Which branch to base the work?
67+
68+
* Bugfix branches will be based on master.
69+
* New features that are backwards compatible will be based on next minor release branch.
70+
* New features or other non backwards compatible changes will go in the next major release branch.
71+
72+
#### Make changes locally first
73+
* Fork the repository on GitHub.
74+
* Create a feature branch from where you want to base your work.
75+
* This is usually the master branch.
76+
* Only target release branches if you are certain your fix must be on that
77+
branch.
78+
* To quickly create a feature branch based on master; `git branch
79+
feature/ID_feature_description master` then checkout the new branch with `git
80+
checkout feature/ID_feature_description`. Better avoid working directly on the
81+
`master` branch, to avoid conflicts if you pull in updates from origin.
82+
* Make commits of logical units.
83+
84+
#### Before submiting changes
85+
* Check for unnecessary whitespace with `git diff --check` before committing.
86+
* Use descriptive commit messages and reference the #issue number.
87+
* PHP unit test cases should continue to pass. You can run tests locally or enable [travis-ci](https://travis-ci.org/) for your fork, so all tests and codesniffs will be executed (see faq bellow).
88+
* Selenium tests should continue to pass. See [passbolt selenium test suite](https://github.com/passbolt/passbolt_selenium) (see faq bellow).
89+
* Your work should apply the [CakePHP coding standards](http://book.cakephp.org/2.0/en/contributing/cakephp-coding-conventions.html) (see faq bellow).
90+
91+
#### Submitting Changes
92+
93+
* Push your changes to a topic branch in your fork of the repository.
94+
* Submit a pull request to the official passbolt repository, with the correct target branch.
5795

5896
### Making code changes
5997

0 commit comments

Comments
 (0)