Skip to content

Commit

Permalink
Automatic formatting via black + CI support
Browse files Browse the repository at this point in the history
  • Loading branch information
volkm committed Jul 19, 2024
1 parent 9085cfd commit c17e1a2
Show file tree
Hide file tree
Showing 5 changed files with 64 additions and 0 deletions.
Empty file added .git-blame-ignore-revs
Empty file.
38 changes: 38 additions & 0 deletions .github/workflows/formatapply.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: apply-code-format

on: [ workflow_dispatch ]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
options: ""
src: "."
jupyter: true
- name: Commit Formatting
run: |
git config user.name 'Auto Format'
git config user.email '[email protected]'
if [ -z "$(git status --porcelain)" ]
then
echo "Code did not change"
else
git commit -am "Applied code formatting"
git rev-parse HEAD >> .git-blame-ignore-revs
git commit -am "Add code formatting commit to .git-blame-ignore-revs"
fi
- name: Create Pull Request
id: cpr
uses: peter-evans/create-pull-request@v6
with:
branch: ci/apply-code-format
delete-branch: true
title: 'Code formatting'
body: |
Auto-generated pull request triggered by the `apply-code-format` workflow.
- Manually close and reopen this PR to trigger the CI.
- Make sure to **merge** (and not rebase) this PR so that the added commit hash in `.git-blame-ignore-revs` remains valid.
15 changes: 15 additions & 0 deletions .github/workflows/formatcheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: check-code-format

on: [push, pull_request, workflow_dispatch]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
options: "--check --diff --color"
src: "."
jupyter: true
10 changes: 10 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[tool.black]
line-length = 160
target-version = [
"py37",
"py38",
"py39",
"py310",
"py311",
]
include = "\\.pyi?$"
1 change: 1 addition & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,7 @@ def finalize_options(self):
"numpy": ["numpy"],
"plot": ["matplotlib","numpy","scipy"],
"doc": ["Sphinx", "sphinx-bootstrap-theme", "nbsphinx", "ipython", "ipykernel"], # also requires pandoc to be installed
"dev": ["black"],
},
python_requires='>=3.7', # required by packaging
)

0 comments on commit c17e1a2

Please sign in to comment.