summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAarni Koskela <akx@iki.fi>2023-01-18 20:07:31 +0200
committerAarni Koskela <akx@iki.fi>2023-01-18 21:20:51 +0200
commit3fb72cea613ba05480a9027aa927d2c8b817d693 (patch)
treedd17d47cc814123a5e4a3e3dad212d9acf3c0b4e
parent67870e3ce54d6b0a61900e2436f3ffdfa4d6a83d (diff)
downloadbabel-3fb72cea613ba05480a9027aa927d2c8b817d693.tar.gz
Apply ruff I category fixes
-rw-r--r--babel/dates.py2
-rw-r--r--babel/localtime/__init__.py2
-rw-r--r--babel/localtime/_unix.py6
-rw-r--r--babel/localtime/_win32.py3
-rw-r--r--babel/messages/catalog.py7
-rw-r--r--babel/messages/checkers.py3
-rw-r--r--babel/messages/extract.py18
-rw-r--r--babel/messages/frontend.py19
-rw-r--r--babel/messages/jslexer.py2
-rw-r--r--babel/messages/plurals.py2
-rw-r--r--babel/messages/pofile.py7
-rw-r--r--babel/numbers.py4
-rw-r--r--babel/support.py15
-rw-r--r--babel/util.py6
-rw-r--r--docs/conf.py2
-rw-r--r--pyproject.toml1
-rwxr-xr-xscripts/download_import_cldr.py7
-rwxr-xr-xscripts/dump_data.py2
-rwxr-xr-xscripts/dump_global.py5
-rw-r--r--scripts/generate_authors.py3
-rwxr-xr-xscripts/import_cldr.py5
-rwxr-xr-xsetup.py2
-rw-r--r--tests/conftest.py1
-rw-r--r--tests/messages/test_catalog.py2
-rw-r--r--tests/messages/test_frontend.py22
-rw-r--r--tests/messages/test_js_extract.py2
-rw-r--r--tests/messages/test_mofile.py2
-rw-r--r--tests/messages/test_pofile.py6
-rw-r--r--tests/test_core.py2
-rw-r--r--tests/test_dates.py2
-rw-r--r--tests/test_day_periods.py3
-rw-r--r--tests/test_localedata.py4
-rw-r--r--tests/test_numbers.py15
-rw-r--r--tests/test_plural.py3
-rw-r--r--tests/test_smoke.py5
-rw-r--r--tests/test_support.py6
-rw-r--r--tests/test_util.py1
37 files changed, 119 insertions, 80 deletions
diff --git a/babel/dates.py b/babel/dates.py
index ee8bcfd..7bfea71 100644
--- a/babel/dates.py
+++ b/babel/dates.py
@@ -27,9 +27,9 @@ except ModuleNotFoundError:
pytz = None
import zoneinfo
+import datetime
from bisect import bisect_right
from collections.abc import Iterable
-import datetime
from babel import localtime
from babel.core import Locale, default_locale, get_global
diff --git a/babel/localtime/__init__.py b/babel/localtime/__init__.py
index 9d227c7..1d65fb2 100644
--- a/babel/localtime/__init__.py
+++ b/babel/localtime/__init__.py
@@ -9,9 +9,9 @@
:license: BSD, see LICENSE for more details.
"""
+import datetime
import sys
import time
-import datetime
from threading import RLock
if sys.platform == 'win32':
diff --git a/babel/localtime/_unix.py b/babel/localtime/_unix.py
index 89b461a..eb81beb 100644
--- a/babel/localtime/_unix.py
+++ b/babel/localtime/_unix.py
@@ -1,14 +1,14 @@
+import datetime
import os
import re
-import datetime
-
from babel.localtime._helpers import (
+ _get_tzinfo,
_get_tzinfo_from_file,
_get_tzinfo_or_raise,
- _get_tzinfo,
)
+
def _tz_from_env(tzenv: str) -> datetime.tzinfo:
if tzenv[0] == ':':
tzenv = tzenv[1:]
diff --git a/babel/localtime/_win32.py b/babel/localtime/_win32.py
index 42f819a..1a52567 100644
--- a/babel/localtime/_win32.py
+++ b/babel/localtime/_win32.py
@@ -6,9 +6,10 @@ except ImportError:
winreg = None
import datetime
+from typing import Any, Dict, cast
+
from babel.core import get_global
from babel.localtime._helpers import _get_tzinfo_or_raise
-from typing import Any, Dict, cast
# When building the cldr data on windows this module gets imported.
# Because at that point there is no global.dat yet this call will
diff --git a/babel/messages/catalog.py b/babel/messages/catalog.py
index 7b27f64..dbca10f 100644
--- a/babel/messages/catalog.py
+++ b/babel/messages/catalog.py
@@ -9,21 +9,20 @@
"""
from __future__ import annotations
+import datetime
import re
-
from collections import OrderedDict
from collections.abc import Iterable, Iterator
-import datetime
+from copy import copy
from difflib import get_close_matches
from email import message_from_string
-from copy import copy
from typing import TYPE_CHECKING
from babel import __version__ as VERSION
from babel.core import Locale, UnknownLocaleError
from babel.dates import format_datetime
from babel.messages.plurals import get_plural
-from babel.util import distinct, LOCALTZ, FixedOffsetTimezone, _cmp
+from babel.util import LOCALTZ, FixedOffsetTimezone, _cmp, distinct
if TYPE_CHECKING:
from typing_extensions import TypeAlias
diff --git a/babel/messages/checkers.py b/babel/messages/checkers.py
index 5e36b87..38a26e8 100644
--- a/babel/messages/checkers.py
+++ b/babel/messages/checkers.py
@@ -13,8 +13,7 @@ from __future__ import annotations
from collections.abc import Callable
-from babel.messages.catalog import Catalog, Message, TranslationError, PYTHON_FORMAT
-
+from babel.messages.catalog import PYTHON_FORMAT, Catalog, Message, TranslationError
#: list of format chars that are compatible to each other
_string_format_compatibilities = [
diff --git a/babel/messages/extract.py b/babel/messages/extract.py
index a426510..0934937 100644
--- a/babel/messages/extract.py
+++ b/babel/messages/extract.py
@@ -18,21 +18,29 @@
from __future__ import annotations
import ast
-from collections.abc import Callable, Collection, Generator, Iterable, Mapping, MutableSequence
import io
import os
import sys
+from collections.abc import (
+ Callable,
+ Collection,
+ Generator,
+ Iterable,
+ Mapping,
+ MutableSequence,
+)
from os.path import relpath
-from tokenize import generate_tokens, COMMENT, NAME, OP, STRING
-from typing import Any, TYPE_CHECKING
+from textwrap import dedent
+from tokenize import COMMENT, NAME, OP, STRING, generate_tokens
+from typing import TYPE_CHECKING, Any
from babel.util import parse_encoding, parse_future_flags, pathmatch
-from textwrap import dedent
if TYPE_CHECKING:
from typing import IO, Protocol
- from typing_extensions import Final, TypeAlias, TypedDict
+
from _typeshed import SupportsItems, SupportsRead, SupportsReadline
+ from typing_extensions import Final, TypeAlias, TypedDict
class _PyOptions(TypedDict, total=False):
encoding: str
diff --git a/babel/messages/frontend.py b/babel/messages/frontend.py
index a9a3e4d..98a1ca8 100644
--- a/babel/messages/frontend.py
+++ b/babel/messages/frontend.py
@@ -8,6 +8,7 @@
:license: BSD, see LICENSE for more details.
"""
+import datetime
import fnmatch
import logging
import optparse
@@ -18,15 +19,19 @@ import sys
import tempfile
from collections import OrderedDict
from configparser import RawConfigParser
-import datetime
from io import StringIO
from typing import Iterable
-from babel import __version__ as VERSION
from babel import Locale, localedata
+from babel import __version__ as VERSION
from babel.core import UnknownLocaleError
-from babel.messages.catalog import Catalog, DEFAULT_HEADER
-from babel.messages.extract import DEFAULT_KEYWORDS, DEFAULT_MAPPING, check_and_call_extract_file, extract_from_dir
+from babel.messages.catalog import DEFAULT_HEADER, Catalog
+from babel.messages.extract import (
+ DEFAULT_KEYWORDS,
+ DEFAULT_MAPPING,
+ check_and_call_extract_file,
+ extract_from_dir,
+)
from babel.messages.mofile import write_mo
from babel.messages.pofile import read_po, write_po
from babel.util import LOCALTZ
@@ -39,14 +44,16 @@ try:
distutils_log = log # "distutils.log → (no replacement yet)"
try:
- from setuptools.errors import OptionError, SetupError, BaseError
+ from setuptools.errors import BaseError, OptionError, SetupError
except ImportError: # Error aliases only added in setuptools 59 (2021-11).
OptionError = SetupError = BaseError = Exception
except ImportError:
from distutils import log as distutils_log
from distutils.cmd import Command as _Command
- from distutils.errors import DistutilsOptionError as OptionError, DistutilsSetupError as SetupError, DistutilsError as BaseError
+ from distutils.errors import DistutilsError as BaseError
+ from distutils.errors import DistutilsOptionError as OptionError
+ from distutils.errors import DistutilsSetupError as SetupError
diff --git a/babel/messages/jslexer.py b/babel/messages/jslexer.py
index 11ddf96..e6d20ae 100644
--- a/babel/messages/jslexer.py
+++ b/babel/messages/jslexer.py
@@ -11,8 +11,8 @@
"""
from __future__ import annotations
-from collections.abc import Generator
import re
+from collections.abc import Generator
from typing import NamedTuple
operators: list[str] = sorted([
diff --git a/babel/messages/plurals.py b/babel/messages/plurals.py
index 0fdf53b..eb8de47 100644
--- a/babel/messages/plurals.py
+++ b/babel/messages/plurals.py
@@ -9,9 +9,9 @@
"""
from __future__ import annotations
-from babel.core import default_locale, Locale
from operator import itemgetter
+from babel.core import Locale, default_locale
# XXX: remove this file, duplication with babel.plural
diff --git a/babel/messages/pofile.py b/babel/messages/pofile.py
index b6d0d6e..76d3123 100644
--- a/babel/messages/pofile.py
+++ b/babel/messages/pofile.py
@@ -14,14 +14,15 @@ import os
import re
from collections.abc import Iterable
from typing import TYPE_CHECKING
-from babel.core import Locale
+from babel.core import Locale
from babel.messages.catalog import Catalog, Message
-from babel.util import wraptext, _cmp
+from babel.util import _cmp, wraptext
if TYPE_CHECKING:
- from _typeshed import SupportsWrite
from typing import IO, AnyStr
+
+ from _typeshed import SupportsWrite
from typing_extensions import Literal
diff --git a/babel/numbers.py b/babel/numbers.py
index f229072..6ecd7dc 100644
--- a/babel/numbers.py
+++ b/babel/numbers.py
@@ -19,11 +19,11 @@
# - https://www.unicode.org/reports/tr35/ (Appendix G.6)
from __future__ import annotations
+import datetime
import decimal
import re
-from typing import TYPE_CHECKING, Any, overload
import warnings
-import datetime
+from typing import TYPE_CHECKING, Any, overload
from babel.core import Locale, default_locale, get_global
from babel.localedata import LocaleDataDict
diff --git a/babel/support.py b/babel/support.py
index 216c8f1..7092599 100644
--- a/babel/support.py
+++ b/babel/support.py
@@ -20,12 +20,15 @@ from collections.abc import Iterator
from typing import TYPE_CHECKING, Any, Callable
from babel.core import Locale
-
-from babel.dates import (format_date, format_datetime, format_time,
- format_timedelta)
-from babel.numbers import (format_compact_currency, format_compact_decimal,
- format_currency, format_decimal, format_percent,
- format_scientific)
+from babel.dates import format_date, format_datetime, format_time, format_timedelta
+from babel.numbers import (
+ format_compact_currency,
+ format_compact_decimal,
+ format_currency,
+ format_decimal,
+ format_percent,
+ format_scientific,
+)
if TYPE_CHECKING:
from typing_extensions import Literal
diff --git a/babel/util.py b/babel/util.py
index d25ec53..cf86f20 100644
--- a/babel/util.py
+++ b/babel/util.py
@@ -11,15 +11,15 @@ from __future__ import annotations
import codecs
import collections
+import datetime
import os
import re
import textwrap
-from babel import localtime, dates
-
from collections.abc import Generator, Iterable
-import datetime
from typing import IO, Any, TypeVar
+from babel import dates, localtime
+
missing = object()
_T = TypeVar("_T")
diff --git a/docs/conf.py b/docs/conf.py
index ed4794e..84bbd7e 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -10,8 +10,8 @@
# All configuration values have a default; values that are commented out
# serve to show the default.
-import sys
import os
+import sys
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
diff --git a/pyproject.toml b/pyproject.toml
index 7dd161e..37f7fe3 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -5,6 +5,7 @@ select = [
"C",
"E",
"F",
+ "I",
]
ignore = [
"C901", # Complexity
diff --git a/scripts/download_import_cldr.py b/scripts/download_import_cldr.py
index 57995b5..926e747 100755
--- a/scripts/download_import_cldr.py
+++ b/scripts/download_import_cldr.py
@@ -1,15 +1,14 @@
#!/usr/bin/env python3
import contextlib
+import hashlib
import os
-import sys
import shutil
-import hashlib
-import zipfile
import subprocess
+import sys
+import zipfile
from urllib.request import urlretrieve
-
URL = 'http://unicode.org/Public/cldr/41/cldr-common-41.0.zip'
FILENAME = 'cldr-common-41.0.zip'
# Via https://unicode.org/Public/cldr/41/hashes/SHASUM512
diff --git a/scripts/dump_data.py b/scripts/dump_data.py
index e419050..041a410 100755
--- a/scripts/dump_data.py
+++ b/scripts/dump_data.py
@@ -14,7 +14,7 @@
from optparse import OptionParser
from pprint import pprint
-from babel.localedata import load, LocaleDataDict
+from babel.localedata import LocaleDataDict, load
def main():
diff --git a/scripts/dump_global.py b/scripts/dump_global.py
index 6696415..3fc95b6 100755
--- a/scripts/dump_global.py
+++ b/scripts/dump_global.py
@@ -11,10 +11,11 @@
# individuals. For the exact contribution history, see the revision
# history and logs, available at http://babel.edgewall.org/log/.
-import cPickle as pickle
import os
-from pprint import pprint
import sys
+from pprint import pprint
+
+import cPickle as pickle
import babel
diff --git a/scripts/generate_authors.py b/scripts/generate_authors.py
index e2e3add..64c0af8 100644
--- a/scripts/generate_authors.py
+++ b/scripts/generate_authors.py
@@ -1,8 +1,7 @@
+import os
from collections import Counter
from subprocess import check_output
-import os
-
root_path = os.path.realpath(os.path.join(os.path.dirname(__file__), '..'))
diff --git a/scripts/import_cldr.py b/scripts/import_cldr.py
index 5de707c..0dc4738 100755
--- a/scripts/import_cldr.py
+++ b/scripts/import_cldr.py
@@ -12,13 +12,12 @@
# history and logs, available at http://babel.edgewall.org/log/.
import collections
-from optparse import OptionParser
+import logging
import os
import pickle
import re
import sys
-import logging
-
+from optparse import OptionParser
from xml.etree import ElementTree
# Make sure we're using Babel source, and not some previously installed version
diff --git a/setup.py b/setup.py
index db63216..df6ad8b 100755
--- a/setup.py
+++ b/setup.py
@@ -1,7 +1,7 @@
import subprocess
import sys
-from setuptools import setup, Command
+from setuptools import Command, setup
try:
from babel import __version__
diff --git a/tests/conftest.py b/tests/conftest.py
index 0506a83..67e3ce9 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -1,4 +1,5 @@
import os
+
import pytest
try:
diff --git a/tests/messages/test_catalog.py b/tests/messages/test_catalog.py
index e9b15a8..eb1e308 100644
--- a/tests/messages/test_catalog.py
+++ b/tests/messages/test_catalog.py
@@ -15,7 +15,7 @@ import datetime
import unittest
from io import StringIO
-from babel.dates import format_datetime, UTC
+from babel.dates import UTC, format_datetime
from babel.messages import catalog, pofile
from babel.util import FixedOffsetTimezone
diff --git a/tests/messages/test_frontend.py b/tests/messages/test_frontend.py
index 8727cb8..e540e71 100644
--- a/tests/messages/test_frontend.py
+++ b/tests/messages/test_frontend.py
@@ -9,26 +9,32 @@
# This software consists of voluntary contributions made by many
# individuals. For the exact contribution history, see the revision
# history and logs, available at http://babel.edgewall.org/log/.
-import shlex
-from datetime import datetime
-from freezegun import freeze_time
-from io import StringIO
-from setuptools import Distribution
import logging
import os
+import shlex
import shutil
import sys
import time
import unittest
+from datetime import datetime
+from io import StringIO
import pytest
+from freezegun import freeze_time
+from setuptools import Distribution
from babel import __version__ as VERSION
from babel.dates import format_datetime
-from babel.messages import frontend, Catalog
-from babel.messages.frontend import CommandLineInterface, extract_messages, update_catalog, OptionError, BaseError
-from babel.util import LOCALTZ
+from babel.messages import Catalog, frontend
+from babel.messages.frontend import (
+ BaseError,
+ CommandLineInterface,
+ OptionError,
+ extract_messages,
+ update_catalog,
+)
from babel.messages.pofile import read_po, write_po
+from babel.util import LOCALTZ
TEST_PROJECT_DISTRIBUTION_DATA = {
"name": "TestProject",
diff --git a/tests/messages/test_js_extract.py b/tests/messages/test_js_extract.py
index 95985c0..7d43921 100644
--- a/tests/messages/test_js_extract.py
+++ b/tests/messages/test_js_extract.py
@@ -1,5 +1,7 @@
from io import BytesIO
+
import pytest
+
from babel.messages import extract
diff --git a/tests/messages/test_mofile.py b/tests/messages/test_mofile.py
index 6e026a8..ff7c2ed 100644
--- a/tests/messages/test_mofile.py
+++ b/tests/messages/test_mofile.py
@@ -14,7 +14,7 @@ import os
import unittest
from io import BytesIO
-from babel.messages import mofile, Catalog
+from babel.messages import Catalog, mofile
from babel.support import Translations
diff --git a/tests/messages/test_pofile.py b/tests/messages/test_pofile.py
index a72368b..fb5799b 100644
--- a/tests/messages/test_pofile.py
+++ b/tests/messages/test_pofile.py
@@ -10,16 +10,18 @@
# individuals. For the exact contribution history, see the revision
# history and logs, available at http://babel.edgewall.org/log/.
-from datetime import datetime
import unittest
+from datetime import datetime
from io import BytesIO, StringIO
+
import pytest
from babel.core import Locale
-from babel.messages.catalog import Catalog, Message
from babel.messages import pofile
+from babel.messages.catalog import Catalog, Message
from babel.util import FixedOffsetTimezone
+
class ReadPoTestCase(unittest.TestCase):
def test_preserve_locale(self):
diff --git a/tests/test_core.py b/tests/test_core.py
index a200718..f4d253c 100644
--- a/tests/test_core.py
+++ b/tests/test_core.py
@@ -13,7 +13,7 @@
import pytest
from babel import core
-from babel.core import default_locale, Locale
+from babel.core import Locale, default_locale
def test_locale_provides_access_to_cldr_locale_data():
diff --git a/tests/test_dates.py b/tests/test_dates.py
index a4fb9c5..b4abaf9 100644
--- a/tests/test_dates.py
+++ b/tests/test_dates.py
@@ -16,7 +16,7 @@ from datetime import date, datetime, time, timedelta
import freezegun
import pytest
-from babel import dates, Locale
+from babel import Locale, dates
from babel.dates import NO_INHERITANCE_MARKER, _localize
from babel.util import FixedOffsetTimezone
diff --git a/tests/test_day_periods.py b/tests/test_day_periods.py
index 414c0f6..9b51e1d 100644
--- a/tests/test_day_periods.py
+++ b/tests/test_day_periods.py
@@ -1,8 +1,9 @@
from datetime import time
-import babel.dates as dates
import pytest
+import babel.dates as dates
+
@pytest.mark.parametrize("locale, time, expected_period_id", [
("de", time(7, 42), "morning1"), # (from, before)
diff --git a/tests/test_localedata.py b/tests/test_localedata.py
index 006a6b0..7672ddc 100644
--- a/tests/test_localedata.py
+++ b/tests/test_localedata.py
@@ -12,15 +12,15 @@
import os
import pickle
+import random
import sys
import tempfile
import unittest
-import random
from operator import methodcaller
import pytest
-from babel import localedata, Locale, UnknownLocaleError
+from babel import Locale, UnknownLocaleError, localedata
class MergeResolveTestCase(unittest.TestCase):
diff --git a/tests/test_numbers.py b/tests/test_numbers.py
index 3ae9143..ca33c1e 100644
--- a/tests/test_numbers.py
+++ b/tests/test_numbers.py
@@ -12,14 +12,21 @@
import decimal
import unittest
-import pytest
-
from datetime import date
+import pytest
+
from babel import localedata, numbers
from babel.numbers import (
- list_currencies, validate_currency, UnknownCurrencyError, is_currency, normalize_currency,
- get_currency_precision, get_decimal_precision, get_currency_unit_pattern)
+ UnknownCurrencyError,
+ get_currency_precision,
+ get_currency_unit_pattern,
+ get_decimal_precision,
+ is_currency,
+ list_currencies,
+ normalize_currency,
+ validate_currency,
+)
class FormatDecimalTestCase(unittest.TestCase):
diff --git a/tests/test_plural.py b/tests/test_plural.py
index 16601cf..e1e5ead 100644
--- a/tests/test_plural.py
+++ b/tests/test_plural.py
@@ -11,9 +11,10 @@
# history and logs, available at http://babel.edgewall.org/log/.
import decimal
import unittest
+
import pytest
-from babel import plural, localedata
+from babel import localedata, plural
EPSILON = decimal.Decimal("0.0001")
diff --git a/tests/test_smoke.py b/tests/test_smoke.py
index aed676a..c916845 100644
--- a/tests/test_smoke.py
+++ b/tests/test_smoke.py
@@ -4,11 +4,12 @@ looking at improving test coverage. They just verify that basic
operations don't fail due to odd corner cases on any locale that
we ship.
"""
-import decimal
import datetime
+import decimal
+
import pytest
-from babel import Locale, units, dates, numbers
+from babel import Locale, dates, numbers, units
NUMBERS = (
decimal.Decimal("-33.76"), # Negative Decimal
diff --git a/tests/test_support.py b/tests/test_support.py
index 3ca0be3..fe10402 100644
--- a/tests/test_support.py
+++ b/tests/test_support.py
@@ -13,18 +13,18 @@
import inspect
import os
import shutil
+import sys
import tempfile
import unittest
-import pytest
-import sys
from datetime import date, datetime, timedelta
from io import BytesIO
+import pytest
+
from babel import support
from babel.messages import Catalog
from babel.messages.mofile import write_mo
-
SKIP_LGETTEXT = sys.version_info >= (3, 8)
@pytest.mark.usefixtures("os_environ")
diff --git a/tests/test_util.py b/tests/test_util.py
index ba62d9b..f58fc24 100644
--- a/tests/test_util.py
+++ b/tests/test_util.py
@@ -11,6 +11,7 @@
# history and logs, available at http://babel.edgewall.org/log/.
import __future__
+
import unittest
from io import BytesIO