diff options
author | Michele Lacchia <michelelacchia@gmail.com> | 2012-07-27 10:02:29 +0200 |
---|---|---|
committer | Michele Lacchia <michelelacchia@gmail.com> | 2012-07-27 10:02:29 +0200 |
commit | 36b6830e178f96589e6f8dd090c1f19b0e9f445c (patch) | |
tree | 4504a4087e9fb643f0d1f87efd729f7037496e9d | |
parent | dbcf0475d653f52b8d8aaeb843ff1bed549e3a55 (diff) | |
download | wheel-pep8-fixes.tar.gz |
More fixes + pylint rc filepep8-fixes
-rw-r--r-- | pylintrc | 249 | ||||
-rw-r--r-- | wheel/archive.py | 3 | ||||
-rwxr-xr-x | wheel/bdist_wininst2wheel.py | 3 | ||||
-rw-r--r-- | wheel/decorator.py | 11 | ||||
-rw-r--r-- | wheel/install.py | 5 | ||||
-rw-r--r-- | wheel/util.py | 15 |
6 files changed, 273 insertions, 13 deletions
diff --git a/pylintrc b/pylintrc new file mode 100644 index 0000000..ebd9658 --- /dev/null +++ b/pylintrc @@ -0,0 +1,249 @@ +[MASTER] + +# Specify a configuration file. +#rcfile= + +# Python code to execute, usually for sys.path manipulation such as +# pygtk.require(). +#init-hook= + +# Profiled execution. +profile=no + +# Add files or directories to the blacklist. They should be base names, not +# paths. +ignore=CVS + +# Pickle collected data for later comparisons. +persistent=yes + +# List of plugins (as comma separated values of python modules names) to load, +# usually to register additional checkers. +load-plugins= + + +[MESSAGES CONTROL] + +# Enable the message, report, category or checker with the given id(s). You can +# either give multiple identifier separated by comma (,) or put this option +# multiple time. +#enable= + +# Disable the message, report, category or checker with the given id(s). You +# can either give multiple identifier separated by comma (,) or put this option +# multiple time (only on the command line, not in the configuration file where +# it should appear only once). +disable=F0401,E0611,E1101,C0103 + + +[REPORTS] + +# Set the output format. Available formats are text, parseable, colorized, msvs +# (visual studio) and html +output-format=colorized + +# Include message's id in output +include-ids=yes + +# Put messages in a separate file for each module / package specified on the +# command line instead of printing them on stdout. Reports (if any) will be +# written in a file name "pylint_global.[txt|html]". +files-output=no + +# Tells whether to display a full report or only the messages +reports=yes + +# Python expression which should return a note less than 10 (10 is the highest +# note). You have access to the variables errors warning, statement which +# respectively contain the number of errors / warnings messages and the total +# number of statements analyzed. This is used by the global evaluation report +# (RP0004). +evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) + +# Add a comment according to your evaluation note. This is used by the global +# evaluation report (RP0004). +comment=yes + + +[BASIC] + +# Required attributes for module, separated by a comma +required-attributes= + +# List of builtins function names that should not be used, separated by a comma +bad-functions=map,filter,apply,input + +# Regular expression which should only match correct module names +module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ + +# Regular expression which should only match correct module level names +const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$ + +# Regular expression which should only match correct class names +class-rgx=[A-Z_][a-zA-Z0-9]+$ + +# Regular expression which should only match correct function names +function-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct method names +method-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct instance attribute names +attr-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct argument names +argument-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct variable names +variable-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match correct list comprehension / +# generator expression variable names +inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$ + +# Good variable names which should always be accepted, separated by a comma +good-names=i,j,k,ex,Run,_ + +# Bad variable names which should always be refused, separated by a comma +bad-names=foo,bar,baz,toto,tutu,tata + +# Regular expression which should only match functions or classes name which do +# not require a docstring +no-docstring-rgx=__.*__ + + +[TYPECHECK] + +# Tells whether missing members accessed in mixin class should be ignored. A +# mixin class is detected if its name ends with "mixin" (case insensitive). +ignore-mixin-members=yes + +# List of classes names for which member attributes should not be checked +# (useful for classes with attributes dynamically set). +ignored-classes=SQLObject + +# When zope mode is activated, add a predefined set of Zope acquired attributes +# to generated-members. +zope=no + +# List of members which are set dynamically and missed by pylint inference +# system, and so shouldn't trigger E0201 when accessed. Python regular +# expressions are accepted. +generated-members=REQUEST,acl_users,aq_parent + + +[FORMAT] + +# Maximum number of characters on a single line. +max-line-length=80 + +# Maximum number of lines in a module +max-module-lines=1000 + +# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 +# tab). +indent-string=' ' + + +[SIMILARITIES] + +# Minimum lines number of a similarity. +min-similarity-lines=2 + +# Ignore comments when computing similarities. +ignore-comments=yes + +# Ignore docstrings when computing similarities. +ignore-docstrings=yes + + +[MISCELLANEOUS] + +# List of note tags to take in consideration, separated by a comma. +notes=FIXME,XXX,TODO + + +[VARIABLES] + +# Tells whether we should check for unused import in __init__ files. +init-import=no + +# A regular expression matching the beginning of the name of dummy variables +# (i.e. not used). +dummy-variables-rgx=_|dummy + +# List of additional names supposed to be defined in builtins. Remember that +# you should avoid to define new builtins when possible. +additional-builtins= + + +[CLASSES] + +# List of interface methods to ignore, separated by a comma. This is used for +# instance to not check methods defines in Zope's Interface base class. +ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by + +# List of method names used to declare (i.e. assign) instance attributes. +defining-attr-methods=__init__,__new__,setUp + +# List of valid names for the first argument in a class method. +valid-classmethod-first-arg=cls + + +[DESIGN] + +# Maximum number of arguments for function / method +max-args=5 + +# Argument names that match this expression will be ignored. Default to name +# with leading underscore +ignored-argument-names=_.* + +# Maximum number of locals for function / method body +max-locals=15 + +# Maximum number of return / yield for function / method body +max-returns=6 + +# Maximum number of branch for function / method body +max-branchs=12 + +# Maximum number of statements in function / method body +max-statements=50 + +# Maximum number of parents for a class (see R0901). +max-parents=7 + +# Maximum number of attributes for a class (see R0902). +max-attributes=7 + +# Minimum number of public methods for a class (see R0903). +min-public-methods=2 + +# Maximum number of public methods for a class (see R0904). +max-public-methods=20 + + +[IMPORTS] + +# Deprecated modules which should not be used, separated by a comma +deprecated-modules=regsub,string,TERMIOS,Bastion,rexec + +# Create a graph of every (i.e. internal and external) dependencies in the +# given file (report RP0402 must not be disabled) +import-graph= + +# Create a graph of external dependencies in the given file (report RP0402 must +# not be disabled) +ext-import-graph= + +# Create a graph of internal dependencies in the given file (report RP0402 must +# not be disabled) +int-import-graph= + + +[EXCEPTIONS] + +# Exceptions that will emit a warning when being caught. Defaults to +# "Exception" +overgeneral-exceptions=Exception diff --git a/wheel/archive.py b/wheel/archive.py index 042faa1..225d295 100644 --- a/wheel/archive.py +++ b/wheel/archive.py @@ -10,6 +10,9 @@ log = logging.getLogger("wheel") def archive_wheelfile(base_name, base_dir): + '''Archive all files under `base_dir` in a whl file and name it like + `base_name`. + ''' olddir = os.path.abspath(os.curdir) base_name = os.path.abspath(base_name) try: diff --git a/wheel/bdist_wininst2wheel.py b/wheel/bdist_wininst2wheel.py index e5756a3..51957d8 100755 --- a/wheel/bdist_wininst2wheel.py +++ b/wheel/bdist_wininst2wheel.py @@ -77,7 +77,8 @@ def bdist_wininst2wheel(path): bw = wheel.bdist_wheel.bdist_wheel(distutils.dist.Distribution()) bw.root_is_purelib = root_is_purelib dist_info_dir = os.path.join(dir, '%s.dist-info' % dist_info) - bw.egg2dist(os.path.join(dir, "%(name)s-%(ver)s-%(pyver)s.egg-info" % info), + bw.egg2dist(os.path.join(dir, + "%(name)s-%(ver)s-%(pyver)s.egg-info" % info), dist_info_dir) bw.write_wheelfile(dist_info_dir, packager='egg2wheel') bw.write_record(dir, dist_info_dir) diff --git a/wheel/decorator.py b/wheel/decorator.py index db9fa76..e4b56d1 100644 --- a/wheel/decorator.py +++ b/wheel/decorator.py @@ -2,17 +2,14 @@ class reify(object): - - """ Put the result of a method which uses this (non-data) + """Put the result of a method which uses this (non-data) descriptor decorator in the instance dict after the first call, - effectively replacing the decorator with an instance variable.""" + effectively replacing the decorator with an instance variable. + """ def __init__(self, wrapped): self.wrapped = wrapped - try: - self.__doc__ = wrapped.__doc__ - except: # pragma: no cover - pass + self.__doc__ = wrapped.__doc__ def __get__(self, inst, objtype=None): if inst is None: diff --git a/wheel/install.py b/wheel/install.py index 750d8dc..1c724c7 100644 --- a/wheel/install.py +++ b/wheel/install.py @@ -6,7 +6,6 @@ import sys import os.path import re import zipfile -import json import hmac import hashlib from email.parser import Parser @@ -102,8 +101,8 @@ class WheelFile(object): def check_version(self): version = self.parsed_wheel_info['Wheel-Version'] - assert tuple(map(int, version.split('.')) - ) < VERSION_TOO_HIGH, "Wheel version is too high" + if tuple(map(int, version.split('.'))) >= VERSION_TOO_HIGH: + raise ValueError("Wheel version is too high") def sign(self, key, alg="HS256"): """Sign the wheel file's RECORD using `key` and algorithm `alg`. Alg diff --git a/wheel/util.py b/wheel/util.py index 5e699b8..ac47347 100644 --- a/wheel/util.py +++ b/wheel/util.py @@ -1,6 +1,5 @@ """Utility functions.""" -import re import sys import base64 import json @@ -23,10 +22,12 @@ def urlsafe_b64decode(data): def to_json(o): + '''Convert given data to JSON.''' return json.dumps(o, sort_keys=True) def from_json(j): + '''Decode a JSON payload.''' return json.loads(j) @@ -34,18 +35,20 @@ try: unicode def utf8(data): + '''Utf-8 encode data.''' if isinstance(data, unicode): return data.encode('utf-8') return data except NameError: def utf8(data): + '''Utf-8 encode data.''' if isinstance(data, str): return data.encode('utf-8') return data def get_abbr_impl(): - """Return abbreviated implementation name""" + """Return abbreviated implementation name.""" if hasattr(sys, 'pypy_version_info'): pyimpl = 'pp' elif sys.platform.startswith('java'): @@ -58,6 +61,7 @@ def get_abbr_impl(): def get_impl_ver(): + '''Return implementation version.''' impl_ver = sysconfig.get_config_var("py_version_nodot") if not impl_ver: impl_ver = ''.join(map(str, sys.version_info[:2])) @@ -65,6 +69,13 @@ def get_impl_ver(): def generate_supported(versions=None): + '''Generate supported tags for each version specified in `versions`. + + Versions must be given with respect to preference from best to worst. + If `versions` is None, then the current version is assumed. + Returned tags are sorted from best-matching tags to worst. All tags + returned should be compatible with the machine. + ''' # XXX: Only a draft supported = [] current_ver = get_impl_ver() |