2019-07-08 21:03:47 +00:00
|
|
|
# Contributing guidelines
|
|
|
|
|
|
|
|
Any contribution is appreciated! You might want to:
|
|
|
|
|
|
|
|
* Fix spelling errors
|
|
|
|
* Improve documentation
|
|
|
|
* Add tests for untested code
|
|
|
|
* Add new features
|
|
|
|
* Fix bugs
|
|
|
|
|
|
|
|
## How can I contribute?
|
|
|
|
|
|
|
|
* Use [issues](https://github.com/pdfminer/pdfminer.six/issues) to report bugs and features
|
2019-07-10 17:38:38 +00:00
|
|
|
- If you report a bug in the results for a particular pdf, include that pdf. This allows others to replicate the
|
|
|
|
issue.
|
2019-10-20 12:18:26 +00:00
|
|
|
* Fix issues by [creating pull requests](https://help.github.com/en/articles/creating-a-pull-request).
|
2019-12-29 20:20:20 +00:00
|
|
|
* Help others by sharing your thoughs in comments on issues and pull requests.
|
2020-03-08 13:53:16 +00:00
|
|
|
* Join the chat on [gitter](https://gitter.im/pdfminer-six/Lobby)
|
2019-07-08 21:03:47 +00:00
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
## Guidelines for creating issues
|
2019-07-08 21:03:47 +00:00
|
|
|
|
|
|
|
* Search previous issues, as yours might be a duplicate.
|
|
|
|
* When creating a new issue for a bug, include a minimal reproducible example.
|
|
|
|
* When creating a new issue for a feature, be sure to describe the context of the problem you are trying to solve. This
|
|
|
|
will help others to see the importance of your feature request.
|
2019-10-20 12:18:26 +00:00
|
|
|
|
|
|
|
## Guideline for creating pull request
|
|
|
|
|
|
|
|
* A pull request should close an existing issue.
|
|
|
|
* Pull requests should be merged to develop, not master. This ensures that master always equals the released version.
|
2019-07-08 21:03:47 +00:00
|
|
|
* Include unit tests when possible. In case of bugs, this will help to prevent the same mistake in the future. In case
|
|
|
|
of features, this will show that your code works correctly.
|
2020-10-25 11:34:51 +00:00
|
|
|
* Code should work for Python 3.6+.
|
2020-01-04 15:47:07 +00:00
|
|
|
* Code should conform to PEP8 coding style.
|
|
|
|
* New features should be well documented using docstrings.
|
2019-10-20 09:41:31 +00:00
|
|
|
* Check spelling and grammar.
|
2019-10-20 12:18:26 +00:00
|
|
|
* Don't forget to update the [CHANGELOG.md](CHANGELOG.md#[Unreleased])
|
|
|
|
|
2019-12-29 20:20:20 +00:00
|
|
|
## Guidelines for posting comments
|
|
|
|
|
|
|
|
* [Be cordial and positive](https://www.kennethreitz.org/essays/be-cordial-or-be-on-your-way)
|
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
## Getting started
|
|
|
|
|
|
|
|
1. Clone the repository
|
|
|
|
|
|
|
|
```sh
|
|
|
|
git clone https://github.com/pdfminer/pdfminer.six
|
|
|
|
cd pdfminer.six
|
|
|
|
```
|
2019-10-20 09:41:31 +00:00
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
2. Install dev dependencies
|
2019-10-20 09:41:31 +00:00
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
```sh
|
|
|
|
pip install -e .[dev]
|
|
|
|
```
|
2019-10-20 09:41:31 +00:00
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
3. Run the tests
|
2019-10-20 09:41:31 +00:00
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
On all Python versions:
|
2019-10-20 09:41:31 +00:00
|
|
|
|
2019-10-20 12:18:26 +00:00
|
|
|
```sh
|
|
|
|
tox
|
|
|
|
```
|
|
|
|
|
|
|
|
Or on a single Python version:
|
|
|
|
|
|
|
|
```sh
|
|
|
|
tox -e py36
|
|
|
|
```
|