Edson Tadeu M. Manoel | 10 Sep 23:40 2014
Picon

Patch to fix crashes with python debug

Hi,

  I have a patch proposal to fix problems in mx.DateTime that causes crashes in the debug version of Python (I'm testing on Python 2.7). Specifically, the problem happens when there is an error raised from one of the "constructors".  Where can I send it?  I didn't find any official repository or issue tracking system.  Is this list a good place?


  Thanks.


_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users
eGenix Team: M.-A. Lemburg | 27 Aug 09:19 2014

ANN: eGenix PyRun - One file Python Runtime 2.0.1

________________________________________________________________________

ANNOUNCING

                 eGenix PyRun - One file Python Runtime

                            Version 2.0.1

         An easy-to-use single file relocatable Python run-time -
           available for Linux, Mac OS X and Unix platforms,
              with support for Python 2.6, 2.7 and now
                      **also for Python 3.4**.

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-PyRun-2.0.1-GA.html

________________________________________________________________________

INTRODUCTION

eGenix PyRun is our open source, one file, no installation version of
Python, making the distribution of a Python interpreter to run based
scripts and applications to Unix based systems as simple as copying a
single file.

eGenix PyRun's executable only needs 11MB for Python 2 and 13MB for
Python 3, but still supports most Python application and scripts - and
it can be compressed to just 3-4MB using upx, if needed.

Compared to a regular Python installation of typically 100MB on disk,
eGenix PyRun is ideal for applications and scripts that need to be
distributed to several target machines, client installations or
customers.

It makes "installing" Python on a Unix based system as simple as
copying a single file.

eGenix has been using the product internally in the mxODBC Connect
Server since 2008 with great success and decided to make it available
as a stand-alone open-source product.

We provide both the source archive to build your own eGenix PyRun, as
well as pre-compiled binaries for Linux, FreeBSD and Mac OS X, as 32-
and 64-bit versions. The binaries can be downloaded manually, or you
can let our automatic install script install-pyrun take care of the
installation: ./install-pyrun dir and you're done.

Please see the product page for more details:

    http://www.egenix.com/products/python/PyRun/

________________________________________________________________________

NEWS

This is a patch level release of eGenix PyRun 2.0. The major new
feature in 2.0 is the added Python 3.4 support.

New Features
------------

 * Upgraded eGenix PyRun to work with and use Python 2.7.8 per default.

Enhancements / Changes
----------------------

 * Fixed a bug in the license printer to show the correct license URL.

install-pyrun Quick Install Enhancements
---------------------------------------------

eGenix PyRun includes a shell script called install-pyrun, which
greatly simplifies installation of PyRun. It works much like the
virtualenv shell script used for creating new virtual environments
(except that there's nothing virtual about PyRun environments).

    https://downloads.egenix.com/python/install-pyrun

With the script, an eGenix PyRun installation is as simple as running:

    ./install-pyrun targetdir

This will automatically detect the platform, download and install the
right pyrun version into targetdir.

We have updated this script since the last release:

 * Updated install-pyrun to default to eGenix PyRun 2.0.1 and its
   feature set.

For a complete list of changes, please see the eGenix PyRun Changelog:

    http://www.egenix.com/products/python/PyRun/changelog.html

Please see the eGenix PyRun 2.0.0 announcement for more details about
eGenix PyRun 2.0:

    http://www.egenix.com/company/news/eGenix-PyRun-2.0.0-GA.html

________________________________________________________________________

LICENSE

eGenix PyRun 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 eGenix PyRun in both commercial and non-commercial settings
without fee or charge.

Please see our license page for more details:

    http://www.egenix.com/products/python/PyRun/license.html

The package comes with full source code.

________________________________________________________________________

DOWNLOADS

The download archives and instructions for installing eGenix PyRun can
be found at:

    http://www.egenix.com/products/python/PyRun/

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
other platforms, such as Solaris, AIX, HP-UX, etc.

_______________________________________________________________________

SUPPORT

Commercial support for this product is available from eGenix.com.
Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

________________________________________________________________________

MORE INFORMATION

For more information about eGenix PyRun, licensing and download
instructions, please visit our web-site:

    http://www.egenix.com/products/python/PyRun/

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
    specializing in expert project services and professional quality
    products for companies, Python users and developers.

Enjoy,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Aug 27 2014)
>>> 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/
________________________________________________________________________
2014-09-19: PyCon UK 2014, Coventry, UK ...                23 days to go
2014-09-27: PyDDF Sprint 2014 ...                          31 days to go
2014-09-30: Python Meeting Duesseldorf ...                 34 days to go

   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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

Baiju M | 19 Aug 15:19 2014
Picon

mxODBC Connect integration with SQLAlchemy

Hi,

Can I use mxODBC Connect with SQLAlchemy ?
Is there any documentation on this ?

Regards,
Baiju M

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

M.-A. Lemburg | 15 Aug 11:12 2014

Web Installers for mx Base and mxODBC on PyPI

Dear Users,

with the recent releases of egenix-mx-base and egenix-mxodbc we
have uploaded a web installer to PyPI instead of just having
PyPI reference our download server and letting the Python installers
scrape the URLs for links.

The new web installer will determine the system it is running on
and automatically download the right package from our servers.
This has been tested by us on all officially supported platforms
(Linux, Windows, Mac OS X and FreeBSD) with easy_install, pip and
zc.buildout:

Here's a typical output from easy_install where you can see the web
installer working:

> bin/easy_install egenix-mxodbc
Searching for egenix-mxodbc
Reading https://pypi.python.org/simple/egenix-mxodbc/
Best match: egenix-mxodbc 3.3.1
Downloading
https://pypi.python.org/packages/source/e/egenix-mxodbc/egenix-mxodbc-3.3.1.zip#md5=901db7fd0cbdea23bca02c7c9158e7d5
Processing egenix-mxodbc-3.3.1.zip
Writing /tmp/easy_install-qQL5pL/egenix-mxodbc-3.3.1/setup.cfg
Running egenix-mxodbc-3.3.1/setup.py -q bdist_egg --dist-dir
/tmp/easy_install-qQL5pL/egenix-mxodbc-3.3.1/egg-dist-tmp-XFrgsH
Warning: Can't read registry to find the necessary compiler setting
Make sure that Python modules _winreg, win32api or win32con are installed.
web installer running
trying to find suitable download package
found package URL
https://downloads.egenix.com/python/egenix-mxodbc-3.3.1-py2.7_ucs2-linux-x86_64-prebuilt.zip#md5=07932b79990adedaba2056ac7944e225&sha1=044a885335a42255c5917be38ca69dda468cab8e&sha256=231ed0b3970f414bd867f6bea220d3f2d9f957a81c83516b0661b84fb04f3e25&size=2654364
downloading web package
https://downloads.egenix.com/python/egenix-mxodbc-3.3.1-py2.7_ucs2-linux-x86_64-prebuilt.zip
verifying web package
/tmp/easy_install-qQL5pL/egenix-mxodbc-3.3.1/egenix-mxodbc-3.3.1-py2.7_ucs2-linux-x86_64-prebuilt.zip
extracting web
package
/tmp/easy_install-qQL5pL/egenix-mxodbc-3.3.1/egenix-mxodbc-3.3.1-py2.7_ucs2-linux-x86_64-prebuilt.zip into
/tmp/easy_install-qQL5pL/egenix-mxodbc-3.3.1
Adding egenix-mxodbc 3.3.1 to easy-install.pth file

Installed
/home/lemburg/tmp/test-easy-install-mx-base-3.2.8/lib/python2.7/site-packages/egenix_mxodbc-3.3.1-py2.7-linux-x86_64.egg
Processing dependencies for egenix-mxodbc
Searching for egenix-mx-base
Reading https://pypi.python.org/simple/egenix_mx_base/
Best match: egenix-mx-base 3.2.8
Downloading
https://pypi.python.org/packages/source/e/egenix-mx-base/egenix-mx-base-3.2.8.zip#md5=6bb912968a048426a66b9053cced3e0a
Processing egenix-mx-base-3.2.8.zip
Writing /tmp/easy_install-awIDqs/egenix-mx-base-3.2.8/setup.cfg
Running egenix-mx-base-3.2.8/setup.py -q bdist_egg --dist-dir
/tmp/easy_install-awIDqs/egenix-mx-base-3.2.8/egg-dist-tmp-GV2xZ3
Warning: Can't read registry to find the necessary compiler setting
Make sure that Python modules _winreg, win32api or win32con are installed.
web installer running
trying to find suitable download package
found package URL
https://downloads.egenix.com/python/egenix-mx-base-3.2.8-py2.7_ucs2-linux-x86_64-prebuilt.zip#md5=6ddb93faa99e4a05197761716ff8e1b4&sha1=f09c67f7bf2f9985f0e5710e7945ad705b9f3b02&sha256=af74691573c32318e91ca277e9290ccd8f570198d456be0c6dad076400ec6656&size=4733120
downloading web package
https://downloads.egenix.com/python/egenix-mx-base-3.2.8-py2.7_ucs2-linux-x86_64-prebuilt.zip
verifying web package
/tmp/easy_install-awIDqs/egenix-mx-base-3.2.8/egenix-mx-base-3.2.8-py2.7_ucs2-linux-x86_64-prebuilt.zip
extracting web package
/tmp/easy_install-awIDqs/egenix-mx-base-3.2.8/egenix-mx-base-3.2.8-py2.7_ucs2-linux-x86_64-prebuilt.zip
into /tmp/easy_install-awIDqs/egenix-mx-base-3.2.8
Adding egenix-mx-base 3.2.8 to easy-install.pth file

Installed
/home/lemburg/tmp/test-easy-install-mx-base-3.2.8/lib/python2.7/site-packages/egenix_mx_base-3.2.8-py2.7-linux-x86_64.egg
Finished processing dependencies for egenix-mxodbc

With the web installer, the installation experience should be a much better
one. You can of course also simply download the right packages from our
website product pages directly. The web installer just takes care of
choosing and downloading the right package for you. It also makes sure
that you are getting authentic packages by verifying the downloads
against check sums.

Since the technology is still very new, please let us know if you
run into problems.

PS: The web installer code is included in mxSetup.py which is part
of our open source egenix-mx-base package. If this turns out to be
a success, we will likely publish this as documented eGenix open
source product, so that you can use it in your packages as well.

Many thanks,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source
>>> Python/Zope Consulting and Support ...        http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/
________________________________________________________________________

::: Try our new 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 14 Aug 11:10 2014

ANN: eGenix pyOpenSSL Distribution 0.13.4.1.0.1.9

________________________________________________________________________
ANNOUNCING

                   eGenix.com pyOpenSSL Distribution

                         Version 0.13.4.1.0.1.9

             An easy-to-install and easy-to-use distribution
             of the pyOpenSSL Python interface for OpenSSL -
            available for Windows, Mac OS X and Unix platforms

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-pyOpenSSL-Distribution-0.13.4.1.0.1.9.html

________________________________________________________________________
INTRODUCTION

The eGenix.com pyOpenSSL Distribution includes everything you need to
get started with SSL in Python.

It comes with an easy-to-use installer that includes the most recent
OpenSSL library versions in pre-compiled form, making your application
independent of OS provided OpenSSL libraries:

    http://www.egenix.com/products/python/pyOpenSSL/

pyOpenSSL is an open-source Python add-on that allows writing SSL/TLS-
aware network applications as well as certificate management tools:

    https://launchpad.net/pyopenssl/

OpenSSL is an open-source implementation of the SSL/TLS protocol:

    http://www.openssl.org/

________________________________________________________________________
NEWS

This new release of the eGenix.com pyOpenSSL Distribution updates the
included OpenSSL version to the latest OpenSSL 1.0.1h version and adds
a few more context options:

New in OpenSSL
--------------

 * Updated included OpenSSL libraries from OpenSSL 1.0.1h to 1.0.1i.
   See https://www.openssl.org/news/secadv_20140806.txt for a complete
   list of changes. Most fixes apply to the OpenSSL DTLS implementation,
   which pyOpenSSL currently does not support. The following fix is
   relevant for pyOpenSSL applications:

   - CVE-2014-3511: A flaw in the OpenSSL TLS server code allows a
     man-in-the-middle attacker to force a downgrade to TLS 1.0.

New in pyOpenSSL
----------------

 * Compiled pyOpenSSL with OPENSSL_LOAD_CONF to have the OpenSSL
   libs automatically load the openssl.cnf configuration file. This
   allows easy configuration of additional OpenSSL parameters and
   defaults, locations of certificate files, hardware engines, etc.
   without having to change the application code. Please see the
   documentation for details.

 * Updated the included CA root certificate bundles to Mozilla's
   2014-07-15 update.

pyOpenSSL / OpenSSL Binaries Included
-------------------------------------

In addition to providing sources, we make binaries available that
include both pyOpenSSL and the necessary OpenSSL libraries for all
supported platforms: Windows x86 and x64, Linux x86 and x64, Mac OS X
PPC, x86 and x64.

We've also added egg-file distribution versions of our eGenix.com
pyOpenSSL Distribution for Windows, Linux and Mac OS X to the
available download options. These make setups using e.g. zc.buildout
and other egg-file based installers a lot easier.

________________________________________________________________________
DOWNLOADS

The download archives and instructions for installing the package can
be found at:

    http://www.egenix.com/products/python/pyOpenSSL/

________________________________________________________________________
UPGRADING

Before installing this version of pyOpenSSL, please make sure that
you uninstall any previously installed pyOpenSSL version. Otherwise,
you could end up not using the included OpenSSL libs.

_______________________________________________________________________
SUPPORT

Commercial support for these packages is available from eGenix.com.
Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

________________________________________________________________________
MORE INFORMATION

For more information about the eGenix pyOpenSSL Distribution, licensing
and download instructions, please visit our web-site or write to
sales@...

Enjoy,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Aug 14 2014)
>>> 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/
________________________________________________________________________

