When contributing to this repository, please submit a new issue first to discuss the proposed change, before submitting a pull request.
- First, search existing (open and closed) issues for any related issues.
- You might then find an existing answer or suggested solution to your issue, possibly also an existing PR you can test.
- When finding existing issues that seem related to your issue, please include references (# followed by issue number) to related issues in your new issue description, or if a very similar issue is still open, consider adding a comment in that issue instead of creating a new one.
- When appropriate, please prefix your issue title with one of these category prefixes followed by a space:
- [bug] When the issue seems to be caused by a bug.
- [feature] When requesting a feature change or new feature.
- [internal] When suggesting code improvements that doesn't change any output.
- [doc] For documentation issues.
- [meta] For issues about the development or contribution process.
- Please include enough information in the description to enable another user to reproduce any error state described in your issue:
- The versions of your WireViz, Graphviz (
dot -V
), Python (python -V
), and operating system. - The relevant input files unless (preferably) you can demonstrate the same issue using one of the example files. If your input file is large or complex, please try to find a smaller/simplified input that still can reproduce the same issue.
- Any warnings or error messages you get.
- The versions of your WireViz, Graphviz (
- See also How We Write Github Issues in general.
- Fork this repository and clone it on your local machine.
- Create a new feature branch on top of the
dev
branch. - Commit your code changes to this feature branch.
- Push the changes to your fork.
- Please format your code using
isort
andblack
before submitting. - Submit a new pull request, using
dev
as the base branch.
- If your code changes or extends the WireViz YAML syntax, be sure to update the syntax description document in your PR.
- Please include in the PR description (and optionally also in the commit message body) a reference (# followed by issue number) to the issue where the suggested changes are discussed.
- Make sure to write good commit messages.
- Always consider
git rebase
beforegit merge
when joining commits from different branches, to keep the commit history simple and easier to read. - If the
dev
branch has advanced since your fork, consider rebasing onto the current state to avoid merge conflicts. - Avoid committing changes to generated files in PRs (examples, tutorials, etc.) to reduce merging conflicts. The owner will rebuild them.
- For complex PRs, consider interactively rebasing your contribution to remove intermediate commits and clean up the commit history.
- Feel free to submit a draft PR for your work-in-progress. This lets other contributors comment on and review your code, while clearly marking it as not ready for merging.
Documentation strings are to follow the Google Style (examples).