Welcome to HTTPure! We would love contributions from the community. Please follow this guide when creating contributions to help make the project better!
If you find a bug or a place where documentation needs to be improved, or if you have a feature request, please submit an issue! In issues you submit, please be clear, and preferably have code examples indicating what is broken, needs improvement, or what your requested API should look like.
All contributions to this repository should come in the form of pull requests. All pull requests must be reviewed before being merged. Please follow these steps for creating a successful PR:
- Create an issue for your contribution.
- Create a fork on github.
- Create a branch in your fork for your contribution.
- Add your contribution to the source tree.
- Run the test suite. All tests MUST pass for a PR to be accepted.
- Push your code and create a PR on github. Please make sure to reference your issue number in your PR description.
Branch all work off the main
branch.
For the most part, HTTPure's documentation is intended to be consumed through Pursuit. To this end, documentation should mostly be provided inline in the codebase, and should follow the same PR process as other commits.
We also welcome documentation in the form of guides and examples. These should live in the Documentation directory. Please ensure all guides are written in markdown format, and all examples are fully-functional and implemented as self-contained subdirectories under Documentation/Examples.
All examples should have corresponding integration tests, to ensure that examples we promote remain functional. If you plan to contribute examples, please take a look at IntegrationSpec.purs.
Code should follow existing styles and all code should be accompanied with relevant unit/integration tests. If you fix a bug, write a test. If you write a new feature, write a test.
All tests MUST pass for your PR to be accepted. If you break a test, either fix the test or fix the code.