::::: 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 11 Jul 10:05 2014

ANN: eGenix mx Base Distribution 3.2.8 (mxDateTime, mxTextTools, etc.)

________________________________________________________________________

ANNOUNCING

                   eGenix.com mx Base Distribution

             mxDateTime, mxTextTools, mxProxy, mxURL, mxUID,
                  mxBeeBase, mxStack, mxQueue, mxTools

                            Version 3.2.8

                Open Source Python extensions providing
                     important and useful services
                        for Python programmers.

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-mx-Base-Distribution-3.2.8-GA.html

________________________________________________________________________

ABOUT

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

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
Python.

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:

    http://www.egenix.com/products/python/mxBase/

________________________________________________________________________

NEWS

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 setup.py 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.

Fixes
-----

 * 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:

http://www.egenix.com/company/news/eGenix-mx-Base-Distribution-3.2.0-GA.html

For a full list of changes, please refer to the eGenix mx Base
Distribution change log and the change logs of the various included
Python packages.

    http://www.egenix.com/products/python/mxBase/changelog.html

________________________________________________________________________

UPGRADING

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.

http://www.egenix.com/company/news/eGenix-mx-Base-Distribution-3.2.0-GA.html

________________________________________________________________________

LICENSE

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.

This open source distribution package comes with full source code.

