summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAarni Koskela <akx@iki.fi>2023-01-11 10:42:08 +0200
committerGitHub <noreply@github.com>2023-01-11 10:42:08 +0200
commit61097845764f5a6afc2251172168e1b1732b290f (patch)
tree4fe79ad51cd414a022644c94013c770576a0206f
parent338bfa13c39df0837dd45cf492eb24d8d214ba96 (diff)
downloadbabel-61097845764f5a6afc2251172168e1b1732b290f.tar.gz
Enable pre-commit (#943)
* Update pre-commit config syntax * CI: run pre-commit * CI: set up pip caching
-rw-r--r--.coveragerc2
-rw-r--r--.github/workflows/test.yml9
-rw-r--r--.pre-commit-config.yaml31
-rw-r--r--babel/messages/pofile.py2
-rw-r--r--docs/installation.rst2
5 files changed, 26 insertions, 20 deletions
diff --git a/.coveragerc b/.coveragerc
index a3d8ae6..f98d802 100644
--- a/.coveragerc
+++ b/.coveragerc
@@ -2,4 +2,4 @@
exclude_lines =
NotImplemented
pragma: no cover
- warnings.warn \ No newline at end of file
+ warnings.warn
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index f9a7bee..1e89861 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -11,6 +11,11 @@ on:
- '*-maint'
jobs:
+ lint:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: pre-commit/action@v3.0.0
test:
runs-on: ${{ matrix.os }}
strategy:
@@ -27,9 +32,11 @@ jobs:
path: cldr
key: cldr-${{ hashFiles('scripts/*cldr*') }}
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v3
+ uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
+ cache: "pip"
+ cache-dependency-path: "**/setup.py"
- name: Install dependencies
run: |
python -m pip install --upgrade pip setuptools wheel
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 0a345ce..b61dac4 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,19 +1,18 @@
-- repo: https://github.com/pre-commit/pre-commit-hooks
- sha: 97b88d9610bcc03982ddac33caba98bb2b751f5f
+repos:
+ - repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: v4.4.0
hooks:
- - id: autopep8-wrapper
- exclude: (docs/conf.py|tests/messages/data/)
- - id: check-added-large-files
- - id: check-docstring-first
+ - id: check-added-large-files
+ - id: check-docstring-first
exclude: (docs/conf.py)
- - id: check-json
- - id: check-yaml
- - id: debug-statements
- - id: end-of-file-fixer
- - id: flake8
- exclude: (docs/conf.py|babel/messages/__init__.py|babel/__init__.py|tests/messages/data|scripts/import_cldr.py)
- - id: name-tests-test
- args: ['--django']
+ - id: check-json
+ - id: check-yaml
+ - id: debug-statements
exclude: (tests/messages/data/)
- - id: requirements-txt-fixer
- - id: trailing-whitespace
+ - id: end-of-file-fixer
+ exclude: (tests/messages/data/)
+ - id: name-tests-test
+ args: [ '--django' ]
+ exclude: (tests/messages/data/)
+ - id: requirements-txt-fixer
+ - id: trailing-whitespace
diff --git a/babel/messages/pofile.py b/babel/messages/pofile.py
index a213b22..b366ccb 100644
--- a/babel/messages/pofile.py
+++ b/babel/messages/pofile.py
@@ -575,7 +575,7 @@ def write_po(fileobj, catalog, width=76, no_location=False, omit_header=False,
# if no sorting possible, leave unsorted.
# (see issue #606)
try:
- locations = sorted(message.locations,
+ locations = sorted(message.locations,
key=lambda x: (x[0], isinstance(x[1], int) and x[1] or -1))
except TypeError: # e.g. "TypeError: unorderable types: NoneType() < int()"
locations = message.locations
diff --git a/docs/installation.rst b/docs/installation.rst
index c1b7ab9..26fe23a 100644
--- a/docs/installation.rst
+++ b/docs/installation.rst
@@ -86,7 +86,7 @@ Get the git checkout in a new virtualenv and run in development mode::
Finished processing dependencies for Babel
Make sure to not forget about the ``pip install pytz`` and ``import_cldr`` steps
-because otherwise you will be missing the locale data.
+because otherwise you will be missing the locale data.
The custom setup command will download the most appropriate CLDR release from the
official website and convert it for Babel but will not work without ``pytz``.