From 4acfbf66fce77b4f8bddee48304dd46405ae8b31 Mon Sep 17 00:00:00 2001 From: Tom Burrows Date: Sun, 6 May 2018 18:21:42 +0100 Subject: [PATCH] Added contributing guide and issue template --- .github/CONTRIBUTING.md | 35 +++++++++++++++++++++++++++++++++++ .github/ISSUE_TEMPLATE.md | 21 +++++++++++++++++++++ README.rst | 9 +++++---- 3 files changed, 61 insertions(+), 4 deletions(-) create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/ISSUE_TEMPLATE.md diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 000000000..29c413d2a --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,35 @@ +# Moviepy's contribution guidelines + +## Keeping/Improving code quality + +- Respect PEP8 standards! +- Just the right amount of comments. Try to write auto-documented code (with very explicit variable names). +- If you introduce a new functionality or fix a subtle bug, document it in the docstring/code. + +## Using Github + +- Keep the discussions on Github to their minimum. Remember that many people receive these messages. + - Opinions are OK. + - Avoid messages that don't bring the discussion forward ("Thanks", etc.) + - For proper discussions, use the [Moviepy Gitter](https://gitter.im/Movie-py). If these discussions lead to a decision (merge/reject), leave a message on the Moviepy issue that summarizes the reasons of the decision. +- Do not push any commit that changes the API without previous discussion. + +## Preparing for development +- Fork moviepy using the button in the top right corner +- Clone your fork: `git clone https://github.com/yourname/moviepy.git` +- Add the main repository as a remote: `git add remote upstream https://github.com/Zulko/moviepy.git` + +## Standard workflow +- Pull any changes made to the main repository: `git pull upstream master` +- Push these changes to your fork: `git push` +- Always keep your `master` branch up-to-date with `upstream master` and don't develop features on it +- To make a change + - Create a new local branch: `git checkout -b branchname` + - Make any changes in it + - Run the test suite over it to expose any problems: `python3 setup.py test` + - Push the local branch to your fork on github: `git push -u origin branchname` + - Go to github.com/yourname/moviepy and it will display 'Recently pushed branches' giving you the option to make a Pull Request to the main repo + - Fill in any details for your PR and submit + - The test suite will automatically be ran over your submission + - A moviepy collaborator will review your code, and help you to get it merge-ready +- You don't have to have finished your feature/bugfix before submitting a PR; just mention that it is a work-in-progress \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 000000000..b060d510d --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,21 @@ + + +### Expected Behavior + + +### Actual Behavior + + +### Steps to Reproduce the Problem + + + +### Specifications + + - Python Version: + - Moviepy Version + - Platform Name: + - Platform Version: diff --git a/README.rst b/README.rst index f44ea900f..5fafb9775 100644 --- a/README.rst +++ b/README.rst @@ -154,11 +154,11 @@ If you opt to run the test suite manually, you can install the dependencies via: Contribute ---------- -MoviePy is open-source software originally written by Zulko_ and released under the MIT licence. The project is hosted on GitHub_, where everyone is welcome to contribute, ask for help or simply give feedback. +MoviePy is open-source software originally written by Zulko_ and released under the MIT licence. The project is hosted on GitHub_, where everyone is welcome to contribute, ask for help or simply give feedback. Please read our `Contributing Guidelines`_ for more information about how to contribute! -You can also discuss the project on Reddit_ (preferred over GitHub issues for usage/examples), Gitter_ or the mailing list moviepy@librelist.com. +You can also discuss the project on Reddit_ or Gitter_. These are preferred over GitHub issues for usage questions and examples. -We have a list of tags used in our `Tag Wiki`_. The 'Pull Requests' tags are well defined, and all PRs should fall under exactly one of these. The 'Issues' tags are less precise, and may not be a complete list. +We have a list of labels used in our `Label Wiki`_. The 'Pull Requests' labels are well defined, and all PRs should fall under exactly one of these. The 'Issues' labels are less precise, and may not be a complete list. Maintainers @@ -176,7 +176,8 @@ Maintainers .. _gallery: http://zulko.github.io/moviepy/gallery.html .. _documentation: http://zulko.github.io/moviepy/ .. _`download MoviePy`: https://github.com/Zulko/moviepy -.. _`Tag Wiki`: https://github.com/Zulko/moviepy/wiki/Tag-Wiki +.. _`Label Wiki`: https://github.com/Zulko/moviepy/wiki/Label-Wiki +.. _Contributing Guidelines: https://github.com/Zulko/moviepy/blob/master/README.rst .. Websites, Platforms .. _Reddit: http://www.reddit.com/r/moviepy/