________________________________________________________________________

DOWNLOADS

The download archives and instructions for installing the packages can
be found on the eGenix mx Base Distribution page:

    http://www.egenix.com/products/python/mxBase/

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 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:

    http://www.egenix.com/products/python/mxBase/#Download

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.

________________________________________________________________________

SUPPORT

Commercial support for this product is available from eGenix.com.
Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

________________________________________________________________________

MORE INFORMATION

For more information on the eGenix mx Base Distribution, documentation
and installation notes, please visit our web-site:

    http://www.egenix.com/products/python/mxBase/

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.

Enjoy,--
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jul 11 2014)
>>> 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/
________________________________________________________________________
2014-07-21: EuroPython 2014, Berlin, Germany ...           10 days to go

::::: 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 9 Jul 09:40 2014

ANN: eGenix mxODBC 3.3.1 - Python ODBC Database Interface

________________________________________________________________________

ANNOUNCING

                         eGenix.com mxODBC

                   Python ODBC Database Interface

                           Version 3.3.1

    mxODBC is our commercially supported Python extension providing
         ODBC database connectivity to Python applications
            on Windows, Mac OS X, Unix and BSD platforms

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-mxODBC-3.3.1-GA.html

________________________________________________________________________

INTRODUCTION

mxODBC provides an easy-to-use, high-performance, reliable and robust
Python interface to ODBC compatible databases such as MS SQL Server,
MS Access, Oracle Database, IBM DB2 and Informix , Sybase ASE and
Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB and many more:

    http://www.egenix.com/products/python/mxODBC/

