eGenix mx Base Distribution 3.2.8 GA

eGenix mx Base Distribution 3.2.8 GA

eGenix is pleased to announce the immediate availability of the eGenix mx Base Distribution 3.2.8 for Python 2.4 - 2.7.


The 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 track 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.

The distributions contains these open-source Python extensions, all grouped under the top-level mx Python package:

mxDateTime implements three new object types, DateTime, DateTimeDelta and RelativeDateTime and many tools based on these for doing easy conversion between and parsing of various date/time formats.

The main focus is on performance, usability and making sure that date/time values roundtrip safely. The types are also fully interoperable with Python's datetime module and often provide a much more intuitive approach to date/time calculations.

mxTextTools provides several useful functions and types that implement high-performance text parsing, processing and search algorithms.

It includes a Python-programmable very fast state machine, specifically designed for pattern matching and written in highly optimized C for both Unicode and char/byte strings.

mxProxy implements a new proxy type to provide low-level object access control, weak referencing and a cleanup protocol. It's ideal for use in restricted execution environments.

mxBeeBase is a high performance construction kit for disk based indexed databases. It offers components which you can plug together to easily build your own custom mid-sized databases and comes with ready to use on-disk dictionary implementations.

mxURL provides a new datatype for storing and manipulating URL values as well as a few helpers related to URL building, encoding and decoding.

mxUID implements a fast mechanism for generating universal identification strings (UIDs).

mxStack implements a fast and memory efficient stack object type.

mxQueue implements a fast and memory efficient queue object type.

mxTools provides a collection of handy functions and objects for every day Python programming. It includes many functions that you've often missed in 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 Python.

All available packages have proven their stability and usefulness in many mission critical applications and various commercial settings all around the world.


The 3.2.8 release of the eGenix mx Base Distribution is the latest release of our open-source Python extensions. It includes these fixes and enhancements:

Installation Enhancements

  • Added web installer support to mxSetup, the distutils extension module which drives all our product installations.
  • Uploaded web installer package to PyPI which simplifies installation.

    In addition to the usual ways of installing eGenix mx Base, we have uploaded a web installer to PyPI, so that it is now also possible to use one of these installation methods on all supported platforms (Windows, Linux, FreeBSD, Mac OS X):
    • easy_install egenix-mx-base via PyPI
    • pip install egenix-mx-base via PyPI
    • egenix-mx-base egg reference in zc.buildout via PyPI
    • running "python install" in the unzipped web installer archive directory

    The web installer will automatically detect the platform and choose the right binary download package for you. All downloads are verified before installation.


  • mxDateTime: Protected delta.strftime() against segfaults on Windows, which only allows day values <= 31 and segfaults for higher values. Thanks to Frank Boje for reporting this problem.
  • mxTextTools: Fixed a double decref in the tagging engine that surfaced when using custom tag objects and appending the results to them. Thanks to Richard Moseley for the report.

Compatibility Enhancements

  • Prepared eGenix mx Base for two digit Python patch level numbers such as Python 2.7.10

eGenix mx Base Distribution 3.2.0 was release on 2012-08-28. Please see the announcement for new features in the 3.2 major release compared to earlier releases.

For a complete list of changes, please see eGenix mx Base change log page and the change logs of the included Python packages.


We encourage all users to upgrade to this latest eGenix mx Base Distribution release.

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.


The eGenix mx Base Distribution is distributed under the terms of our 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.

This open source distribution package comes with full source code.


Please visit the eGenix mx Base Distribution product page for downloads, instructions on installation and documentation of the packages.

If you want to try the package, please jump straight to the download instructions or simply run pip install egenix-mx-base.

As always, we are providing prebuilt binaries for all supported 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 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

Please see the support section of our website for details

More Information

For more information on the eGenix mx Base Distribution, licensing and download instructions, please write to

Enjoy !

Marc-Andre Lemburg,

Published: 2014-07-11