I'm pleased to announce the release of PyEnchant version 1.2.0. This
version includes some important updates in the underlying enchant
library, and implements basic "filters" to allow skipping of email
addresses, WikiWords, URLs, etc during a spellchecking session.
Enchant (http://www.abisource.com/enchant/) is the spellchecking
package behind the AbiWord word processor, is being considered for
inclusion in the KDE office suite, and is proposed as a
FreeDesktop.org standard. It's completely cross-platform because
it wraps the native spellchecking engine to provide a uniform
PyEnchant brings this simple, powerful and flexible spellchecking
engine to Python:
It also provides extended functionality including classes for tokenizing
text and iterating over the spelling errors in it, as well as a
ready-to-use text interface and wxPython dialog.
Current Version: 1.2.0
Licence: LGPL with exemptions, as per Enchant itself
ChangeLog for 1.2.0:
* Implemented "filters" that allow tokenization to skip common word
forms such as URLs, WikiWords, email addresses etc.
* Now ships with enchant-1.3.0, meaning:
* PWLs can return a useful list of suggestions rather than
the empty list
* Hunspell replaces MySpell as the default Windows backend
* Tokenization doesnt split words at non-alpha characters by default
* GtkSpellCheckerDialog contributed by Fredrik Corneliusson
* Removed deprecated functionality:
* All registry handling functionality from enchant.utils
* enchant.utils.SpellChecker (use enchant.checker.SpellChecker)
* Removed PyPWL, as native enchant PWLs can now suggest corrections
http://www.rfk.id.au | This message is digitally signed. Please visit
ryan(a)rfk.id.au | http://www.rfk.id.au/ramblings/gpg/ for details
-----BEGIN PGP SIGNED MESSAGE-----
[reposted to python-announce]
David Goodger and I have been the PEP editors for ages. Well, mostly
David lately as I've been way too busy to be of much use. David is
also pretty busy, and he lamented that he doesn't have much time for
editing when he put out his call for PEPs earlier this month.
We've now, or will soon have three more experienced Pythonistas
helping out as PEP editors, Georg Brandl, Brett Cannon, and Anthony
Baxter. As long as they've been hacking Python, you'd have thought
they'd have learned their lesson by now, but we'll gladly consume
more of their time and souls.
David and I would like to see some junior Pythonistas join the PEP
editor team, as a great way to gain experience and become more
involved with the community. As David says, PEP editing is something
a tech writer can do; it doesn't require intimate knowledge of
Python's C code base for example. PEP editors don't judge the
worthiness of a PEP -- that's for the Python community to do, but
they do the important work of ensuring that the PEPs are up to the
high quality and consistent standards that have been established over
the years. A PEP editor is sometimes also involved in the meta
process of developing and maintaining the PEPs. A good editor's eye,
excellent written communication skills, and the inhuman amount of
spare time that only the young have are your most important
If you're a budding Pythonista and are interested in becoming a PEP
editor, please send an email to peps(a)python.org. Let us know about
your writing and/or editing experience, how long you've been using
Python, how long you've been programming in general, and how much
cash you'll be sending our way. Kidding about that last bit. python-
dev lurkers are encouraged to apply!
Again, this call is for junior Pythonistas only. I think we have
enough experienced people now to cover our bases and to help mentor
new editors. We're really eager to get some new blood involved in
the Python community. We may not accept all applicants; we're aiming
for two or three additional editors, but that number isn't set in stone.
- -Barry (and David)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
-----END PGP SIGNATURE-----
PQRC (Python Quick Reference Card) is a condensed documentation for
Python and its main libraries, targetting production of printed quick
Its available as OpenDocument .odt files and as A4 and USLetter
formatted PDF files ready to print.
Its distributed under a Creative Commons Attribution - NonCommercial -
ShareAlike - 2.5 License, with allowing in-house print for curses.
Modifications since previous publication:
Switching to DejaVu font.
Get around bad index page numbers generation bug.
Note: Next version will target Python 2.5. I'll keep version for Python
2.4 but should only make minor updates.
CNRS-LIMSI dépt. CHM, groupes AMI et PS
Courriel: laurent.pointal(a)limsi.fr (prof)
Tél. 01 69 85 81 06 (prof)
Fax. 01 69 85 80 88
Portable SciPy, is an easy installer of SciPy for M$ windows users.
For this moment, you can find the description page, with all links here
For future use, it's advised to always use my redirector page
The simple method described here,
can be used to create any set of Python packages + other programs,
with just a few lines of code (example available).
and let me hear what you think of it.
Crunchy 0.8.2 has been released, and as usual you can download it from
Crunchy is an application that formats and delivers html-written
Python tutorials inside a browser window, adding interactive elements
and snazzy navigation.
This is a minor release, with the only major change being an update of
the vlam syntax. Since 0.8 support has also been added for Apple Macs,
so Crunchy now officially supports Windows, OS X and Ubuntu Linux -
and probably also works on every other UNIX platform out there.
In the short to medium future we will be releasing a significant
rewrite of crunchy, simplifying the developer interface and adding new
features, significant highlights will include:
* Better handling of IO from user scripts.
* Graphics canvasses will be available everywhere, not just in canvas widgets.
* A significantly simpler version of VLAM.
* A new plugin architecture for Crunchy itself, making it easily extensible.
* ... and maybe even support for Matplotlib.
We hope you continue to enjoy Crunchy.
André Roberge and Johannes Woolard.
I've just uploaded bbfreeze 0.92.0 to python's cheeseshop.
bbfreeze creates standalone executables from python scripts. It's similar
in functionality to py2exe or cx_Freeze.
It offers the following features:
bbfreeze can be installed with setuptools' easy_install command.
binary dependency tracking
bbfreeze will track binary dependencies and will include DLLs and
shared libraries needed by a frozen program.
multiple script freezing
bbfreeze can freeze multiple scripts at once.
python interpreter included
bbfreeze will create an extra executable named 'py', which might be
used like the python executable itself.
bbfreeze works on windows and UNIX-like operating systems. It
currently does not work on OS X. bbfreeze has been tested with python
2.4 and 2.5. bbfreeze will not work with python versions prior to 2.3
as it uses the zipimport feature introduced with python 2.3.
cheese shop entry:
Webware 0.9.3 has been released.
This release of Webware for Python includes a couple of fixes and
improvements of WebKit and some cleanup of the overall Webware codebase.
Please have a look at the WebKit release notes for details.
Webware for Python is a suite of Python packages and tools for
developing object-oriented, web-based applications. The suite uses
well known design patterns and includes a fast Application Server,
Servlets, Python Server Pages (PSP), Object-Relational Mapping,
Task Scheduling, Session Management, and many other features.
Webware is very modular and easily extended.
Webware for Python is well proven and platform-independent.
It is compatible with multiple web servers, database servers
and operating systems.
Check out the Webware for Python home page at http://www.w4py.org
Robert Marchetti shows you how to get started with the free
PyDev IDE on a Mac:
In this short video Robert Marchetti takes you through configuring and
testing PyDev on a Mac. You'll end up writing the universally-known Hello
World program inside PyDev to test that everything works as expected.
Free videos (we call them ShowMeDos) showing you how to do things.
The videos are made by us and our users, for everyone. 93 of our
193 videos are for Python, with more to come.
We'd love to have more contributions - would you share what you know?
Sharing is easy, full instructions are here:
Ian Ozsvald, Kyran Dale
We're pleased to announce the first public release of BList (v 0.9.3),
a list-like type with better asymptotic performance.
The BList extension module is available via PyPi:
The BList is a type that looks, acts, and quacks like a Python list(),
but has better performance for many (but not all) use cases. Below
are some of the unique features of the BList:
- just as fast as a Python list() when the list is small
- insertion or removal from the list takes O(log n) time
- getslice runs in O(log n) time and uses O(log n) memory, regardless
of slice size
- making a shallow copy runs in O(1) time and uses O(1) memory
- setslice runs in O(log n + log k) time if the inserted slice is a
BList of length k
- multipling a BList by k takes O(log k) time and O(log k) memory
>>> from blist import *
>>> x = blist()
>>> x *= 2**29
>>> y = x[4:-234234]
>>> del x[3:1024]
None of the above operations have a noticeable delay, even though the
lists have over 500 million elements due to line 3. The BList has two
key features that allow it to pull this off this performance:
1. Internally, a B+Tree is a wide, squat tree. Each node has a
maximum of 128 children. If the entire list contains 128 or fewer
objects, then there is only one node, which simply contains an
array of the objects. In other words, for short lists, a BList
works just like Python's array-based list() type. Thus, it has the
same good performance on small lists.
2. The BList type features transparent copy-on-write. If a non-root
node needs to be copied (as part of a getslice, copy, setslice,
etc.), the node is shared between multiple parents instead of being
copied. If it needs to be modified later, it will be copied at
that time. This is completely behind-the-scenes; from the user's
point of view, the BList works just like a regular Python list.
So you can see the performance of the BList in more detail, several
performance graphs available at the following link:
We're eager to hear about your experiences with the BList. Please
send all feedback and bug reports to daniel(a)stutzbachenterprises.com.