The "eGenix mxODBC - Python ODBC Database Interface" product is a
commercial extension to our open-source eGenix mx Base Distribution:

    http://www.egenix.com/products/python/mxBase/

________________________________________________________________________

NEWS

The 3.3.1 release of our mxODBC is a patch level release of our
popular Python ODBC Interface for Windows, Linux, Mac OS X and
FreeBSD. It includes these enhancements and fixes:

Installation Enhancements
-------------------------

 * Added web installer package to the Python Package Index (PyPI)
   which simplifies installation.

   In addition to the usual ways of installing mxODBC, 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-mxodbc via PyPI
   - pip install egenix-mxodbc via PyPI
   - egg reference in zc.buildout via PyPI
   - running "python setup.py 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.

Driver Compatibility
--------------------

SQL Server

 * Fixed a problem with custom errorhandlers set at connection time,
   which could result in warnings not being ignored during
   connect. SQL Server raises such warnings during connect, so this
   fix will restore mxODBC 3.2 behavior for SQL Server.

 * Documented a solution for a problem with the SQL Server 2012 parser
   complaining about not being able to deduce types of some operations
   using more than one bound variable, e.g. "col1 >= ? + ?".

Teradata

 * Improved the Teradata ODBC driver setup instructions to address
   some common gotchas when setting up mxODBC to work with these
   drivers.

 * Fixed a problem with Teradata and the test suite which resulted in
   an error "[Teradata][ODBC Teradata Driver] Beyond
   SQL_ACTIVE_STATEMENTS limit". The driver needs an explicit call to
   cursor.flush() to close any open result sets before running commits
   or rollbacks.

Misc
----

 * Fixed a problem in cursor.getcolattributes() that caused errors to
   be ignored.

 * Added better protection against ODBC driver bugs in getenvattr().

 * Fixed an attribute error when using the NamespaceRowFactory
   function.

 * Fixed a deprecation warning when using the NamespaceRowFactory
   function.

 * Prepared mxODBC for two digit Python patch level numbers,
   ie. 2.7.10.

 * Fixed prebuilt archives to also work correctly with easy_install.

 * Added dependency on egenix-mx-base, so that easy_install and pip
   automatically install the mx Base package as well.

For the full set of changes please check the mxODBC change log:

    http://www.egenix.com/products/python/mxODBC/changelog.html

________________________________________________________________________

FEATURES

mxODBC 3.3 was released on 2014-04-08. Please see the full
announcement for highlights of the 3.3 release:

    http://www.egenix.com/company/news/eGenix-mxODBC-3.3.0-GA.html

For the full set of features mxODBC has to offer, please see:

    http://www.egenix.com/products/python/mxODBC/#Features

________________________________________________________________________

EDITIONS

mxODBC is available in these two editions:

 * The Professional Edition, which gives full access to all mxODBC features.

 * The Product Development Edition, which allows including mxODBC in
   applications you develop.

For a complete overview of the available editions, please see the
product page:

    http://www.egenix.com/products/python/mxODBC/#mxODBCEditions

________________________________________________________________________

DOWNLOADS

The download archives and instructions for installing the package can
be found at:

    http://www.egenix.com/products/python/mxODBC/

In order to use the eGenix mxODBC package you will first need to
install the eGenix mx Base package:

    http://www.egenix.com/products/python/mxBase/

________________________________________________________________________

UPGRADING

Users are encouraged to upgrade to this latest mxODBC release to
benefit from the new features and updated ODBC driver support.

We have taken special care not to introduce backwards incompatible
changes, making the upgrade experience as smooth as possible.

Customers who have purchased mxODBC 3.3 licenses can continue to use
their licenses with this patch level release.

For upgrade purchases, we will give out 20% discount coupons going
from mxODBC 2.x to 3.3 and 50% coupons for upgrades from mxODBC 3.x to
3.3. Please contact the eGenix.com Sales Team with your existing
license serials for details for an upgrade discount coupon.

If you want to try the new release before purchase, you can request
30-day evaluation licenses by visiting our web-site

    http://www.egenix.com/products/python/mxODBC/#Evaluation

or writing to sales@..., stating your name (or the name of the
company) and the number of eval licenses that you need.

_______________________________________________________________________

SUPPORT

Commercial support for this product is available from eGenix.com.
Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

_______________________________________________________________________

INFORMATION

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 services and professional quality products for
    companies, Python users and developers.

PS: If you want to meet with eGenix at EuroPython 2014, please send an
email and we can arrange a meeting.

Enjoy,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jul 09 2014)
>>> 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/
________________________________________________________________________
2014-07-21: EuroPython 2014, Berlin, Germany ...           12 days to go

::::: 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 4 Jul 10:43 2014

eGenix at the EuroPython Conference 2014

________________________________________________________________________

                eGenix.com at the EuroPython Conference 2014

                             July 21-27 2014
                             Berlin, Germany
________________________________________________________________________

