Skip to content

Latest commit

 

History

History
60 lines (48 loc) · 2.04 KB

CONTRIBUTING.md

File metadata and controls

60 lines (48 loc) · 2.04 KB

Contributing

We always welcome contributions to help make the repo better. Take a moment to read this document if you would like to contribute.

Dev Mode

For development it is recommended to use some additional code formatters, tools and virtual environment to ensure code quality.

Setup your development environment with your preferred tool, we use conda:

conda create -n pyetfdb python=3.9

You can install the package in editable development mode with:

pip install -e ".[dev]"

Followed by

pre-commit install

to set up pre-commit hooks in your development environment.

Code Formatting

Black formatter is used via the pre-commit hooks.

Submitting a Pull Request (PR)

Before you submit your Pull Request (PR), consider the following guidelines:

  1. Search GitHub for an open or closed PR that relates to your submission. You don't want to duplicate effort.
  2. Follow the standard GitHub approach to create the PR. Please also follow our commit message format.
  3. That's it! Thank you for your contribution!

Commit Message Format

Write a descriptive title that includes prefixes. Must be one of the following (based on the Angular convention):

feat: A new feature
fix: A bug fix
refactor: A code change that neither fixes a bug nor adds a feature
docs: Documentation only changes
test: Adding missing tests or correcting existing tests
perf: A code change that improves performance
style: Changes that do not affect the meaning of the code (whitespace, formatting, missing semicolons, etc.)
build: Changes that affect the build system or external dependencies
ci: Changes to our CI configuration files and scripts
edit: Miscellaneous

The general format should follow:

<type>[optional scope]: <description>

[optional body]

[optional footer(s)]

A scope may be provided to a commit’s type, to provide additional contextual information and is contained within parenthesis, e.g.,

feat(parser): add ability to parse arrays