summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSeth M Morton <seth.m.morton@gmail.com>2018-09-09 18:12:31 -0700
committerSeth M Morton <seth.m.morton@gmail.com>2018-09-09 18:57:31 -0700
commit1fe1b8df3668722b73c893f0fcac8acecceed1af (patch)
treea85a30cd05c2967b23eeae145956568196041733
parent096b25569bb00aa74924aa405a1f0ddbe03e8ed0 (diff)
downloadnatsort-1fe1b8df3668722b73c893f0fcac8acecceed1af.tar.gz
Resolve flake8 errors in non-test code.
-rw-r--r--natsort/__init__.py2
-rw-r--r--natsort/compat/fake_fastnumbers.py5
-rw-r--r--natsort/compat/fastnumbers.py4
-rw-r--r--natsort/compat/locale.py4
-rw-r--r--natsort/compat/pathlib.py2
-rw-r--r--natsort/natsort.py2
-rw-r--r--natsort/ns_enum.py2
-rw-r--r--natsort/unicode_numbers.py2
-rw-r--r--natsort/utils.py5
-rw-r--r--setup.cfg19
-rw-r--r--setup.py2
11 files changed, 35 insertions, 14 deletions
diff --git a/natsort/__init__.py b/natsort/__init__.py
index 9980418..830f8ab 100644
--- a/natsort/__init__.py
+++ b/natsort/__init__.py
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
-from __future__ import print_function, division, unicode_literals, absolute_import
+from __future__ import absolute_import, division, print_function, unicode_literals
import sys
diff --git a/natsort/compat/fake_fastnumbers.py b/natsort/compat/fake_fastnumbers.py
index c4b8ada..27ce027 100644
--- a/natsort/compat/fake_fastnumbers.py
+++ b/natsort/compat/fake_fastnumbers.py
@@ -37,6 +37,7 @@ NAN_INF = [
NAN_INF.extend(["+" + x[:2] for x in NAN_INF] + ["-" + x[:2] for x in NAN_INF])
NAN_INF = frozenset(NAN_INF)
ASCII_NUMS = "0123456789+-"
+POTENTIAL_FIRST_CHAR = frozenset(decimal_chars + list(ASCII_NUMS + "."))
# noinspection PyIncorrectDocstring
@@ -46,7 +47,7 @@ def fast_float(
nan=None,
_uni=unicodedata.numeric,
_nan_inf=NAN_INF,
- _first_char=frozenset(decimal_chars + list(ASCII_NUMS + ".")),
+ _first_char=POTENTIAL_FIRST_CHAR,
):
"""
Convert a string to a float quickly, return input as-is if not possible.
@@ -89,7 +90,7 @@ def fast_int(
x,
key=lambda x: x,
_uni=unicodedata.digit,
- _first_char=frozenset(decimal_chars + list(ASCII_NUMS)),
+ _first_char=POTENTIAL_FIRST_CHAR,
):
"""
Convert a string to a int quickly, return input as-is if not possible.
diff --git a/natsort/compat/fastnumbers.py b/natsort/compat/fastnumbers.py
index 0141387..b1468b3 100644
--- a/natsort/compat/fastnumbers.py
+++ b/natsort/compat/fastnumbers.py
@@ -3,7 +3,7 @@
Interface for natsort to access fastnumbers functions without
having to worry if it is actually installed.
"""
-from __future__ import print_function, division, unicode_literals, absolute_import
+from __future__ import absolute_import, division, print_function, unicode_literals
from distutils.version import StrictVersion
@@ -17,4 +17,4 @@ try:
if StrictVersion(fn_ver) < StrictVersion("2.0.0"):
raise ImportError # pragma: no cover
except ImportError:
- from natsort.compat.fake_fastnumbers import fast_float, fast_int
+ from natsort.compat.fake_fastnumbers import fast_float, fast_int # noqa: F401
diff --git a/natsort/compat/locale.py b/natsort/compat/locale.py
index 45f5bc4..1629ba0 100644
--- a/natsort/compat/locale.py
+++ b/natsort/compat/locale.py
@@ -3,7 +3,7 @@
Interface for natsort to access locale functionality without
having to worry about if it is using PyICU or the built-in locale.
"""
-from __future__ import print_function, division, unicode_literals, absolute_import
+from __future__ import absolute_import, division, print_function, unicode_literals
# Std. lib imports.
import sys
@@ -20,7 +20,7 @@ null_string_max = py23_unichr(sys.maxunicode) * 20
# Make the strxfrm function from strcoll on Python2
# It can be buggy (especially on BSD-based systems),
# so prefer icu if available.
-try:
+try: # noqa: C901
import icu
from locale import getlocale
diff --git a/natsort/compat/pathlib.py b/natsort/compat/pathlib.py
index e95e847..a189f37 100644
--- a/natsort/compat/pathlib.py
+++ b/natsort/compat/pathlib.py
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
-from __future__ import print_function, division, unicode_literals, absolute_import
+from __future__ import absolute_import, division, print_function, unicode_literals
try:
from pathlib import PurePath # PurePath is the base object for Paths.
diff --git a/natsort/natsort.py b/natsort/natsort.py
index 3be3a37..27f532d 100644
--- a/natsort/natsort.py
+++ b/natsort/natsort.py
@@ -640,7 +640,7 @@ def order_by_index(seq, index, iter=False):
if float(sys.version[:3]) < 3:
# pylint: disable=unused-variable
# noinspection PyUnresolvedReferences,PyPep8Naming
- class natcmp(object):
+ class natcmp(object): # noqa: N801
"""
Compare two objects using a key and an algorithm.
diff --git a/natsort/ns_enum.py b/natsort/ns_enum.py
index fee7cc4..be61295 100644
--- a/natsort/ns_enum.py
+++ b/natsort/ns_enum.py
@@ -3,7 +3,7 @@
This module defines the "ns" enum for natsort is used to determine
what algorithm natsort uses.
"""
-from __future__ import print_function, division, unicode_literals, absolute_import
+from __future__ import absolute_import, division, print_function, unicode_literals
import collections
diff --git a/natsort/unicode_numbers.py b/natsort/unicode_numbers.py
index 8832a1c..28cbafc 100644
--- a/natsort/unicode_numbers.py
+++ b/natsort/unicode_numbers.py
@@ -2,7 +2,7 @@
"""
Pre-determine the collection of unicode decimals, digits, and numerals.
"""
-from __future__ import division, print_function, absolute_import, unicode_literals
+from __future__ import absolute_import, division, print_function, unicode_literals
import unicodedata
diff --git a/natsort/utils.py b/natsort/utils.py
index ec0c1b0..496904a 100644
--- a/natsort/utils.py
+++ b/natsort/utils.py
@@ -637,9 +637,12 @@ def final_data_transform_factory(alg, sep, pre_sep):
return lambda split_val, val: tuple(split_val)
+lower_function = methodcaller("casefold" if NEWPY else "lower")
+
+
# noinspection PyIncorrectDocstring
@u_format
-def groupletters(x, _low=methodcaller("casefold" if NEWPY else "lower")):
+def groupletters(x, _low=lower_function):
"""
Double all characters, making doubled letters lowercase.
diff --git a/setup.cfg b/setup.cfg
index fbcd8dd..13b832e 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -50,4 +50,21 @@ search = XX-XX-XXXX v. X.X.X
replace = {now:%%m-%%d-%%Y} v. {new_version}
[flake8]
-max-line-length = 90
+max-line-length = 89
+import-order-style = pycharm
+doctests = True
+max-complexity = 10
+exclude =
+ natsort.egg-info,
+ .tox,
+ .cache,
+ .git,
+ __pycache__,
+ build,
+ dist,
+ # This has mostly auto-generated code
+ docs,
+ # Let's not check library code
+ .venv,
+ # This file simply has too many intentional errors
+ natsort/compat/py23.py \ No newline at end of file
diff --git a/setup.py b/setup.py
index ad538ee..e93dd3a 100644
--- a/setup.py
+++ b/setup.py
@@ -1,6 +1,6 @@
#! /usr/bin/env python
-from setuptools import setup, find_packages
+from setuptools import find_packages, setup
setup(
name='natsort',
version='5.4.0',