The EuroPython Conference (https://ep2014.europython.eu/) is the one
of the premier conferences for Python users and developers in
Europe. It is the second largest gathering of Python enthusiast around
the world. This year it is being held from July 21-27 in Berlin,
Germany.

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/EuroPython-Conference-2014.html

________________________________________________________________________
MEET UP WITH EGENIX AT EUROPYTHON

eGenix was one of the founding members of the EuroPython conference
team and played a major role in organizing the first EuroPython
conference in the year 2002.

Since then we have attended every EuroPython conference to meet up
face-to-face with the many people we know from the Python community
and the many people that we don't yet know from the community -- if
you are interested in meeting with us, please drop us a note so that
we can arrange a meeting at info@...

________________________________________________________________________
EGENIX TALKS AT EUROPYTHON

At this year's EuroPython, Marc-André Lemburg, CEO of eGenix, will be
giving a talk providing some insights into our experience with
large-scale database applications written in Python.

Advanced Database Programming with Python
-----------------------------------------

    Getting the best out of your database.

    The Python DB-API 2.0 (http://www.python.org/dev/peps/pep-0249/)
    provides a direct interface to many popular database backends. It
    makes interaction with relational database very straight forward
    and allows tapping into the full set of features these databases
    provide.

    The talk will cover advanced database topics which are relevant in
    production environments such as locks, distributed transactions
    and transaction isolation.

    Friday, 11:30 CEST, Room C01

    https://ep2014.europython.eu/en/schedule/sessions/104/

Enjoy,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jul 04 2014)
>>> 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/
________________________________________________________________________
2014-07-21: EuroPython 2014, Berlin, Germany ...           17 days to go

::::: 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 17 Jun 10:00 2014

ANN: eGenix PyRun - One file Python Runtime 2.0.0

________________________________________________________________________

ANNOUNCING

                 eGenix PyRun - One file Python Runtime

                            Version 2.0.0

         An easy-to-use single file relocatable Python run-time -
           available for Linux, Mac OS X and Unix platforms,
              with support for Python 2.6, 2.7 and now
                       **also for Python 3.4**.

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-PyRun-2.0.0-GA.html

________________________________________________________________________

INTRODUCTION

eGenix PyRun is our open source, one file, no installation version of
Python, making the distribution of a Python interpreter to run based
scripts and applications to Unix based systems as simple as copying a
single file.

eGenix PyRun's executable only needs 11MB for Python 2 and 13MB for
Python 3, but still supports most Python application and scripts - and
it can be compressed to just 3-4MB using upx, if needed.

Compared to a regular Python installation of typically 100MB on disk,
eGenix PyRun is ideal for applications and scripts that need to be
distributed to several target machines, client installations or
customers.

It makes "installing" Python on a Unix based system as simple as
copying a single file.

eGenix has been using the product internally in the mxODBC Connect
Server since 2008 with great success and decided to make it available
as a stand-alone open-source product.

We provide both the source archive to build your own eGenix PyRun, as
well as pre-compiled binaries for Linux, FreeBSD and Mac OS X, as 32-
and 64-bit versions. The binaries can be downloaded manually, or you
can let our automatic install script install-pyrun take care of the
installation: ./install-pyrun dir and you're done.

Please see the product page for more details:

    http://www.egenix.com/products/python/PyRun/

________________________________________________________________________

NEWS

This is a major release of eGenix PyRun. The most significant step
forward in this release is the addition of Python 3.4 support.

New Features
------------

 * Added Python 3.4 support to eGenix PyRun.

 * eGenix PyRun defaults to PYTHONIOENCODING = "utf-8:surrogateescape"
   for Python 3.4 to provide a better user experience.

 * Enabled the lib2to3 package to work with eGenix PyRun. This allows
   on-the-fly Python 3 conversions as used by e.g. the setuptools
   package to work with eGenix PyRun.

 * Frozen modules in eGenix PyRun now always have the __file__
   attribute set - unlike in standard Python This increases
   compatibility of pyrun with existing Python software. Submitted as
   http://bugs.python.org/issue21736

Enhancements / Changes
----------------------

 * Added work-around for bug in Python 3.4 modulefinder
   module. Submitted as http://bugs.python.org/issue21707

 * Added work-around for problem with logging package's use of the
   __file__ attribute. Submitted as http://bugs.python.org/issue21709

 * Added work-around for getting runpy.run_path() to work with frozen
   modules in Python 3. This is needed to be able to run packages and
   ZIP files directly from the command line. Submitted as
   http://bugs.python.org/issue21737

 * Turned our pkgutil.py patch to support frozen modules into a real
   patch instead of doing this dynamically. Submitted as
   http://bugs.python.org/issue21749

 * Removed support for Python 2.5 from eGenix PyRun.

install-pyrun Quick Install Enhancements
---------------------------------------------

eGenix PyRun includes a shell script called install-pyrun, which
greatly simplifies installation of PyRun. It works much like the
virtualenv shell script used for creating new virtual environments
(except that there's nothing virtual about PyRun environments).

    https://downloads.egenix.com/python/install-pyrun

With the script, an eGenix PyRun installation is as simple as running:

    ./install-pyrun targetdir

This will automatically detect the platform, download and install the
right pyrun version into targetdir.

We have updated this script since the last release:

 * Updated install-pyrun to default to eGenix PyRun 2.0.0 and its
   feature set.

 * install-pyrun will no longer install the latest versions of pip and
   setuptools due to recent incompatible changes in those
   packages. Instead, the script uses fixed defaults and makes it easy
   to override them.

 * install-pyrun now uses pip 1.4.1 and setuptools 2.1 per default
   instead of the latest versions for better backwards compatibility
   with packages not hosted on PyPI.

 * install-pyrun can optionally fetch the latest versions of pip and
   setuptools by using "latest" as version number for --pip-version
   and --setuptools-version.

 * install-pyrun script is now available in signed and hashed form for
   additional security.

For a complete list of changes, please see the eGenix PyRun Changelog:

    http://www.egenix.com/products/python/PyRun/changelog.html

________________________________________________________________________

LICENSE

eGenix PyRun 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 eGenix PyRun in both commercial and non-commercial settings
without fee or charge.

Please see our license page for more details:

    http://www.egenix.com/products/python/PyRun/license.html

The package comes with full source code.

________________________________________________________________________

DOWNLOADS

The download archives and instructions for installing eGenix PyRun can
be found at:

    http://www.egenix.com/products/python/PyRun/

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
other platforms, such as Solaris, AIX, HP-UX, etc.

_______________________________________________________________________

SUPPORT

Commercial support for this product is available from eGenix.com.
Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

________________________________________________________________________

MORE INFORMATION

For more information about eGenix PyRun, licensing and download
instructions, please visit our web-site:

    http://www.egenix.com/products/python/PyRun/

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
    specializing in expert project services and professional quality
    products for companies, Python users and developers.

Enjoy,

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jun 17 2014)
>>> 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/
________________________________________________________________________
2014-06-09: Released eGenix pyOpenSSL 0.13.3 ...  http://egenix.com/go57
2014-07-02: Python Meeting Duesseldorf ...                 15 days to go
2014-07-21: EuroPython 2014, Berlin, Germany ...           34 days to go

   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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 9 Jun 13:55 2014

ANN: eGenix pyOpenSSL Distribution 0.13.3.1.0.1.8

________________________________________________________________________
ANNOUNCING

                   eGenix.com pyOpenSSL Distribution

                         Version 0.13.3.1.0.1.8

             An easy-to-install and easy-to-use distribution
             of the pyOpenSSL Python interface for OpenSSL -
            available for Windows, Mac OS X and Unix platforms

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-pyOpenSSL-Distribution-0.13.3.1.0.1.8.html

________________________________________________________________________
INTRODUCTION

The eGenix.com pyOpenSSL Distribution includes everything you need to
get started with SSL in Python.

It comes with an easy-to-use installer that includes the most recent
OpenSSL library versions in pre-compiled form, making your application
independent of OS provided OpenSSL libraries:

    http://www.egenix.com/products/python/pyOpenSSL/

pyOpenSSL is an open-source Python add-on that allows writing SSL/TLS-
aware network applications as well as certificate management tools:

    https://launchpad.net/pyopenssl/

OpenSSL is an open-source implementation of the SSL/TLS protocol:

    http://www.openssl.org/

________________________________________________________________________
NEWS

This new release of the eGenix.com pyOpenSSL Distribution updates the
included OpenSSL version to the latest OpenSSL 1.0.1h version and adds
a few more context options:

New in OpenSSL
--------------

 * Updated included OpenSSL libraries from OpenSSL to 1.0.1h. See
   http://www.openssl.org/news/secadv_20140605.txt for a complete list
   of changes, most important:

   - CVE-2014-0224: An attacker can force the use of weak keying
     material in OpenSSL SSL/TLS clients and servers. This can be
     exploited by a Man-in-the-middle (MITM) attack where the attacker
     can decrypt and modify traffic from the attacked client and
     server.

   - CVE-2014-0221: By sending an invalid DTLS handshake to an OpenSSL
     DTLS client the code can be made to recurse eventually crashing
     in a DoS attack. Only applications using OpenSSL as a DTLS client
     are affected.

   - CVE-2014-3470: OpenSSL TLS clients enabling anonymous ECDH
     ciphersuites are subject to a DoS attack.

New in pyOpenSSL
----------------

 * Added the following new options for context.set_options():
   OP_TLSEXT_PADDING, OP_SAFARI_ECDHE_ECDSA_BUG,
   OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION,
   OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION.

 * Documented all supported context.set_options() options (to the
   extent possible using the OpenSSL documentation itself).

pyOpenSSL / OpenSSL Binaries Included
-------------------------------------

In addition to providing sources, we make binaries available that
include both pyOpenSSL and the necessary OpenSSL libraries for all
supported platforms: Windows x86 and x64, Linux x86 and x64, Mac OS X
PPC, x86 and x64.

We've also added egg-file distribution versions of our eGenix.com
pyOpenSSL Distribution for Windows, Linux and Mac OS X to the
available download options. These make setups using e.g. zc.buildout
and other egg-file based installers a lot easier.

________________________________________________________________________
DOWNLOADS

The download archives and instructions for installing the package can
be found at:

    http://www.egenix.com/products/python/pyOpenSSL/

________________________________________________________________________
UPGRADING

Before installing this version of pyOpenSSL, please make sure that
you uninstall any previously installed pyOpenSSL version. Otherwise,
you could end up not using the included OpenSSL libs.

_______________________________________________________________________
SUPPORT

Commercial support for these packages is available from eGenix.com.
Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

________________________________________________________________________
MORE INFORMATION

For more information about the eGenix pyOpenSSL Distribution, licensing
and download instructions, please visit our web-site or write to
sales@...

Enjoy,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Jun 09 2014)
>>> 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/
________________________________________________________________________
2014-05-28: Released mxODBC.Connect 2.1.0 ...     http://egenix.com/go56
2014-07-02: Python Meeting Duesseldorf ...                 23 days to go

