Skip to content

Latest commit

 

History

History
116 lines (75 loc) · 3.85 KB

CONTRIBUTING.md

File metadata and controls

116 lines (75 loc) · 3.85 KB

Contributing

When contributing to this project, this document should help you get started.

Code Of Conduct

This project adheres to the Contributor Covenant Code Of Conduct. By participating, you are expected to uphold this code.

Issues

GitHub issues are the way to track bugs and enhancements.

Issues are hold in high regards in this project, so please feel free to open issue for:

  • Questions to help to improve the user experience
  • Ideas which are a great source for contributions
  • Problems show where this project is lacking or not working as expected.

If you are reporting a problem, please provide as much information as possible, since this will help us to fix it. This includes, if possible, a description or small sample project how to reproduce the problem.

Also please check out first if an issue had been already opened with your request.

Contribute Code

Development Process

Prerequisites

Features

Every change has to branch of from main and use this branch naming convention:

  • feature/{type_of_change}-{short_description}

main must be always in releasable state.

Type Of Change
  • add for new features or functionality
  • change for changes in existing features or functionality
  • deprecated for features which are at their end of life and will be removed in the future
  • remove for removed features or functionality
  • fix for any bug fixes
  • bump for dependency updates
  • security in case of vulnerabilities

Examples:

  • feature/add-awesome-hashing-algorithm
  • feature/remove-not-so-awesome-algorithm
  • feature/fix-algorithm-corner-case
  • feature/bump-lib-to-1.3.0

Pull Request

Pull requests are always welcome!

If you (going to) contribute, please make sure you made clear which problem you are attempt solve or what is nature of your improvement.

Create Pull Request

Please use our title pattern: {type of change} {short description}:

type of change can be:

  • Add for new features or functionality,
  • Change for changes in existing features or functionality,
  • Deprecated for features which are at their end of life and will be removed in the future,
  • Remove for removed features or functionality,
  • Fix for any bug fixes,
  • Security in case of vulnerabilities,
  • Bump for dependency updates,

followed by a short description of your change.

Example:

  • Add awesome hashing algorithm
  • Changed thumbnail generation

Pull requests must fill the provided template. Put N/A when a paragraph cannot be filled.

Labels should be used (enhancement,bugfix, help wanted etc...) to categorise your contribution.

Important: Work in progress pull-requests should be created as a draft.

Code Review

Your contribution has to meet these criteria:

  • Functional and fitting in the project
  • Code style and naming conventions followed
  • Test written and passing
  • Existing Tests still passing
  • Continuous Integration build passing
  • Cross platform testing done for all supported platforms
  • Documentation updated (if necessary)
  • Changelog updated (if necessary)

Dependencies using other licenses

Contributing code and introducing dependencies into the repository from other projects that use one of the following licenses is allowed.

Any other contribution needs to be signed off by the project owners.