commit:     12722468eeb85e63bef3e0230ed9ffe9e85ede28
Author:     Wolfgang E. Sanyer <WolfgangESanyer <AT> gmail <DOT> com>
AuthorDate: Mon Sep 20 13:49:54 2021 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Sep 20 22:53:38 2021 +0000
URL:        https://gitweb.gentoo.org/proj/gentoolkit.git/commit/?id=12722468

Rename README.dev to CONTRIBUTING.md. Also, add information...

...regarding how to use black for formatting code, and how to ignore
formatting-only commits in git.

Signed-off-by: Wolfgang E. Sanyer <WolfgangESanyer <AT> gmail.com>
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 .gitignorerevs  |  2 ++
 CONTRIBUTING.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 README.dev      | 55 ---------------------------------------
 3 files changed, 82 insertions(+), 55 deletions(-)

diff --git a/.gitignorerevs b/.gitignorerevs
new file mode 100644
index 0000000..86287dd
--- /dev/null
+++ b/.gitignorerevs
@@ -0,0 +1,2 @@
+# Run entire repository through black. Also, change tabs to spaces
+bbcd72b5fe85fe9bbca1913f8aa22077d94e75d0

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..e91dac8
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,80 @@
+Contributing
+============
+Gentoo Developers have full priviledges to the gentoolkit repository and
+any Gentoo developer can do work on the gentoolkit source. We only ask that you
+keep the following in mind:
+
+- If you want to do a major change (i.e rewrite/refactor something), please 
talk
+  to us before pushing any commits. If you break something, please fix it.
+- All members of the Portage or Portage Tools projects are authorized to create
+  a new release of gentoolkit or gentoolkit-dev.
+- All other Gentoo Developers are authorized to create a new release if it is
+  coordinated with fuzzyray and/or dolsen.
+- If you create a release and it breaks, please fix it.
+
+Any non Gentoo developers who wish to contribute, the best way to get
+started is by cloning a copy of the repository and submitting patches to
+bugzilla.  Additionally, we can be found in the #gentoo-portage IRC
+channel.
+
+Formatting
+==========
+We use [black](https://pypi.org/project/black/) to format the code
+base. Please make sure you run it against any PRs prior to submitting
+(otherwise we'll probably reject it).
+
+There are [ways to 
integrate](https://black.readthedocs.io/en/stable/integrations/editors.html)
+black into your text editor and/or IDE.
+
+You can also set up a git hook to check your commits, in case you don't want
+editor integration. Something like this:
+
+```sh
+# .git/hooks/pre-commit (don't forget to chmod +x)
+
+#!/bin/bash
+black --check --diff .
+```
+
+To ignore reformatting commits (which are listed in `.gitignorerevs`) you can 
do
+the following:
+
+```sh
+git config blame.ignoreRevsFile .gitignorerevs
+```
+
+Adding or modifying code
+========================
+- If you add new code, best practice is to write a test for it.
+- If you're modifying code that doesn't have a test and you can write a test
+  for it, please do.
+- Before committing your changes, run "tox" to ensure that you didn't break
+  tests or introduced a flake8 error.
+- If flake8 raises a warning or error that you don't agree with, it's probably
+  better to just change your code. If you're sure you have a good reason for
+  doing what you're doing, you can add "# noqa" at the end of the line to
+  silence it.
+
+Creating a release
+==================
+Note: We are using VERSION="0.3.0" simply as an example.
+
+```sh
+# Run Gentoolkit's test suite, make sure it passes:
+# Note: requires dev-python/snakeoil
+./setup.py test
+
+# Create a source distribution (you need to add VERSION here):
+VERSION="0.3.0" ./setup.py sdist
+# Transfer dist/gentoolkit-0.3.0.tar.gz to 
dev.gentoo.org:/space/distfiles-local
+# scp dist/gentoolkit-0.3.0.tar.gz 
[email protected]:/space/distfiles-local
+
+# Clean up temporary files:
+./setup.py clean -a
+git status
+# rm or mv any untracked files/directories
+
+# Create a tag for the release
+git tag gentoolkit-0.3.0
+git push origin gentoolkit-0.3.0
+```

diff --git a/README.dev b/README.dev
deleted file mode 100644
index e2df152..0000000
--- a/README.dev
+++ /dev/null
@@ -1,55 +0,0 @@
-Contributing:
-=============
-Gentoo Developers have full priviledges to the gentoolkit repository and
-any Gentoo developer can do work on the gentoolkit source.
-
-We only have several requirements.  If you want to do a major change (i.e
-rewrite/refactor something), please talk to us before pushing any
-commits. If you break something, please fix it.
-
-All members of the Portage or Portage Tools projects are authorized to
-create a new release of gentoolkit or gentoolkit-dev.
-
-All other Gentoo Developers are authorized to create a new release if it is
-coordinated with fuzzyray and/or dolsen.
-
-If you create a release and it breaks, please fix it.
-
-Any non Gentoo developers who wish to contribute, the best way to get
-started is by cloning a copy of the repository and submitting patches to
-bugzilla.  Additionally, we can be found in the #gentoo-portage IRC
-channel.
-
-Adding or modifying code:
-=========================
-- If you add new code, best practice is to write a test for it.
-- If you're modifying code that doesn't have a test and you can write a test
-  for it, please do.
-- Before committing your changes, run "tox" to ensure that you didn't break
-  tests or introduced a flake8 error.
-- If flake8 raises a warning or error that you don't agree with, it's probably
-  better to just change your code. If you're sure you have a good reason for
-  doing what you're doing, you can add "# noqa" at the end of the line to
-  silence it.
-
-Creating a release:
-===================
-Note: We are using VERSION="0.3.0" simply as an example.
-
-- Run Gentoolkit's test suite, make sure it passes:
-Note: requires dev-python/snakeoil
-
-./setup.py test
-
-- Create a source distribution (you need to add VERSION here):
-VERSION="0.3.0" ./setup.py sdist
-Transfer dist/gentoolkit-0.3.0.tar.gz to dev.gentoo.org:/space/distfiles-local
-
-- Clean up temporary files:
-./setup.py clean -a
-git status
-rm or mv any untracked files/directories
-
-- Create a tag for the release
-git tag gentoolkit-0.3.0
-git push origin gentoolkit-0.3.0

Reply via email to