::::: 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users

eGenix Team: M.-A. Lemburg | 28 May 10:14 2014

ANN: eGenix mxODBC Connect 2.1.0 - Python ODBC Database Interface

________________________________________________________________________
ANNOUNCING
                      eGenix.com mxODBC Connect

                    Python ODBC Database Interface

                            Version 2.1.0

 mxODBC Connect is our commercially supported client-server product for
       connecting Python applications to relational databases
                 in a truly platform independent way.

This announcement is also available on our web-site for online reading:
http://www.egenix.com/company/news/eGenix-mxODBC-Connect-2.1.0-GA.html

________________________________________________________________________
INTRODUCTION

The mxODBC Connect Database Interface for Python allows users to
easily connect Python applications to all major databases on the
market today in a highly portable, convenient and secure way.

Python Database Connectivity the Easy Way
-----------------------------------------

Unlike our mxODBC Python extension, mxODBC Connect is designed as
client-server application, so you no longer need to find production
quality ODBC drivers for all the platforms you target with your Python
application.

Instead you use an easy to install royalty-free Python client library
which connects directly to the mxODBC Connect database server over the
network.

This makes mxODBC Connect a great basis for writing cross-platform
multi-tier database applications and utilities in Python, especially
if you run applications that need to communicate with databases such
as MS SQL Server and MS Access, Oracle Database, IBM DB2 and Informix,
Sybase ASE and Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB and many
more, that run on Windows or Linux machines.

