mirror of
https://github.com/Intervention/image.git
synced 2025-01-17 12:18:14 +01:00
Add contribution guideline (#1320)
This commit is contained in:
parent
b0b76eb97e
commit
dffb2bb4fe
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
/.editorconfig export-ignore
|
/.editorconfig export-ignore
|
||||||
/.github export-ignore
|
/.github export-ignore
|
||||||
|
/CONTRIBUTING.md export-ignore
|
||||||
/tests export-ignore
|
/tests export-ignore
|
||||||
/.gitattributes export-ignore
|
/.gitattributes export-ignore
|
||||||
/.gitignore export-ignore
|
/.gitignore export-ignore
|
||||||
|
80
CONTRIBUTING.md
Normal file
80
CONTRIBUTING.md
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
# Contributing to Intervention Image
|
||||||
|
|
||||||
|
Thank you for your interest in contributing to the project. Any contribution
|
||||||
|
that improves the project is welcome and will be considered for integration.
|
||||||
|
|
||||||
|
Please understand that there is no guarantee that your pull request will be
|
||||||
|
accepted. To avoid misunderstandings, it is recommended that you first initiate
|
||||||
|
a discussion about your planned changes on the [issue
|
||||||
|
board](https://github.com/Intervention/image/issues).
|
||||||
|
|
||||||
|
You agree that your contributions will be licensed under the same license as
|
||||||
|
the main project. Before submitting a pull request familiarize yourself with
|
||||||
|
the [license](LICENSE) and understand its terms and conditions.
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
To ensure a smooth collaboration process and maintain the quality of the
|
||||||
|
project the submitted pull request must meet the following requirements to be
|
||||||
|
accepted for review. It is a good idea to check these locally **before** you
|
||||||
|
submit the PR.
|
||||||
|
|
||||||
|
### Follow the Branching Model
|
||||||
|
|
||||||
|
Please submit only one feature or bug fix per pull request. The best practice
|
||||||
|
is to split your contributions into thematically meaningful branches and then
|
||||||
|
submit them individually as pull requests.
|
||||||
|
|
||||||
|
### Comply with the Coding Standard
|
||||||
|
|
||||||
|
The project follows the [PSR12 coding
|
||||||
|
standard](https://www.php-fig.org/psr/psr-12/) with some [additional
|
||||||
|
extensions](phpcs.xml.dist). Adherence to these rules is essential and can be
|
||||||
|
easily checked with the following command.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./vendor/bin/phpcs
|
||||||
|
```
|
||||||
|
|
||||||
|
Or by using the project's Docker environment.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker-compose run --rm --build standards
|
||||||
|
```
|
||||||
|
|
||||||
|
### Write Tests
|
||||||
|
|
||||||
|
For new features or changes to the existing code base, it is essential to cover
|
||||||
|
them with tests. Integrate your tests in the the project's test environment
|
||||||
|
and consider both positive and negative scenarios.
|
||||||
|
|
||||||
|
Make sure that all tests are passed with the following command.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./vendor/bin/phpunit
|
||||||
|
```
|
||||||
|
|
||||||
|
Or by using the project's Docker environment.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker-compose run --rm --build tests
|
||||||
|
```
|
||||||
|
|
||||||
|
### Pay attention to the Analyzer Results
|
||||||
|
|
||||||
|
A static analyzer is also used to avoid bugs and ensure quality. In addition to
|
||||||
|
testing, it must also run without errors.
|
||||||
|
|
||||||
|
Check the analyzer by running the following command.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./vendor/bin/phpstan analyze --memory-limit=512M --level=4 ./src
|
||||||
|
```
|
||||||
|
|
||||||
|
Or by using the project's Docker environment.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker-compose run --rm --build analysis
|
||||||
|
```
|
||||||
|
|
||||||
|
**Thank you!**
|
Loading…
x
Reference in New Issue
Block a user