OSCON, the annual Open Source Convention held in Portland OR, will be held next year from July 20-24.
The call for participation has now been published, and there will again be a Python track. Please see the full call at http://www.oscon.com/oscon2014/public/cfp/308.
Submissions for 3-hour tutorials and 40-minute talks are due by January 30, 2104.
I have the pleasure to announce the release of Lea 1.2.
Lea is a Python package aiming at working with discrete probability
distributions in an intuitive way.
It allows modelling a broad range of random discrete phenomenons. Then, it
allows calculating probabilities of events, whether atomic, aggregated or
combined through given operations. A typical example is the probabilities of
the sum of N dice having known, possibly unfair, probability distributions.
Here are the main features of Lea:
- models finite discrete probability distributions
- standard distribution indicators (mean, standard deviation,.)
- arithmetic and logical operators on probability distribution
- cartesian products, conditional probabilities, joint distributions
- generation of random samples
- open-source project, LGPL license
- pure Python module, lightweight - no package dependency
- probabilities stored as integers (no floating-point biases)
Download (PyPi): http://pypi.python.org/pypi/lea
Project page: http://code.google.com/p/lea/
(with wiki documentation including tutorials, examples and API)
Hoping this could be helpful in this uncertain universe...
Posting here in case someone else finds this interesting. Wigiki is
still work in progress (version 0.6) but is currently usable. I use
Github's Gists a lot, mostly for note-taking and I wanted a painless
way to group some of these notes into a wiki-like site.
So, the main idea is that you write a json file with a list of gist
ids and some other info and then run wigiki to build a static html
site. The gists are not currently downloaded but they are embedded 
thus the generated site is not suitable for offline reading.
It ships with a very basic and minimal theme but I have also started
working on a bootstrap-based one. A theme is basically a bunch of
jinja2 templates following some conventions so that other people can
Wigiki source code  and documentation  are hosted on github. You
can download from there or from pypi .
GPG Key : 0x414301DF
A new RedNotebook version has been released.
You can get the tarball, Windows installer and links to distribution
packages at http://rednotebook.sourceforge.net/downloads.html
What is RedNotebook?
RedNotebook is a **graphical journal** and diary helping you keep track
of notes and thoughts. It includes a calendar navigation, customizable
templates, export functionality and word clouds. You can also format,
tag and search your entries. RedNotebook is available in the
repositories of most common Linux distributions and a Windows installer
is available. It is written in Python and uses GTK+ for its interface.
What's new in this version?
* Add font selection for edit mode (Philip Akesson).
* Allow changing preview and cloud font in preferences.
* Only allow opening RedNotebook minimized on Windows since other systems may lack a system tray.
* Fix: Display tags starting with "SEP" in preview (lp:1255582).
* Write scripts to cross-compile RedNotebook Windows exe and installer on Linux.
PyDev 3.1.0 has been released
Details on PyDev: http://pydev.org
Details on its development: http://pydev.blogspot.com
LiClipse (PyDev standalone with goodies such as support for Django
* **Important**: PyDev requires Eclipse 3.8 or 4.3 onwards and Java 7! For
older versions, keep using PyDev 2.x.
* It's now possible to rename a module (using F2 or drag and drop in
the pydev package explorer).
* Multiple improvements on the rename refactoring.
* **Automatic code reloading on the debugger** (based on xreload).
* When a file is changed and a debug session is on, PyDev will
automatically reload it (based on xreload).
* **Get referrers on debug**
* Right-click expression or variable in debugger and select 'Get
* Note: may not work on some Python variants as it needs access to
the gc module.
* **Stackless python** is now supported in the debugger, showing all
the suspended tasklets in the stack view.
* Automatically force focus to Eclipse on breakpoint hit (Enable in
prefereces > pydev > debug).
* The remote debugger can be left 'always on' (Enable in prefereces >
pydev > debug).
* If there's an exception while evaluating a conditional breakpoint the
thread is suspended and the issue reported.
* Option to skip caught exceptions thrown and handled in the same
* A comment with @IgnoreException can be added to lines where an
exception is thrown to have that exception ignored by the debugger when
caught exceptions support is turned on.
* Improved visualization of frame objects.
* Bug-fixes on Jython debugging.
* Django: The default PyDev unittest runner can now run Django tests
* Selecting a unit-test method in the editor and **right-click > run as
unit-test** will run only the selected unit-test.
* **Ctrl+F9** with test selected will pre-select only that test to run
* Improvements on search for references (Ctrl+Shift+G).
* Fixed some racing conditions related to the plugin startup.
* Organize imports has option to add from imports before other imports.
* Improved connection to shell that does code-completion.
* Properly supporting creation of shell inside a Jython VM in Eclipse.
What is PyDev?
PyDev is a plugin that enables users to use Eclipse for Python, Jython and
IronPython development -- making Eclipse a first class Python IDE -- It
comes with many goodies such as code completion, syntax highlighting,
syntax analysis, refactor, debug and many others.
PyDev - Python Development Environment for Eclipse
pytest-2.5.0: many fixes ... now down to ZERO reported bugs!
pytest-2.5.0 is a big bug fixing release, the result of two community bug
fixing days plus numerous additional works from many people and
reporters. The release should be fully compatible to 2.4.2, existing
plugins and test suites.
We aim at maintaining this level of ZERO reported bugs because it's no
fun if your testing tool has bugs, is it? Under a condition, though:
when submitting a bug report please provide clear information about the
circumstances and a simple example which reproduces the problem.
The issue tracker is of course not empty now. We have many remaining
"enhancement" issues which we'll hopefully can tackle in 2014 with your help.
For those who use older Python versions, please note that pytest is itself not
automatically tested anymore on python2.5 due to virtualenv, setuptools and tox
not supporting it anymore. Manual verification shows that it
works fine still but that might change in the future.
As usual, current docs are at
and you can upgrade from pypi via::
pip install -U pytest
Particular thanks for helping with this release go to Anatoly Bubenkoff,
Floris Bruynooghe, Marc Abramowitz, Ralph Schmitt, Ronny Pfannschmidt,
Donald Stufft, James Lan, Rob Dennis, Jason R. Coombs, Mathieu Agopian,
Virgil Dupras, Bruno Oliveira, Alex Gaynor and others.
- dropped python2.5 from automated release testing of pytest itself
which means it's probably going to break soon (but still works
with this release we believe).
- simplified and fixed implementation for calling finalizers when
parametrized fixtures or function arguments are involved. finalization
is now performed lazily at setup time instead of in the "teardown phase".
While this might sound odd at first, it helps to ensure that we are
correctly handling setup/teardown even in complex code. User-level code
should not be affected unless it's implementing the pytest_runtest_teardown
hook and expecting certain fixture instances are torn down within (very
unlikely and would have been unreliable anyway).
- PR90: add --color=yes|no|auto option to force terminal coloring
mode ("auto" is default). Thanks Marc Abramowitz.
- fix issue319 - correctly show unicode in assertion errors. Many
thanks to Floris Bruynooghe for the complete PR. Also means
we depend on py>=1.4.19 now.
- fix issue396 - correctly sort and finalize class-scoped parametrized
tests independently from number of methods on the class.
- refix issue323 in a better way -- parametrization should now never
cause Runtime Recursion errors because the underlying algorithm
for re-ordering tests per-scope/per-fixture is not recursive
anymore (it was tail-call recursive before which could lead
to problems for more than >966 non-function scoped parameters).
- fix issue290 - there is preliminary support now for parametrizing
with repeated same values (sometimes useful to to test if calling
a second time works as with the first time).
- close issue240 - document precisely how pytest module importing
works, discuss the two common test directory layouts, and how it
interacts with PEP420-namespace packages.
- fix issue246 fix finalizer order to be LIFO on independent fixtures
depending on a parametrized higher-than-function scoped fixture.
(was quite some effort so please bear with the complexity of this sentence :)
Thanks Ralph Schmitt for the precise failure example.
- fix issue244 by implementing special index for parameters to only use
indices for paramentrized test ids
- fix issue287 by running all finalizers but saving the exception
from the first failing finalizer and re-raising it so teardown will
still have failed. We reraise the first failing exception because
it might be the cause for other finalizers to fail.
- fix ordering when mock.patch or other standard decorator-wrappings
are used with test methods. This fixues issue346 and should
help with random "xdist" collection failures. Thanks to
Ronny Pfannschmidt and Donald Stufft for helping to isolate it.
- fix issue357 - special case "-k" expressions to allow for
filtering with simple strings that are not valid python expressions.
Examples: "-k 1.3" matches all tests parametrized with 1.3.
"-k None" filters all tests that have "None" in their name
and conversely "-k 'not None'".
Previously these examples would raise syntax errors.
- fix issue384 by removing the trial support code
since the unittest compat enhancements allow
trial to handle it on its own
- don't hide an ImportError when importing a plugin produces one.
- fix issue275 - allow usefixtures and autouse fixtures
for running doctest text files.
- fix issue380 by making --resultlog only rely on longrepr instead
of the "reprcrash" attribute which only exists sometimes.
- address issue122: allow @pytest.fixture(params=iterator) by exploding
into a list early on.
- fix pexpect-3.0 compatibility for pytest's own tests.
- allow nested parametrize-value markers, thanks James Lan for the PR.
- fix unicode handling with new monkeypatch.setattr(import_path, value)
API. Thanks Rob Dennis. Fixes issue371.
- fix unicode handling with junitxml, fixes issue368.
- In assertion rewriting mode on Python 2, fix the detection of coding
cookies. See issue #330.
- make "--runxfail" turn imperative pytest.xfail calls into no ops
(it already did neutralize pytest.mark.xfail markers)
- refine pytest / pkg_resources interactions: The AssertionRewritingHook
PEP302 compliant loader now registers itself with setuptools/pkg_resources
properly so that the pkg_resources.resource_stream method works properly.
Fixes issue366. Thanks for the investigations and full PR to Jason R. Coombs.
- pytestconfig fixture is now session-scoped as it is the same object during the
whole test run. Fixes issue370.
- avoid one surprising case of marker malfunction/confusion::
@pytest.mark.some(lambda arg: ...)
would not work correctly because pytest assumes @pytest.mark.some
gets a function to be decorated already. We now at least detect if this
arg is an lambda and thus the example will work. Thanks Alex Gaynor
for bringing it up.
- xfail a test on pypy that checks wrong encoding/ascii (pypy does
not error out). fixes issue385.
- internally make varnames() deal with classes's __init__,
although it's not needed by pytest itself atm. Also
fix caching. Fixes issue376.
- fix issue221 - handle importing of namespace-package with no
- refactor internal FixtureRequest handling to avoid monkeypatching.
One of the positive user-facing effects is that the "request" object
can now be used in closures.
- fixed version comparison in pytest.importskip(modname, minverstring)
- fix issue377 by clarifying in the nose-compat docs that pytest
does not duplicate the unittest-API into the "plain" namespace.
- fix verbose reporting for @mock'd test functions
Wingware has released version 5.0.1 of Wing IDE, our integrated development
environment designed specifically for the Python programming language.
Wing IDE includes a professional quality code editor with vi, emacs, and
key bindings, auto-completion, call tips, refactoring, context-aware
a powerful graphical debugger, version control, unit testing, search,
other features. For details see http://wingware.com/
Changes in this minor release include:
* Support for Python 3.4beta1+
* Fix file type registration on OS X
* Fix potential segfault after using tab to move from field to field
* Fix creating and renaming snippets and snippets tool drop down menu
* Fix exception when closing windows and failure to quit on win32
* Optimize message tool, which could substantially slow down the IDE
* Fix problems setting custom colors via the Editor -> Syntax Coloring
* Updates and corrections in French localization (thanks to Jean Sanchez)
* Fix intermittant failure to include all selected files in a version
* Fix switching to alphabetizing file tabs and keeping active tab
visible when there are 2+ splits
* 21 other bug fixes
For details see http://wingware.com/pub/wingide/5.0.1/CHANGELOG.txt
New features in Wing 5 include:
* Now runs native on OS X
* Draggable tools and editors
* Configurable toolbar and editor & project context menus
* Optionally opens a different sets of files in each editor split
* Lockable editor splits
* Optional Python Turbo completion (context-appropriate completion on
all non-symbol keys)
* Sharable color palettes and syntax highlighting configurations
* Auto-editing is on by default (except some operations that have a
* Named file sets
* Sharable launch configurations
* Asynchronous I/O in Debug Probe and Python Shell
* Expanded and rewritten tutorial
* Support for Python 3.4
For more information on what's new in Wing 5, see
Free trial: http://wingware.com/wingide/trial
Feature matrix: http://wingware.com/wingide/features
Questions? Don't hesitate to email us at support(a)wingware.com.
Wingware | Python IDE
Advancing Software Development
eGenix.com mx Base Distribution
mxDateTime, mxTextTools, mxProxy, mxURL, mxUID,
mxBeeBase, mxStack, mxQueue, mxTools
Open Source Python extensions providing
important and useful services
for Python programmers.
This announcement is also available on our web-site for online reading:
The eGenix.com mx Base Distribution for Python is a collection of
professional quality software tools which enhance Python's usability
in many important areas such as fast text searching, date/time
processing and high speed data types.
The tools have a proven record of being portable across many Unix and
Windows platforms. You can write applications which use the tools on
Windows and then run them on Unix platforms without change due to the
consistent platform independent interfaces.
Contents of the distribution:
* mxDateTime - Easy to use Date/Time Library for Python
* mxTextTools - Fast Text Parsing and Processing Tools for Python
* mxProxy - Object Access Control for Python
* mxBeeBase - On-disk B+Tree Based Database Kit for Python
* mxURL - Flexible URL Data-Type for Python
* mxUID - Fast Universal Identifiers for Python
* mxStack - Fast and Memory-Efficient Stack Type for Python
* mxQueue - Fast and Memory-Efficient Queue Type for Python
* mxTools - Fast Everyday Helpers for Python
The package also include a number of helpful smaller modules in the
mx.Misc subpackage, such as mx.Misc.ConfigFile for config file parsing
or mx.Misc.CommandLine to quickly write command line applications in
All available packages have proven their stability and usefulness in
many mission critical applications and various commercial settings all
around the world.
For more information, please see the distribution page:
The 3.2.7 release of the eGenix mx Base Distribution is the latest
release of our open-source Python extensions. It includes these fixes
* mxBeeBase: Fixed a problem with using larger BeeDict keysizes on
64-bit platforms. These now work for keysizes between 25 and 659
characters as well. Also extended the possible keysizes for 32-bit
platform to 670 characters. Thanks to Andrey Rzhetsky for pointing
us to the problem.
* mx.Misc.FileLock: Fixed a typo in a FileLock class name.
eGenix mx Base Distribution 3.2.0 was release on 2012-08-28. Please
see the eGenix mx Base Distribution 3.2.0 announcement for new
features in the 3.2 major release:
For a full list of changes, please refer to the eGenix mx Base
Distribution change log and the change logs of the various included
We encourage all users to upgrade to this latest eGenix mx Base
If you are upgrading from eGenix mx Base 3.1.x, please see the eGenix
mx Base Distribution 3.2.0 release notes for details on what has
changed since the 3.1 major release.
For a full list of changes, please refer to the eGenix mx Base Distribution
change log at
and the change logs of the various included Python packages.
The eGenix mx Base package is distributed under the eGenix.com Public
License 1.1.0 which is an Open Source license similar to the Python
license. You can use the packages in both commercial and non-commercial
settings without fee or charge.
The package comes with full source code
The download archives and instructions for installing the packages can
be found on the eGenix mx Base Distribution page:
As always, we are providing pre-built binaries for all common
platforms: Windows 32/64-bit, Linux 32/64-bit, FreeBSD 32/64-bit, Mac
OS X 32/64-bit. Source code archives are available for installation on
all other Python platforms, such as Solaris, AIX, HP-UX, etc.
To simplify installation in Zope/Plone and other egg-based systems, we
have also precompiled egg distributions for all platforms. These are
available on our own PyPI-style index server for easy and automatic
download. Please see the download instructions for details:
Whether you are using a prebuilt package or the source distribution,
installation is a simple "python setup.py install" command in all
cases. The only difference is that the prebuilt packages do not
require a compiler or the Python development packages to be installed.
Commercial support for this product is available from eGenix.com.
for details about our support offerings.
For more information on the eGenix mx Base Distribution, documentation
and installation notes, please visit our web-site:
About Python (http://www.python.org/):
Python is an object-oriented Open Source programming language
which runs on all modern platforms. By integrating ease-of-use,
clarity in coding, enterprise application connectivity and rapid
application design, Python establishes an ideal programming
platform for today's IT challenges.
About eGenix (http://www.egenix.com/):
eGenix is a software project, consulting and product company
focusing on expert project services and professional quality
products for companies, Python users and developers.
Professional Python Services directly from the Source (#1, Dec 10 2013)
>>> Python Projects, Consulting and Support ... http://www.egenix.com/
>>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
2013-12-10: Released eGenix mx Base 3.2.7 ... http://egenix.com/go51
2013-12-06: Released eGenix PyRun 1.3.1 ... http://egenix.com/go50
::::: Try our mxODBC.Connect Python Database Interface for free ! ::::::
eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
Registered at Amtsgericht Duesseldorf: HRB 46611
I'm very happy to announce the release of Sphinx 1.2 available on the
Python package index at <http://pypi.python.org/pypi/Sphinx>.
It includes about 50 features, several incompatible changes and
fixes a lot of bugs/buglets from the 1.1.3 version of Sphinx.
What's new in 1.2 (very short version)?
- Drop Python 2.4 support
- Add Python 3.3 support
- Improvement of internationalization
- Improvement of builders: html, texinfo, latex and gettext.
- Add builders: xml and pseudoxml
- Add sphinx.ext.linkcode extension
- Add non-ASCII code point characters path support
- Add theme plugin mechanism
- Add and update 10 locales
- Add experimental support for parallel building with a new -j option
- Add docs: detailed "Installing Sphinx" and "Sphinx Developer's Guide"
For the full changelog, go to <http://sphinx-doc.org/changes.html>.
Thanks to all coraborators and contributers!
What is it?
Sphinx is a tool that makes it easy to create intelligent and beautiful
documentation for Python projects (or other documents consisting of
multiple reStructuredText source files).
IRC: #sphinx-doc on irc.freenode.net