Ideal for Database Driven Client Applications
---------------------------------------------

By removing the need to install and configure ODBC drivers on the
client side and dealing with complicated network setups for each set
of drivers, mxODBC Connect greatly simplifies deployment of database
driven client applications, while at the same time making the network
communication between client and database server more efficient and
more secure.

For more information, please have a look at the mxODBC Connect product
page, in particular, the full list of available features.

For more information, please see the product page:

    http://www.egenix.com/products/python/mxODBCConnect/

________________________________________________________________________
NEWS

mxODBC Connect 2.1.0 is a new minor release of our successful mxODBC
Connect product. These are the changes compared to mxODBC Connect
2.0.5.

Update to the mxODBC 3.3 API
----------------------------

mxODBC Connect 2.1 upgrades the mxODBC Connect Client to the new
mxODBC 3.3. APIs and enhancements.

Stored Procedures

 * mxODBC Connect now has full support for input, output and
   input/output parameters in stored procedures and stored functions,
   allowing easy integration with existing databases systems.

User Customizable Row Objects

 * Added support for user customizable row objects by adding
   cursor/connection .rowfactory and .row constructor attributes. When
   set, these are used to wrap the normal row tuples returned by the
   .fetch*() methods into dynamically created row objects.

 * Added new RowFactory classes to support cursor.rowfactory and
   cursor.row. These allow dynamically creating row classes that
   provide sequence as well as mapping and attribute access to row
   fields - similar to what namedtuples implements, but more efficient
   and specific to result sets.

Fast Cursor Types

 * Switched to forward-only cursor types for all database backends,
   since this provides a much better performance for MS SQL Server and
   IBM DB2 drivers.

 * Added a new .cursortype attribute to allow adjusting and inspecting
   the ODBC cursor type to be used for an mxODBC Connect cursor
   object. Default is to use forward-only cursors, but mxODBC also
   support several other useful cursor types such as static cursors
   with full support for result set scrolling.

More new Features

 * Enhanced cursor.prepare() to allow querying cursor.description
   right after the prepare step and not only after calling a
   cursor.execute*() method.

 * Added iterator/generator support to .executemany(). The parameters
   list can now be an iterator/generator, if needed.

 * Added new connection.dbapi property to easily access module level
   symbols from the connection object.

 * Timestamp seconds fraction resolution is now determined from the
   scale of a datetime/timestamp SQL column, using the
   connection.timestampresolution as lower bound, when using SQL type
   binding. In Python type binding mode, the
   connection.timestampresolution determines the scale with which a
   variable is bound. This allows for greater flexibility when dealing
   with database backends that don't provide full nano-second second
   resolution, such as e.g. MS SQL Server.

 * mxODBC Connect accepts Unicode string values for
   date/time/datetime/timestamp column types in SQL type binding
   mode. Previous versions already did in Python type binding mode.

 * mxODBC Connect uses unicode(obj, encoding) semantics when binding
   Python objects to SQLWCHAR Unicode database parameters to provide
   better compatibility with Python objects. Additionally, it ignores
   the encoding in case obj is a number, to avoid conversion errors.

 * Added new cursor.encoding attribute. This gets its default values
   from the connection the cursor was created on and allows for
   per-cursor encoding settings.

 * Added cursor.bindmethod which inherits from connection.bindmethod
   when creating the cursor. This allows adjusting the variable bind
   method on a per-cursor basis, rather than only on a per connection
   basis as in previous mxODBC Connect versions.

mxODBC Connect API Enhancements
-------------------------------

 * The SQL lookup object is cached on the client side to avoid
   frequent roundtrips when using symbols which are needed for stored
   procedures with input/output parameters.

 * The SQL lookup object received support for new ODBC 3.8 symbols and
   values, including driver specific symbols used by the MS SQL Server
   Native Client and IBM DB2 ODBC drivers.

 * Improved the server side object management to simplify client side
   garbage collection considerations. Even though we still encourage
   using explicit garbage collection of cursors, connections and
   server sessions on the client side, mxODBC Connect Server will now
   handle most situations even without these explicit calls.

