Blog entries february 2013 [2]

Release of PyLint 0.27 / logilab-astng 0.24.2

2013/02/28 by Sylvain Thenault

Hi there,

I'm very pleased to announce the release of pylint 0.27 and logilab-astng 0.24.2. There has been a lot of enhancements and bug fixes since the latest release, so you're strongly encouraged to upgrade. Here is a detailed list of changes:

  • #20693: replace pylint.el by Ian Eure version (patch by J.Kotta)
  • #105327: add support for --disable=all option and deprecate the 'disable-all' inline directive in favour of 'skip-file' (patch by A.Fayolle)
  • #110840: add messages I0020 and I0021 for reporting of suppressed messages and useless suppression pragmas. (patch by Torsten Marek)
  • #112728: add warning E0604 for non-string objects in __all__ (patch by Torsten Marek)
  • #120657: add warning W0110/deprecated-lambda when a map/filter of a lambda could be a comprehension (patch by Martin Pool)
  • #113231: logging checker now looks at instances of Logger classes in addition to the base logging module. (patch by Mike Bryant)
  • #111799: don't warn about octal escape sequence, but warn about o which is not octal in Python (patch by Martin Pool)
  • #110839: bind <F5> to Run button in pylint-gui
  • #115580: fix erroneous W0212 (access to protected member) on super call (patch by Martin Pool)
  • #110853: fix a crash when an __init__ method in a base class has been created by assignment rather than direct function definition (patch by Torsten Marek)
  • #110838: fix pylint-gui crash when include-ids is activated (patch by Omega Weapon)
  • #112667: fix emission of reimport warnings for mixed imports and extend the testcase (patch by Torsten Marek)
  • #112698: fix crash related to non-inferable __all__ attributes and invalid __all__ contents (patch by Torsten Marek)
  • Python 3 related fixes:
    • #110213: fix import of checkers broken with python 3.3, causing "No such message id W0704" breakage
    • #120635: redefine cmp function used in pylint.reporters
  • Include full warning id for I0020 and I0021 and make sure to flush warnings after each module, not at the end of the pylint run. (patch by Torsten Marek)
  • Changed the regular expression for inline options so that it must be preceeded by a # (patch by Torsten Marek)
  • Make dot output for import graph predictable and not depend on ordering of strings in hashes. (patch by Torsten Marek)
  • Add hooks for import path setup and move pylint's sys.path modifications into them. (patch by Torsten Marek)
  • pylint-brain: more subprocess.Popen faking (see #46273)
  • #109562 [jython]: java modules have no __doc__, causing crash
  • #120646 [py3]: fix for python3.3 _ast changes which may cause crash
  • #109988 [py3]: test fixes

Many thanks to all the people who contributed to this release!



2013/02/12 by Pierre-Yves David

I was in Bruxelles for FOSDEM 2013. As with previous FOSDEM there were too many interesting talks and people to see. Here is a summary of what I saw:

In the Mozilla's room:

  1. The html5 pdf viewer pdfjs is impressive. The PDF specification is really scary but this full featured "native" viewer is able to renders most of it with very good performance. Have a look at the pdfjs demo!
  1. Firefox debug tools overview with a specific focus of Firefox OS emulator in your browser.
  1. Introduction to webl10n: an internationalization format and library used in Firefox OS. A successful mix that results in a format that is idiot-proof enough for a duck to use, that relies on Unicode specifications to handle complex pluralization rules and that allows cascading translation definitions.
typical webl10n user
  1. Status of html5 video and audio support in Firefox. The topic looks like a real headache but the team seems to be doing really well. Special mention for the reverse demo effect: The speaker expected some format to be still unsupported but someone else apparently implemented them over night.
  2. Last but not least I gave a talk about the changeset evolution concept that I'm putting in Mercurial. Thanks goes to Feth for asking me his not-scripted-at-all-questions during this talk. (slides)

In the postgresql room:

  1. Insightful talk about more event trigger in postgresql engine and how this may becomes the perfect way to break your system.
  2. Full update of the capability of postgis 2.0. The postgis suite was already impressive for storing and querying 2D data, but it now have impressive capability regarding 3D data.

On python related topic:
  • Victor Stinner has started an interesting project to improve CPython performance. The first one: astoptimizer breaks some of the language semantics to apply optimisation on compiling to byte code (lookup caching, constant folding,…). The other, registervm is a full redefinition of how the interpreter handles reference in byte code.

After the FOSDEM, I crossed the channel to attend a Mercurial sprint in London. Expect more on this topic soon.