summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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``.