Asynchronous Processing
-----------------------

 * Tested with the latest gevent and greenlet packages. mxODBC Connect
   Client will happily work together with the asynchronous libraries
   gevent. All it takes is a single configuration entry in the client
   side config file.

Security Enhancements
---------------------

 * Changed the way passwords are stored in the server's
   authorized-users.txt file in order to make password storage more
   secure.

 * User authentication now uses salted SHA-256 password hashes when
   transferring the login data from the client to the server. This
   provides better protection when using plain text client server
   setups and additional security over SSL network connections.

ODBC Driver/Manager Compatibility Enhancements
----------------------------------------------

unixODBC

 * mxODBC Connect Server is now built against unixODBC 2.3.2 on Linux.

DataDirect

 * Updated the DataDirect binding to version 7.1.2 of the DataDirect
   ODBC manager on Linux.

Oracle

 * Added work-around for Oracle Instant Client to be able to use
   integer output parameters.

 * Added a work-around for Oracle Instant Client to have it return
   output parameters based on the input placeholder Python parameter
   types. It would otherwise return all parameters as strings.
   Disabled a test for Oracle Instant Client which tries to set a
   pre-connect connection option for timeouts, since the ODBC driver
   segfaults with this option.

MS SQL Server

 * mxODBC Connect Server 2.1 defaults to 100ns
   connection.timestampresolution for MS SQL Server 2008 and later,
   and 1ms resolution for MS SQL server 2005 and earlier. This
   simplifies interfacing to SQL Server timestamp columns by
   preventing occasional precision errors.

 * Tested mxODBC Connect Server successfully with new MS SQL Server
   Native Client 11 for Linux. Unicode connection strings still don't
   work, but everything else does.

 * Added documentation on how to use Kerberos with mxODBC and SQL
   Server for authentication on both Windows and Linux to the mxODBC
   User Manual.

 * Added note about problems of the FreeTDS ODBC driver dealing with
   TIME and DATE columns.

Sybase ASE

 * Added work-around for the Sybase ASE ODBC driver, which doesn't
   always pass back NULL correctly to mxODBC Connect Server on 64-bit
   Unix systems.

 * Changed the variable type binding mode default for the Sybase ASE
   ODBC driver from Python type binding to SQL type binding, which
   resolves issues with e.g. the Unicode support for that driver.

 * Added note about a segfault problem with the Sybase ASE 15.7 ODBC
   driver which is caused by the driver corrupting the heap.

IBM DB2

 * Added work-around for the IBM DB2 ODBC driver, which doesn't always
   pass back NULL correctly to mxODBC Connect Server on 64-bit Unix
   systems.

PostgreSQL

 * Added work-around to force Python type binding for the PostgreSQL
   ODBC drivers. More recent versions of the driver report supporting
   SQL type binding, but they don't implement it.

 * Added work-around to have PostgreSQL ODBC drivers properly work
   with binary data for BYTEA columns.

MySQL

 * mxODBC Connect Server now supports native Unicode with the recent
   MySQL ODBC drivers - provided you use the Unicode variants of the
   drivers.

 * Changed the default binding mode for MySQL ODBC drivers to Python
   type binding. This works around a problem with date/time values
   when talking to MySQL 5.6 servers.

For the full set of changes, including those of the 2.0 series of
mxODBC Connect, please check the mxODBC Connect change log.

    http://www.egenix.com/products/python/mxODBCConnect/changelog.html

________________________________________________________________________
UPGRADING

You are encouraged to upgrade to this latest mxODBC Connect release.
When upgrading, please always upgrade both the server and the client
installations to the same version - even for patch level releases.

We will give out 20% discount coupons for upgrade purchases going from
mxODBC Connect Server 1.x to 2.1 and 50% coupons for upgrades from
mxODBC 2.x to 2.1. Please contact the eGenix.com Sales Team
(sales@...) with your existing license serials for details.

Users of our stand-alone mxODBC product will have to purchase new
licenses from our online shop in order to use mxODBC Connect.

You can request free 30-day evaluation licenses by visiting our
web-site or writing to sales@..., stating your name (or the
name of the company) and the number of eval licenses that you need.

    http://www.egenix.com/products/python/mxODBCConnect/#Evaluation

________________________________________________________________________
DOWNLOADS

The download archives as well as instructions for installation and
configuration of the product can be found on the product page:

    http://www.egenix.com/products/python/mxODBCConnect/

If you want to try the package, jump straight to the download
instructions:

    https://cms.egenix.com/products/python/mxODBCConnect/#Download

Fully functional evaluation licenses for the mxODBC Connect Server are
available free of charge:

    http://www.egenix.com/products/python/mxODBCConnect/#Evaluation

mxODBC Connect Client is always free of charge.

_______________________________________________________________________
SUPPORT

Commercial support for this product is available from eGenix.com.

Please see

    http://www.egenix.com/services/support/

for details about our support offerings.

_______________________________________________________________________
INFORMATION

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.

Enjoy,
-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, May 28 2014)
>>> 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/
________________________________________________________________________

::::: 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
               http://www.egenix.com/company/contact/

_______________________________________________________________________
eGenix.com User Mailing List                     http://www.egenix.com/
https://www.egenix.com/mailman/listinfo/egenix-users


Gmane