ChangeLog
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Tue, 11 Jan 2011 15:41:15 +0100
changeset 743 2599058e6521
parent 741 e4e7f8f891b8
child 744 26cf3ea25d68
permissions -rw-r--r--
republish 0.23 which has never been published actually
     1 ChangeLog for PyLint
     2 ====================
     3 
     4 2011-01-11  --  0.23.0
     5     * documentation update, add manpages
     6 
     7     * several performance improvements
     8 
     9     * finalize python3 support
    10 
    11     * new W0106 warning 'Expression "%s" is assigned to nothing'
    12 
    13     * drop E0501 and E0502 messages about wrong source encoding: not anymore
    14      interesting since it's a syntax error for python >= 2.5 and we now only
    15      support this python version and above.
    16 
    17     * don't emit W0221 or W0222 when methods as variable arguments (eg *arg
    18      and/or **args). Patch submitted by Charles Duffy.
    19 
    20 
    21 
    22 2010-11-15  --  0.22.0
    23     * python versions: minimal python3.x support; drop python < 2.5 support
    24 
    25 
    26 
    27 2010-10-27  --  0.21.4
    28     * fix #48066: pylint crashes when redirecting output containing non-ascii characters
    29 
    30     * fix #19799: "pylint -blah" exit with status 2
    31 
    32     * update documentation
    33 
    34 
    35 
    36 2010-09-28  --  0.21.3
    37     * restored python 2.3 compatibility. Along with logilab-astng
    38       0.21.3 and logilab-common 0.52, this will much probably be the
    39       latest release supporting python < 2.5.
    40 
    41 
    42 
    43 2010-08-26  --  0.21.2
    44     * fix #36193: import checker raise exception on cyclic import
    45 
    46     * fix #28796: regression in --generated-members introduced pylint 0.20
    47 
    48     * some documentation cleanups
    49 
    50 
    51 
    52 2010-06-04  --  0.21.1
    53     * fix #28962: pylint crash with new options, due to missing stats data while
    54       writing the Statistics by types report
    55 
    56     * updated man page to 0.21 or greater command line usage (fix debian #582494)
    57 
    58 
    59 
    60 2010-05-11  --  0.21.0
    61     * command line updated (closes #9774, #9787, #9992, #22962):
    62 
    63     * all enable-* / disable-* options have been merged into --enable / --disable
    64 
    65     * BACKWARD INCOMPATIBLE CHANGE: short name of --errors-only becomes -E, -e being
    66        affected to --enable
    67 
    68     * pylint --help output much simplified, with --long-help available to get the
    69        complete one
    70 
    71     * revisited gui, thanks to students from Toronto university (they are great
    72      contributors to this release!)
    73 
    74     * fix #21591: html reporter produces no output if reports is set to 'no'
    75 
    76     * fix #4581: not Missing docstring (C0111) warning if a method is overridden
    77 
    78     * fix #4683: Non-ASCII characters count double if utf8 encode
    79 
    80     * fix #9018: when using defining-attr-method, method order matters
    81 
    82     * fix #4595: Comma not followed by a space should not occurs on trailing comma
    83      in list/tuple/dict definition
    84 
    85     * fix #22585: [Patch] fix man warnings for pyreverse.1 manpage
    86 
    87     * fix #20067: AttributeError: 'NoneType' object has no attribute 'name' with with
    88 
    89 
    90 
    91 2010-03-01  --  0.20.0
    92     * fix #19498: fix windows batch file
    93 
    94     * fix #19339: pylint.el : non existing py-mod-map
    95       (closes Debian Bug report logs - #475939)
    96 
    97     * implement #18860, new W0199 message on assert (a, b)
    98 
    99     * implement #9776, 'W0150' break or return statement in finally block may
   100       swallow exception.
   101 
   102     * fix #9263, __init__ and __new__ are checked for unused arguments
   103 
   104     * fix #20991, class scope definitions ignored in a genexpr
   105 
   106     * fix #5975, Abstract intermediate class not recognized as such
   107 
   108     * fix #5977, yield and return statement have their own counters, no more R0911
   109       (Too many return statements) when a function have many yield stamtements
   110 
   111     * implement #5564, function / method arguments with leading "_" are ignored in
   112       arguments / local variables count.
   113 
   114     * implement #9982, E0711 specific error message when raising NotImplemented
   115 
   116     * remove --cache-size option
   117 
   118 
   119 
   120 2009-12-18  --  0.19.0
   121     * implement #18947, #5561: checker for function arguments
   122 
   123     * include James Lingard string format checker
   124 
   125     * include simple message (ids) listing by Vincent Férotin (#9791)
   126 
   127     * --errors-only does not hide fatal error anymore
   128 
   129     * include james Lingard patches for ++/-- and duplicate key in dicts
   130 
   131     * include James Lingard patches for function call arguments checker
   132 
   133     * improved flymake code and doc provided by Derek Harland
   134 
   135     * refactor and fix the imports checker
   136 
   137     * fix #18862: E0601 false positive with lambda functions
   138 
   139     * fix #8764: More than one statement on a single line false positive with
   140       try/except/finally
   141 
   142     * fix #9215: false undefined variable error in lambda function
   143 
   144     * fix for w0108 false positive (Nathaniel)
   145 
   146     * fix test/fulltest.sh
   147 
   148     * #5821 added a utility function to run pylint in another process (patch provide by Vincent Férotin)
   149 
   150 
   151 
   152 2009-03-25  --  0.18.0
   153     * tests ok with python 2.4, 2.5, 2.6. 2.3 not tested
   154 
   155     * fix #8687, W0613 false positive on inner function
   156 
   157     * fix #8350, C0322 false positive on multi-line string
   158 
   159     * fix #8332: set E0501 line no to the first line where non ascii character
   160       has been found
   161 
   162     * avoid some E0203 / E0602 false negatives by detecting respectively
   163       AttributeError / NameError
   164 
   165     * implements #4037: don't issue W0142 (* or ** magic) when they are barely
   166       passed from */** arguments
   167 
   168     * complete #5573: more complete list of special methods, also skip W0613
   169       for python internal method
   170 
   171     * don't show information messages by default
   172 
   173     * integration of Yuen Ho Wong's patches on emacs lisp files
   174 
   175 
   176 
   177 2009-03-19  --  0.17.0
   178     * semicolon check : move W0601 to W0301
   179 
   180     * remove rpython : remove all rpython checker, modules and tests
   181 
   182     * astng 0.18 compatibility: support for _ast module modifies interfaces
   183 
   184 
   185 
   186 2009-01-28  --  0.16.0
   187     * change [en|dis]able-msg-cat options: only accept message categories
   188       identified by their first letter (eg IRCWEF) without the need for comma
   189       as separator
   190 
   191     * add epylint.bat script to fix Windows installation
   192 
   193     * setuptools/easy_install support
   194 
   195     * include a modified version of Maarten ter Huurne patch to avoid W0613
   196       warning on arguments from overridden method
   197 
   198     * implement #5575  drop dumb W0704 message) by adding W0704 to ignored
   199       messages by default
   200 
   201     * new W0108 message, checking for suspicious lambda (provided by  Nathaniel
   202       Manista)
   203 
   204     * fix W0631, false positive reported by Paul Hachmann
   205 
   206     * fix #6951: false positive with W0104
   207 
   208     * fix #6949
   209 
   210     * patches by Mads Kiilerich:
   211 
   212     * implement #4691, make pylint exits with a non zero return
   213 	  status if any messages other then Information are issued
   214 
   215     * fix #3711, #5626 (name resolution bug w/ decorator and class members)
   216 
   217     * fix #6954
   218 
   219 
   220 
   221 2008-10-13  --  0.15.2
   222     * fix #5672: W0706 weirdness ( W0706 removed )
   223 
   224     * fix #5998: documentation points to wrong url for mailing list
   225 
   226     * fix #6022: no error message on wrong module names
   227 
   228     * fix #6040: pytest doesn't run test/func_test.py
   229 
   230 
   231 
   232 2008-09-15  --  0.15.1
   233     * fix #4910: default values are missing in manpage
   234 
   235     * fix #5991: missing files in 0.15.0 tarball
   236 
   237     * fix #5993: epylint should work with python 2.3
   238 
   239 
   240 
   241 2008-09-10  --  0.15.0
   242     * include pyreverse package and class diagram generation
   243 
   244     * included Stefan Rank's patch to deal with 2.4 relative import
   245 
   246     * included Robert Kirkpatrick's tutorial and typos fixes
   247 
   248     * fix bug in reenabling message
   249 
   250     * fix #2473: invoking pylint on __init__.py (hopefully)
   251 
   252     * typecheck: acquired-members option has been dropped in favor of the more
   253       generic generated-members option. If the zope option is set, the behaviour
   254       is now to add some default values to generated-members.
   255 
   256     * flymake integration: added bin/epylint and elisp/pylint-flymake.el
   257 
   258 
   259 
   260 2008-01-14  --  0.14.0
   261     * fix #3733: Messages (dis)appear depending on order of file names
   262 
   263     * fix #4026: pylint.el should require compile
   264 
   265     * fix a bug in colorized reporter, spotted by Dave Borowitz
   266 
   267     * applied patch from Stefan Rank to avoid W0410 false positive when
   268       multiple "from __future__" import statements
   269 
   270     * implement #4012: flag back tick as deprecated (new W0333 message)
   271 
   272     * new ignored-class option on typecheck checker allowing to skip members
   273       checking based on class name (patch provided by Thomas W Barr)
   274 
   275 
   276 
   277 2007-06-07  --  0.13.2
   278     * fix disable-checker option so that it won't accidentally enable the
   279       rpython checker which is disabled by default
   280 
   281     * added note about the gedit plugin into documentation
   282 
   283 
   284 
   285 2007-03-02  --  0.13.1
   286     * fix some unexplained 0.13.0 packaging issue which led to a bunch of
   287       files missing from the distribution
   288 
   289 
   290 
   291 2007-02-28  --  0.13.0
   292     * new RPython (Restricted Python) checker for PyPy fellow or people
   293       wanting to get a compiled version of their python program using the
   294       translator of the PyPy project. For more information about PyPy or
   295       RPython, visit http://codespeak.net/pypy/
   296 
   297     * new E0104 and E0105 messages introduced to respectively warn about
   298       "return" and "yield" outside function or method
   299 
   300     * new E0106 message when "yield" and "return something" are mixed in a
   301       function or method
   302 
   303     * new W0107 message for unnecessary pass statement
   304 
   305     * new W0614 message to differentiate between unused `import X` and
   306       unused `from X import *` (#3209, patch submitted by Daniel Drake)
   307 
   308     * included Daniel Drake's patch to have a different message E1003 instead of
   309       E1001 when a missing member is found but an inference failure has been 
   310       detected
   311 
   312     * msvs reporter for Visual Studio line number reporting (#3285)
   313 
   314     * allow disable-all option inline (#3218, patch submitted by Daniel Drake)
   315 
   316     * --init-hook option to call arbitrary code necessary to set
   317       environment (eg sys.path) (#3156)
   318 
   319     * One more Daniel's patch fixing a command line option parsing
   320       problem, this'll definitely be the DDrake release :)
   321 
   322     * fix #3184: crashes on "return" outside function
   323 
   324     * fix #3205: W0704 false positive
   325 
   326     * fix #3123: W0212 false positive on static method
   327 
   328     * fix #2485: W0222 false positive
   329 
   330     * fix #3259: when a message is explicitly enabled, check the checker
   331       emitting it is enabled
   332 
   333 
   334 
   335 2006-11-23  --  0.12.2
   336     * fix #3143: W0233 bug w/ YES objects
   337 
   338     * fix #3119: Off-by-one error counting lines in a file
   339 
   340     * fix #3117: ease sys.stdout overriding for reporters
   341 
   342     * fix #2508: E0601 false positive with lambda
   343 
   344     * fix #3125: E1101 false positive and a message duplication. Only the last part
   345       is actually fixed since the initial false positive is due to dynamic setting of
   346       attributes on the decimal.Context class.
   347 
   348     * fix #3149: E0101 false positives and introduced E0100 for generator __init__
   349       methods
   350 
   351     * fixed some format checker false positives
   352 
   353 
   354 
   355 2006-09-25  --  0.12.1
   356     * fixed python >= 2.4 format false positive with multiple lines statement
   357 
   358     * fixed some 2.5 issues
   359 
   360     * fixed generator expression scope bug (depends on astng 0.16.1)
   361 
   362     * stop requiring __revision__
   363 
   364 
   365 
   366 2006-08-10  --  0.12.0
   367     * usability changes:
   368 
   369         - parseable, html and color options are now handled by a single
   370 	output-format option
   371         - enable-<checkerid> and disable-all options are now handled by
   372 	two (exclusive) enable-checker and disable-checker options 
   373 	taking a comma separated list of checker names as value
   374         - renamed debug-mode option to errors-only
   375 
   376     * started a reference user manual
   377 
   378     * new W0212 message for access to protected member from client code
   379       (close #14081)
   380 
   381     * new W0105 and W0106 messages extracted from W0104 (statement seems
   382       to have no effect) respectively when the statement is actually string
   383       (that's sometimes used instead of comments for documentation) or an
   384       empty  statement generated by a useless semicolon
   385 
   386     * reclassified W0302 to C0302
   387 
   388     * fix so that global messages are not anymore connected to the last
   389       analyzed module (close #10106)
   390 
   391     * fix some bugs related to local disabling of messages
   392 
   393     * fix cr/lf pb when generating the rc file on windows platforms
   394 
   395 
   396 
   397 2006-04-19  --  0.11.0
   398     * fix crash caused by the exceptions checker in some case
   399 
   400     * fix some E1101 false positive with abstract method or classes defining
   401       __getattr__
   402 
   403     * dirty fix to avoid "_socketobject" has not "connect" member. The actual
   404       problem is that astng isn't able to understand the code used to create 
   405       socket.socket object with exec
   406 
   407     * added an option in the similarity checker to ignore docstrings, enabled
   408       by default
   409 
   410     * included patch from Benjamin Niemann to allow block level
   411       enabling/disabling of messages
   412 
   413 
   414 
   415 2006-03-06  --  0.10.0
   416     * WARNING, this release include some configuration changes (see below),
   417       so you may have to check and update your own configuration file(s) if
   418       you use one
   419 
   420     * this release require the 0.15 version of astng or superior (it will save
   421       you a lot of pylint crashes...)
   422 
   423     * W0705 has been reclassified to E0701, and is now detecting more
   424       inheriting problem, and a false positive when empty except clause is
   425       following an Exception catch has been fixed (close #10422)
   426 
   427     * E0212 and E0214 (metaclass/class method should have mcs/cls as first
   428       argument have been reclassified to C0202 and C0203 since this not as
   429       well established as "self" for instance method (E0213)
   430 
   431     * W0224 has been reclassified into F0220 (failed to resolve interfaces
   432       implemented by a class)   
   433 
   434     * a new typecheck checker, introducing the following checks:
   435 
   436         - E1101, access to unexistent member (implements #10430), remove
   437           the need of E0201 and so some options has been moved from the
   438           classes checker to this one
   439         - E1102, calling a non callable object
   440         - E1111 and W1111 when an assignment is done on a function call but the
   441           inferred function returns None (implements #10431) 
   442 
   443     * change in the base checker:
   444 
   445         - checks module level and instance attribute names (new const-rgx
   446           and attr-rgx configuration option) (implements #10209  and
   447           #10440) 
   448         - list comprehension and generator expression variables have their
   449           own regular expression  (the inlinevar-rgx option) (implements
   450           #9146)
   451         - the C0101 check with its min-name-length option has
   452           been removed (this can be specified in the regxp after all...)
   453         - W0103 and W0121 are now handled by the variables checker
   454           (W0103 is now W0603 and W0604 has been splitted into different messages)
   455         - W0131 and W0132 messages  have been reclassified to C0111 and
   456           C0112 respectively 
   457         - new W0104 message on statement without effect
   458 
   459     * regexp support for dummy-variables (dummy-variables-rgx option
   460       replace dummy-variables) (implements #10027)
   461 
   462     * better global statement handling, see W0602, W0603, W0604 messages
   463       (implements #10344 and #10236)
   464 
   465     * --debug-mode option, disabling all checkers without error message
   466       and filtering others to only display error
   467 
   468     * fixed some R0201 (method could be a function) false positive
   469 
   470 
   471 
   472 2006-01-10  --  0.9.0
   473     * a lot of updates to follow astng 0.14 API changes, so install
   474       logilab-astng  0.14 or greater before using this version of pylint
   475 
   476     * checker number 10 ! newstyle will search for problems regarding old
   477       style / new style classes usage problems (rely on astng 0.14 new
   478       style detection feature)
   479 
   480     * new 'load-plugins' options to load additional pylint plugins (usable
   481       from the command line or from a configuration file) (implements
   482       #10031)
   483 
   484     * check if a "pylintrc" file exists in the current working directory
   485       before using the one specified in the PYLINTRC environment variable
   486       or the default ~/.pylintrc or /etc/pylintrc
   487 
   488     * fixed W0706 (Identifier used to raise an exception is assigned...)
   489       false positive and reraising a catched exception instance
   490 
   491     * fixed E0611 (No name get in module blabla) false positive when accessing
   492       to a class'__dict__
   493 
   494     * fixed some E0203 ("access to member before its definition") false
   495       positive
   496 
   497     * fixed E0214 ("metaclass method first argument should be mcs) false
   498       positive with staticmethod used on a metaclass 
   499 
   500     * fixed packaging which was missing the test/regrtest_data directory
   501 
   502     * W0212 (method could be a function) has been reclassified in the
   503       REFACTOR category as R0201, and is no more considerer when a method
   504       overrides an abstract method from an ancestor class
   505 
   506     * include module name in W0401 (wildcard import), as suggested by
   507       Amaury
   508 
   509     * when using the '--parseable', path are written relative to the
   510       current working directory if in a sub-directory of it (#9789)
   511 
   512     * 'pylint --version' shows logilab-astng and logilab-common versions
   513 
   514     * fixed pylint.el to handle space in file names
   515 
   516     * misc lint style fixes
   517 
   518 
   519 
   520 2005-11-07  --  0.8.1
   521     * fix "deprecated module" false positive when the code imports a
   522       module whose name starts with a deprecated module's name (close
   523       #10061)
   524 
   525     * fix "module has no name __dict__" false positive (close #10039)
   526 
   527     * fix "access to undefined variable __path__" false positive (close
   528       #10065)
   529 
   530     * fix "explicit return in __init__" false positive when return is
   531       actually in an inner function (close #10075)
   532 
   533 
   534 
   535 2005-10-21  --  0.8.0
   536     * check names imported from a module exists in the module (E0611),
   537       patch contributed by Amaury Forgeot d'Arc
   538 
   539     * print a warning (W0212) for methods that could be a function
   540       (implements #9100)
   541 
   542     * new --defining-attr-methods option on classes checker
   543 
   544     * new --acquired-members option on the classes checker, used when
   545       --zope=yes to avoid false positive on acquired attributes (listed
   546       using this new option) (close #8616)
   547 
   548     * generate one E0602 for each use of an undefined variable
   549       (previously, only one for the first use but not for the following)
   550       (implements #1000)
   551 
   552     * make profile option saveable
   553 
   554     * fix Windows .bat file,  patch contributed by Amaury Forgeot d'Arc
   555 
   556     * fix one more false positive for E0601 (access before definition)
   557       with for loop such as "for i in range(10): print i" (test 
   558       func_noerror_defined_and_used_on_same_line)
   559 
   560     * fix false positive for E0201 (undefined member) when accessing to
   561       __name__ on a class object
   562 
   563     * fix astng checkers traversal order
   564 
   565     * fix bug in format checker when parsing a file from a platform
   566       using different new line characters (close #9239)
   567 
   568     * fix encoding detection regexp
   569 
   570     * fix --rcfile handling (support for --rcfile=file, close #9590)
   571 
   572 
   573 
   574 2005-05-27  --  0.7.0
   575     * WARNING: pylint is no longer a logilab subpackage. Users may have to
   576       manually remove the old logilab/pylint directory.
   577 
   578     * introduce a new --additional-builtins option to handle user defined
   579       builtins 
   580 
   581     * --reports option has now -r as short alias, and -i for --include-ids
   582 
   583     * fix a bug in the variables checker which may causing some false
   584       positives when variables are defined and used within the same
   585       statement (test func_noerror_defined_and_used_on_same_line)
   586 
   587     * this time, real fix of the "disable-msg in the config file" problem,
   588       test added to unittest_lint
   589 
   590     * fix bug with --list-messages and python -OO
   591 
   592     * fix possible false positive for W0201
   593 
   594 
   595 
   596 2005-04-14  --  0.6.4
   597     * allow to parse files without extension when a path is given on the
   598       command line (test noext)
   599 
   600     * don't fail if we are unable to read an inline option  (e.g. inside a
   601       module), just produce an information message (test func_i0010)
   602 
   603     * new message E0103 for break or continue outside loop (close #8883,
   604       test func_continue_not_in_loop)
   605 
   606     * fix bug in the variables checker, causing non detection of some
   607       actual name error (close #8884, test
   608       func_nameerror_on_string_substitution)
   609 
   610     * fix bug in the classes checker which was making pylint crash if
   611       "object" is assigned in a class inheriting from it (test 
   612       func_noerror_object_as_class_attribute)
   613 
   614     * fix problem with the similar checker when related options are
   615       defined in a configuration file
   616 
   617     * new --generate-man option to generate pylint's man page (require the
   618       latest logilab.common (>= 0.9.3)
   619 
   620     * packaged (generated...) man page
   621 
   622 
   623 
   624 2005-02-24  --  0.6.3
   625     * fix scope problem which may cause false positive and true negative
   626       on E0602
   627 
   628     * fix problem with some options such as disable-msg causing error when
   629       they are coming from the configuration file
   630 
   631 
   632 
   633 2005-02-16  --  0.6.2
   634     * fix false positive on E0201 ("access to undefined member") with
   635       metaclasses 
   636 
   637     * fix false positive on E0203 ("access to member before its
   638       definition") when attributes are defined in a parent class
   639 
   640     * fix false positive on W0706 ("identifier used to raise an exception
   641       assigned to...")
   642 
   643     * fix interpretation of "\t" as value for the indent-string
   644       configuration variable
   645 
   646     * fix --rcfile so that --rcfile=pylintrc (only --rcfile pylintrc was
   647       working in earlier release)
   648 
   649     * new raw checker example in the examples/ directory
   650 
   651 
   652 
   653 2005-02-04  --  0.6.1
   654     * new --rcfile option to specify the configuration file without the
   655       PYLINTRC environment variable
   656 
   657     * added an example module for a custom pylint checker (see the
   658       example/ directory)
   659 
   660     * some fixes to handle fixes in common 0.9.1 (should however still working
   661       with common 0.9.0, even if upgrade is recommended)
   662 
   663 
   664 
   665 2005-01-20  --  0.6.0
   666     * refix pylint emacs mode
   667 
   668     * no more traceback when just typing "pylint"
   669 
   670     * fix a bug which may cause crashes on resolving parent classes
   671 
   672     * fix problems with the format checker: don't chock on files
   673       containing multiple CR, avoid C0322, C0323, C0324 false positives
   674       with triple quoted string with quote inside 
   675 
   676     * correctly detect access to member defined latter in __init__ method
   677 
   678     * now depends on common 0.8.1 to fix problem with interface resolution
   679       (close #8606)	
   680 
   681     * new --list-msgs option describing available checkers and their
   682       messages
   683 
   684     * added windows specific documentation to the README file, contributed
   685       by Brian van den Broek
   686 
   687     * updated doc/features.txt (actually this file is now generated using
   688       the --list-msgs option), more entries into the FAQ
   689 
   690     * improved tests coverage
   691 
   692 
   693 
   694 2004-10-19  --  0.5.0
   695     * avoid to import analyzed modules !
   696 
   697     * new Refactor and Convention message categories. Some Warnings have been
   698       remaped into those new categories
   699 
   700     * added "similar", a tool to find copied and pasted lines of code,
   701       both using a specific command line tool and integrated as a
   702       pylint's checker
   703 
   704     * imports checker may report import dependencies as a dot graph
   705 
   706     * new checker regrouping most Refactor detection (with some new metrics)
   707 
   708     * more command line options storable in the configuration file
   709 
   710     * fix bug with total / undocumented number of methods
   711 
   712 
   713 
   714 2004-07-08  --  0.4.2
   715     * fix pylint emacs mode
   716 
   717     * fix classes checkers to handler twisted interfaces
   718 
   719 
   720 
   721 2004-05-14  --  0.4.1
   722     * fix the setup.py script to allow bdist_winst (well, the generated
   723       installer has not been tested...) with the necessary
   724       logilab/__init__.py file
   725 
   726     * fix file naming convention as suggested by Andreas Amoroso
   727 
   728     * fix stupid crash bug with bad method names
   729 
   730 
   731 
   732 2004-05-10  --  0.4.0
   733     * fix file path with --parsable
   734 
   735     * --parsable option has been renamed to --parseable
   736 
   737     * added patch from Andreas Amoroso to output message to files instead
   738       of standard output
   739 
   740     * added Run to the list of correct variable names
   741 
   742     * fix variable names regexp and checking of local classes names
   743 
   744     * some basic handling of metaclasses
   745 
   746     * no-docstring-rgx apply now on classes too
   747 
   748     * new option to specify a different regexp for methods than for
   749       functions
   750 
   751     * do not display the evaluation report when no statements has been
   752       analysed
   753 
   754     * fixed crash with a class nested in a method
   755 
   756     * fixed format checker to deals with triple quoted string and
   757       lines with code and comment mixed
   758 
   759     * use logilab.common.ureports to layout reports
   760 
   761 
   762 
   763 2004-02-17  --  0.3.3
   764     * added a parsable text output, used when the --parsable option is
   765       provided
   766 
   767     * added an emacs mode using this output, available in the distrib's
   768       elisp directory
   769 
   770     * fixed some typos in messages
   771 
   772     * change include-ids options to yn, and allow it to be in the
   773       configuration file
   774 
   775     * do not chock on corrupted stats files
   776 
   777     * fixed bug in the format checker which may stop pylint execution
   778 
   779     * provide scripts for unix and windows to wrap the minimal pylint tk
   780       gui
   781 
   782 
   783 
   784 2003-12-23  --  0.3.2
   785     * html-escape messages in the HTML reporter (bug reported by Juergen
   786       Hermann)
   787 
   788     * added "TODO" to the list of default note tags
   789 
   790     * added "rexec" to the list of default deprecated modules
   791 
   792     * fixed typos in some messages
   793 
   794 
   795 
   796 2003-12-05  --  0.3.1
   797     * bug fix in format and classes checkers
   798 
   799     * remove print statement from imports checkers
   800 
   801     * provide a simple tk gui, essentially useful for windows users
   802 
   803 
   804 
   805 2003-11-20  --  0.3.0
   806     * new exceptions checker, checking for string exception and empty
   807       except clauses.
   808 
   809     * imports checker checks for reimport of modules
   810 
   811     * classes checker checks for calls to ancestor's __init__ and abstract
   812       method not overridden. It doesn't complain anymore for unused import in
   813       __init__ files, and provides a new option ignore-interface-methods,
   814       useful when you're using zope Interface implementation in your project
   815 
   816     * base checker checks for black listed builtins call (controled by the
   817       bad-functions option) and for use of * and **
   818 
   819     * format checker checks for use of <> and "l" as long int marker
   820 
   821     * major internal API changes
   822 
   823     * use the rewrite of astng, based on compiler.ast
   824 
   825     * added unique id for messages, as suggested by Wolfgang Grafen
   826 
   827     * added unique id for reports
   828 
   829     * can take multiple modules or files as argument
   830 
   831     * new options command line options : --disable-msg, --enable-msg,
   832       --help-msg, --include-ids, --reports, --disable-report, --cache-size
   833 
   834     * --version shows the version of the python interpreter
   835 
   836     * removed some options which are now replaced by [en|dis]able-msg, or
   837       disable-report
   838 
   839     * read disable-msg and enable-msg options in source files (should be
   840       in comments on the top of the file, in the form
   841       "# pylint: disable-msg=W0402"
   842 
   843     * new message for modules importing themselves instead of the "cyclic
   844       import" message
   845 
   846     * fix bug with relative and cyclic imports
   847 
   848     * fix bug in imports checker (cycle was not always detected)
   849 
   850     * still fixes in format checker : don't check comment and docstring,
   851       check first line after an indent
   852 
   853     * black and white list now apply to all identifiers, not only
   854       variables,  so changed the configuration option from
   855       (good|bad)-variable-names to (good|bad)-names
   856 
   857     * added string, rexec and Bastion to the default list of deprecated
   858       modules
   859 
   860     * do not print redefinition warning for function/class/method defined
   861       in mutually exclusive branches
   862 
   863 
   864 
   865 2003-10-10  --  0.2.1
   866     * added some documentation, fixed some typos
   867 
   868     * set environment variable PYLINT_IMPORT to 1 during pylint execution.
   869 
   870     * check that variables "imported" using the global statement exist
   871 
   872     * indentation problems are now warning instead of errors
   873 
   874     * fix checkers.initialize to try to load all files with a known python
   875       extension (patch from wrobell)
   876 
   877     * fix a bunch of messages
   878 
   879     * fix sample configuration file
   880 
   881     * fix the bad-construction option
   882 
   883     * fix encoding checker
   884 
   885     * fix format checker
   886 
   887 
   888 
   889 2003-09-12  --  0.2.0
   890     * new source encoding / FIXME checker (pep 263)
   891 
   892     * new --zope option which trigger Zope import. Useful to check Zope
   893       products code.
   894 
   895     * new --comment option which enable the evaluation note comment
   896       (disabled by default).
   897 
   898     * a ton of bug fixes
   899 
   900     * easy functional test infrastructure
   901 
   902 
   903 
   904 2003-06-18  --  0.1.2
   905     * bug fix release
   906 
   907     * remove dependency to pyreverse
   908 
   909 
   910 
   911 2003-06-01  --  0.1.1
   912     * much more functionalities !
   913 
   914 
   915 
   916 2003-05-19  --  0.1
   917     * initial release
   918 
   919 
   920