diff options
author | Claudiu Popa <cpopa@cloudbasesolutions.com> | 2015-02-17 01:09:04 +0200 |
---|---|---|
committer | Claudiu Popa <cpopa@cloudbasesolutions.com> | 2015-02-17 01:09:04 +0200 |
commit | d00adfbdc7b77280f6a7c97e39cb882b853da1d8 (patch) | |
tree | 26722500b372c31cda2f8e49701fe5735171684b /ChangeLog | |
parent | fe36ec0486cfc9aba10d8d87b0f42077ad1e78db (diff) | |
parent | 1dc09ef472a1bc0ca312c7cd8a1a3c700b510b47 (diff) | |
download | pylint-d00adfbdc7b77280f6a7c97e39cb882b853da1d8.tar.gz |
The HTML output accepts the `--msg-template` option.
Patch by Daniel Goldsmith. Closes issue #135.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 406 |
1 files changed, 403 insertions, 3 deletions
@@ -2,6 +2,401 @@ ChangeLog for Pylint ==================== -- + * Don't require a docstring for empty modules. Closes issue #261. + + * Fix a false positive with `too-few-format-args` string warning, + emitted when the string format contained a normal positional + argument ('{0}'), mixed with a positional argument which did + an attribute access ('{0.__class__}'). + Closes issue #463. + + * Take in account all the methods from the ancestors + when checking for too-few-public-methods. Closes issue #471. + + * Catch enchant errors and emit 'invalid-characters-in-docstring' + when checking for spelling errors. Closes issue #469. + + * Use all the inferred statements for the super-init-not-called + check. Closes issue #389. + + * Add a new warning, 'unichr-builtin', emitted by the Python 3 + porting checker, when the unichr builtin is found. Closes issue #472. + + * Add a new warning, 'intern-builtin', emitted by the Python 3 + porting checker, when the intern builtin is found. Closes issue #473. + + * Add support for editable installations. + + * The HTML output accepts the `--msg-template` option. Patch by + Dan Goldsmith. + + +2015-01-16 -- 1.4.1 + + * Look only in the current function's scope for bad-super-call. + Closes issue #403. + + * Check the return of properties when checking for not-callable. + Closes issue #406. + + * Warn about using the input() or round() built-ins for Python 3. + Closes issue #411. + + * Proper abstract method lookup while checking for + abstract-class-instantiated. Closes issue #401. + + * Use a mro traversal for finding abstract methods. Closes issue #415. + + * Fix a false positive with catching-non-exception and tuples of + exceptions. + + * Fix a false negative with raising-non-exception, when the raise used + an uninferrable exception context. + + * Fix a false positive on Python 2 for raising-bad-type, when + raising tuples in the form 'raise (ZeroDivisionError, None)'. + + * Fix a false positive with invalid-slots-objects, where the slot entry + was an unicode string on Python 2. Closes issue #421. + + * Add a new warning, 'redundant-unittest-assert', emitted when using + unittest's methods assertTrue and assertFalse with constant value + as argument. Patch by Vlad Temian. + + * Add a new JSON reporter, usable through -f flag. + + * Add the method names for the 'signature-differs' and 'argument-differs' + warnings. Closes issue #433. + + * Don't compile test files when installing. + + * Fix a crash which occurred when using multiple jobs and the files + given as argument didn't exist at all. + + +2014-11-23 -- 1.4.0 + + * Added new options for controlling the loading of C extensions. + By default, only C extensions from the stdlib will be loaded + into the active Python interpreter for inspection, because they + can run arbitrary code on import. The option + `--extension-pkg-whitelist` can be used to specify modules + or packages that are safe to load. + + * Change default max-line-length to 100 rather than 80 + + * Drop BaseRawChecker class which were only there for backward + compat for a while now + + * Don't try to analyze string formatting with objects coming from + function arguments. Closes issue #373. + + * Port source code to be Python 2/3 compatible. This drops the + need for 2to3, but does drop support for Python 2.5. + + * Each message now comes with a confidence level attached, and + can be filtered base on this level. This allows to filter out + all messages that were emitted even though an inference failure + happened during checking. + + * Improved presenting unused-import message. Closes issue #293. + + * Add new checker for finding spelling errors. New messages: + wrong-spelling-in-comment, wrong-spelling-in-docstring. + New options: spelling-dict, spelling-ignore-words. + + * Add new '-j' option for running checks in sub-processes. + + * Added new checks for line endings if they are mixed (LF vs CRLF) + or if they are not as expected. New messages: mixed-line-endings, + unexpected-line-ending-format. New option: expected-line-ending-format. + + * 'dangerous-default-value' no longer evaluates the value of the arguments, + which could result in long error messages or sensitive data being leaked. + Closes issue #282 + + * Fix a false positive with string formatting checker, when + encountering a string which uses only position-based arguments. + Closes issue #285. + + * Fix a false positive with string formatting checker, when using + keyword argument packing. Closes issue #288. + + * Proper handle class level scope for lambdas. + + * Handle 'too-few-format-args' or 'too-many-format-args' for format + strings with both named and positional fields. Closes issue #286. + + * Analyze only strings by the string format checker. Closes issue #287. + + * Properly handle nested format string fields. Closes issue #294. + + * Don't emit 'attribute-defined-outside-init' if the attribute + was set by a function call in a defining method. Closes issue #192. + + * Properly handle unicode format strings for Python 2. + Closes issue #296. + + * Don't emit 'import-error' if an import was protected by a try-except, + which excepted ImportError. + + * Fix an 'unused-import' false positive, when the error was emitted + for all the members imported with 'from import' form. + Closes issue #304. + + * Don't emit 'invalid-name' when assigning a name in an + ImportError handler. Closes issue #302. + + * Don't count branches from nested functions. + + * Fix a false positive with 'too-few-format-args', when the format + strings contains duplicate manual position arguments. + Closes issue #310. + + * fixme regex handles comments without spaces after the hash. + Closes issue #311. + + * Don't emit 'unused-import' when a special object is imported + (__all__, __doc__ etc.). Closes issue #309. + + * Look in the metaclass, if defined, for members not found in the current + class. Closes issue #306. + + * Don't emit 'protected-access' if the attribute is accessed using + a property defined at the class level. + + * Detect calls of the parent's __init__, through a binded super() call. + + * Check that a class has an explicitly defined metaclass before + emitting 'old-style-class' for Python 2. + + * Emit 'catching-non-exception' for non-class nodes. Closes issue #303. + + * Order of reporting is consistent. + + * Add a new warning, 'boolean-datetime', emitted when an instance + of 'datetime.time' is used in a boolean context. Closes issue #239. + + * Fix a crash which ocurred while checking for 'method-hidden', + when the parent frame was something different than a function. + + * Generate html output for missing files. Closes issue #320. + + * Fix a false positive with 'too-many-format-args', when the format + string contains mixed attribute access arguments and manual + fields. Closes issue #322. + + * Extend the cases where 'undefined-variable' and 'used-before-assignment' + can be detected. Closes issue #291. + + * Add support for customising callback identifiers, by adding a new + '--callbacks' command line option. Closes issue #326. + + * Add a new warning, 'logging-format-interpolation', emitted when .format() + string interpolation is used within logging function calls. + + * Don't emit 'unbalanced-tuple-unpacking' when the rhs of the assignment + is a variable length argument. Closes issue #329. + + * Add a new warning, 'inherit-non-class', emitted when a class inherits + from something which is not a class. Closes issue #331. + + * Fix another false positives with 'undefined-variable', where the variable + can be found as a class assignment and used in a function annotation. + Closes issue #342. + + * Handle assignment of the string format method to a variable. + Closes issue #351. + + * Support wheel packaging format for PyPi. Closes issue #334. + + * Check that various built-ins that do not exist in Python 3 are not + used: apply, basestring, buffer, cmp, coerce, execfile, file, long + raw_input, reduce, StandardError, unicode, reload and xrange. + + * Warn for magic methods which are not used in any way in Python 3: + __coerce__, __delslice__, __getslice__, __setslice__, __cmp__, + __oct__, __nonzero__ and __hex__. + + * Don't emit 'assigning-non-slot' when the assignment is for a property. + Closes issue #359. + + * Fix for regression: '{path}' was no longer accepted in '--msg-template'. + + * Report the percentage of all messages, not just for errors and warnings. + Closes issue #319. + + * 'too-many-public-methods' is reported only for methods defined in a class, + not in its ancestors. Closes issue #248. + + * 'too-many-lines' disable pragma can be located on any line, not only the + first. Closes issue #321. + + * Warn in Python 2 when an import statement is found without a + corresponding `from __future__ import absolute_import`. + + * Warn in Python 2 when a non-floor division operation is found without + a corresponding `from __future__ import division`. + + * Add a new option, 'exclude-protected', for excluding members + from the protected-access warning. Closes issue #48. + + * Warn in Python 2 when using dict.iter*(), dict.view*(); none of these + methods are available in Python 3. + + * Warn in Python 2 when calling an object's next() method; Python 3 uses + __next__() instead. + + * Warn when assigning to __metaclass__ at a class scope; in Python 3 a + metaclass is specified as an argument to the 'class' statement. + + * Warn when performing parameter tuple unpacking; it is not supported in + Python 3. + + * 'abstract-class-instantiated' is also emitted for Python 2. + It was previously disabled. + + * Add 'long-suffix' error, emitted when encountering the long suffix + on numbers. + + * Add support for disabling a checker, by specifying an 'enabled' + attribute on the checker class. + + * Add a new CLI option, --py3k, for enabling Python 3 porting mode. This + mode will disable all other checkers and will emit warnings and + errors for constructs which are invalid or removed in Python 3. + + * Add 'old-octal-literal' to Python 3 porting checker, emitted when + encountering octals with the old syntax. + + * Add 'implicit-map-evaluation' to Python 3 porting checker, emitted + when encountering the use of map builtin, without explicit evaluation. + + + +2014-07-26 -- 1.3.0 + + * Allow hanging continued indentation for implicitly concatenated + strings. Closes issue #232. + + * Pylint works under Python 2.5 again, and its test suite passes. + + * Fix some false positives for the cellvar-from-loop warnings. + Closes issue #233. + + * Return new astroid class nodes when the inferencer can detect that + that result of a function invocation on a type (like `type` or + `abc.ABCMeta`) is requested. Closes #205. + + * Emit 'undefined-variable' for undefined names when using the + Python 3 `metaclass=` argument. + + * Checkers respect priority now. Close issue #229. + + * Fix a false positive regarding W0511. Closes issue #149. + + * Fix unused-import false positive with Python 3 metaclasses (#143). + + * Don't warn with 'bad-format-character' when encountering + the 'a' format on Python 3. + + * Add multiple checks for PEP 3101 advanced string formatting: + 'bad-format-string', 'missing-format-argument-key', + 'unused-format-string-argument', 'format-combined-specification', + 'missing-format-attribute' and 'invalid-format-index'. + + * Issue broad-except and bare-except even if the number + of except handlers is different than 1. Fixes issue #113. + + * Issue attribute-defined-outside-init for all cases, not just + for the last assignment. Closes issue #262. + + * Emit 'not-callable' when calling properties. Closes issue #268. + + * Fix a false positive with unbalanced iterable unpacking, + when encountering starred nodes. Closes issue #273. + + * Add new checks, 'invalid-slice-index' and 'invalid-sequence-index' + for invalid sequence and slice indices. + + * Add 'assigning-non-slot' warning, which detects assignments to + attributes not defined in slots. + + * Don't emit 'no-name-in-module' for ignored modules. + Closes issue #223. + + * Fix an 'unused-variable' false positive, where the variable is + assigned through an import. Closes issue #196. + + * Definition order is considered for classes, function arguments + and annotations. Closes issue #257. + + * Don't emit 'unused-variable' when assigning to a nonlocal. + Closes issue #275. + + * Do not let ImportError propagate from the import checker, leading to crash + in some namespace package related cases. Closes issue #203. + + * Don't emit 'pointless-string-statement' for attribute docstrings. + Closes issue #193. + + * Use the proper mode for pickle when opening and writing the stats file. + Closes issue #148. + + * Don't emit hidden-method message when the attribute has been + monkey-patched, you're on your own when you do that. + + * Only emit attribute-defined-outside-init for definition within the same + module as the offended class, avoiding to mangle the output in some cases. + + * Don't emit 'unnecessary-lambda' if the body of the lambda call contains + call chaining. Closes issue #243. + + * Don't emit 'missing-docstring' when the actual docstring uses `.format`. + Closes issue #281. + + +2014-04-30 -- 1.2.1 + * Restore the ability to specify the init-hook option via the + configuration file, which was accidentally broken in 1.2.0. + + * Add a new warning [bad-continuation] for badly indentend continued + lines. + + * Emit [assignment-from-none] when the function contains bare returns. + Fixes BitBucket issue #191. + + * Added a new warning for closing over variables that are + defined in loops. Fixes Bitbucket issue #176. + + * Do not warn about \u escapes in string literals when Unicode literals + are used for Python 2.*. Fixes BitBucket issue #151. + + * Extend the checking for unbalanced-tuple-unpacking and + unpacking-non-sequence to instance attribute unpacking as well. + + * Fix explicit checking of python script (1.2 regression, #219) + + * Restore --init-hook, renamed accidentally into --init-hooks in 1.2.0 + (#211) + + * Add 'indexing-exception' warning, which detects that indexing + an exception occurs in Python 2 (behaviour removed in Python 3). + + + +2014-04-18 -- 1.2.0 + * Pass the current python paths to pylint process when invoked via + epylint. Fixes BitBucket issue #133. + + * Add -i / --include-ids and -s / --symbols back as completely ignored + options. Fixes BitBucket issue #180. + + * Extend the number of cases in which logging calls are detected. Fixes + bitbucket issue #182. + + * Improve pragma handling to not detect pylint:* strings in non-comments. + Fixes BitBucket issue #79. * Do not crash with UnknownMessage if an unknown message ID/name appears in disable or enable in the configuration. Patch by Cole Robinson. @@ -75,6 +470,13 @@ ChangeLog for Pylint * Don't register the newstyle checker w/ python >= 3 + * Fix unused-import false positive w/ augment assignment (#78) + + * Fix access-member-before-definition false negative wrt aug assign (#164) + + * Do not attempt to analyze non python file, eg .so file (#122) + + 2013-12-22 -- 1.1.0 * Add new check for use of deprecated pragma directives "pylint:disable-msg" @@ -135,6 +537,7 @@ ChangeLog for Pylint * Fix issue #55 (false-positive trailing-whitespace on Windows) + 2013-08-06 -- 1.0.0 * Add check for the use of 'exec' function @@ -1381,6 +1784,3 @@ ChangeLog for Pylint 2003-05-19 -- 0.1 * initial release - - - |