[Python-modules-commits] [pymssql] 02/06: Import pymssql_2.1.1+dfsg.orig.tar.gz

Geoffrey Thomas geofft-guest at moszumanska.debian.org
Wed Nov 18 18:18:14 UTC 2015


This is an automated email from the git hooks/post-receive script.

geofft-guest pushed a commit to branch 2.1.1
in repository pymssql.

commit 8e0065e4d92a88a538ed07f488cb3b37448aefb9
Author: Geoffrey Thomas <geofft at hudson-trading.com>
Date:   Wed Nov 18 10:56:08 2015 -0500

    Import pymssql_2.1.1+dfsg.orig.tar.gz
---
 .bzrignore                          |    4 +
 .gitignore                          |   13 +
 .hgeol                              |   28 +
 .hgignore                           |   19 +
 .pyrex/Pyrex/Distutils/__init__.py  |    1 +
 .pyrex/Pyrex/Distutils/build_ext.py |    1 +
 .pyrex/Pyrex/__init__.py            |    1 +
 .travis.yml                         |   30 +
 ChangeLog                           | 1062 +++++++++++-----
 ChangeLog_highlights.rst            |  299 +++++
 lgpl.txt => LICENSE                 | 1008 +++++++--------
 MANIFEST                            |   17 -
 PKG-INFO                            |  395 +++++-
 README                              |   15 -
 README.rst                          |   46 +
 README_building_and_developing.rst  |  165 +++
 TODO                                |   14 -
 _mssql.pxd                          |   63 +
 _mssql.pyx                          | 1948 +++++++++++++++++++++++++++++
 bin/build_freetds.sh                |   48 +
 bin/hudson.sh                       |   87 ++
 bin/travis_env.sh                   |   26 +
 cpp_helpers.h                       |   40 +
 docs/Makefile                       |  177 +++
 docs/_mssql_examples.rst            |  141 +++
 docs/building_and_developing.rst    |    4 +
 docs/changelog.rst                  |    8 +
 docs/conf.py                        |  289 +++++
 docs/faq.rst                        |  336 +++++
 docs/freetds.rst                    |   66 +
 docs/freetds_and_dates.rst          |   56 +
 docs/history.rst                    |   54 +
 docs/index.rst                      |  115 ++
 docs/intro.rst                      |   65 +
 docs/make.bat                       |  242 ++++
 docs/migrate_1_x_to_2_x.rst         |  167 +++
 docs/pymssql_examples.rst           |  204 +++
 docs/ref/_mssql.rst                 |  391 ++++++
 docs/ref/pymssql.rst                |  323 +++++
 docs/release_notes.rst              |   99 ++
 docs/todo.rst                       |    8 +
 ez_setup.py                         |  276 +++++
 mssqldbmodule.c                     | 2335 -----------------------------------
 nagios-plugin/check_mssql           |    0
 print_versions.py                   |   11 +
 pymssql.egg-info/PKG-INFO           |  395 +++++-
 pymssql.egg-info/SOURCES.txt        |  102 +-
 pymssql.py                          |  620 ----------
 pymssql.pyx                         |  692 +++++++++++
 pymssql_version.h                   |    1 +
 pytest.ini                          |   12 +
 scripts/memmonitor.py               |   34 +
 scripts/memtest.py                  |   13 +
 scripts/memtest.sh                  |    4 +
 setup.cfg                           |    5 +
 setup.py                            |  580 +++++++--
 sqlfront.pxd                        |  656 ++++++++++
 tests/__init__.py                   |    1 +
 tests/conftest.py                   |   66 +
 tests/helpers.py                    |  453 +++++++
 tests/run_sqlalchemy_tests.py       |   63 +
 tests/test_config.py                |  104 ++
 tests/test_connection_as_dict.py    |   42 +
 tests/test_connections.py           |  148 +++
 tests/test_context_managers.py      |   44 +
 tests/test_debug_queries.py         |   42 +
 tests/test_err_handle.py            |   83 ++
 tests/test_green.py                 |  136 ++
 tests/test_pymssql.py               |  216 ++++
 tests/test_queries.py               |  114 ++
 tests/test_sprocs.py                |  492 ++++++++
 tests/test_sqlalchemy.py            |   59 +
 tests/test_threaded.py              |  111 ++
 tests/test_types.py                 |  278 +++++
 tests/test_unicode.py               |   24 +
 tests/test_user_msghandler.py       |  142 +++
 tests/test_utils.py                 |  180 +++
 tests/tests.cfg.tpl                 |   25 +
 tox.ini                             |   26 +
 79 files changed, 12696 insertions(+), 3964 deletions(-)

diff --git a/.bzrignore b/.bzrignore
new file mode 100644
index 0000000..26834b7
--- /dev/null
+++ b/.bzrignore
@@ -0,0 +1,4 @@
+build
+_mssql.c
+pymssql.c
+tests/tests.cfg
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..36cba85
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,13 @@
+build
+*.c
+*.so
+a.out
+tmp/
+tests/tests.cfg
+*.venv
+*.pyc
+.tox
+dist
+*.egg
+*.egg-info
+docs/_build
diff --git a/.hgeol b/.hgeol
new file mode 100644
index 0000000..9255643
--- /dev/null
+++ b/.hgeol
@@ -0,0 +1,28 @@
+[patterns]
+**.html_tmpl = native
+**.css = native
+**.js = native
+**.py = native
+**.txt = native
+**.html = native
+**.py_tmpl = native
+**.cfg = native
+**.in_tmpl = native
+**.tpl = native
+MANIFEST.in = native
+**.sql = native
+**.php = native
+**.xml = native
+**.yaml = native
+**.bat = native
+**.ini = native
+**.c = native
+**.mako = native
+**.rst = native
+**.dtd = native
+**.xsl = native
+**.log = native
+
+
+[eol]
+only-consistent = False
diff --git a/.hgignore b/.hgignore
new file mode 100644
index 0000000..a6473a7
--- /dev/null
+++ b/.hgignore
@@ -0,0 +1,19 @@
+syntax: glob
+build/*
+*.pyc
+*komodo*
+*.c
+dist/*
+*.egg-info*
+tests/tmp
+tests/tests.cfg
+*.o
+a.out
+*.so
+dist
+*.pyd
+*.swp
+*.egg
+.tox
+SQLAlchemy-*/
+SQLAlchemy-*.tar.gz
diff --git a/.pyrex/Pyrex/Distutils/__init__.py b/.pyrex/Pyrex/Distutils/__init__.py
new file mode 100644
index 0000000..51c8e16
--- /dev/null
+++ b/.pyrex/Pyrex/Distutils/__init__.py
@@ -0,0 +1 @@
+# work around broken setuptools monkey patching
diff --git a/.pyrex/Pyrex/Distutils/build_ext.py b/.pyrex/Pyrex/Distutils/build_ext.py
new file mode 100644
index 0000000..4f846f6
--- /dev/null
+++ b/.pyrex/Pyrex/Distutils/build_ext.py
@@ -0,0 +1 @@
+build_ext = "yes, it's there!"
diff --git a/.pyrex/Pyrex/__init__.py b/.pyrex/Pyrex/__init__.py
new file mode 100644
index 0000000..51c8e16
--- /dev/null
+++ b/.pyrex/Pyrex/__init__.py
@@ -0,0 +1 @@
+# work around broken setuptools monkey patching
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..f5836a2
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,30 @@
+language: python
+python:
+- 2.6
+- 2.7
+- 3.3
+- 3.4
+before_install:
+- sudo apt-get install freetds-dev
+- pip install --use-mirrors pytest SQLAlchemy
+- pip install --upgrade pip setuptools  # Upgrade pip and setuptools to get ones with `wheel` support
+- pip install Sphinx sphinx-rtd-theme
+- pip --version
+- pip install --use-wheel Cython
+- "if [[ $TRAVIS_PYTHON_VERSION == '2.6' ]]; then pip install unittest2; fi"
+install:
+- python setup.py install
+script:
+- . bin/travis_env.sh
+- echo "\$PYMSSQL_TEST_DATABASE = \"$PYMSSQL_TEST_DATABASE\""
+- py.test -v
+- cd docs && test -z "$(make SPHINXOPTS='-q' html 2>&1 | egrep -w 'SEVERE:|ERROR:')"
+branches:
+  except:
+    - 1.0
+env:
+  global:
+  - secure: KQ7dawxyyp+skShD+iIT+D6qVaeKZVeZXDM+kpA5hvZNdDMI9iVSAUbVlg7Al26l18cSPCxkYNAsi1N4vsD7x0wGjsEAhC6mpytkc1Igwv0OppmjZI5BhxJWsGPEogzk78HM8JALG4SNhW3xGB0IQtqcV1GogbYmRqw+IDriGm0=
+  - secure: bjCYROweKNsg7iZG4hyte7EkulP7ubENHQvOvZ6a4ojtj4AtorcP2G5ltq6wfVFbFCnsVc04ePujZx4PgDGxHnexTZkVhhwI66O/N482mytdCytje2flhXgQe8A9yw9FBYITm/BNjmTvTq9+ZKQYomLgxeYaJk5DcB5LFSB2Qns=
+  - secure: P62aB5u8xOCZP5qX3lHZuQJNMrkMJCqwboRhtsxJz0m5LY77KO26xIb4DygnUJplx9wlWveZZ5u6bfzrDVkMECZ6jd195xWIwrbDokg8zGCVjcOEOCOGLdCUXChoD8wqYMuVMlefJxeR+w8gFPFbCyJjGeq1sKxsowUxH5HueNE=
+  - secure: bMxRxhLnzxHyouQeQE6Ap8e6m70j5J2WKxcjRITKXEPN6UFWL+h+/EJbGKTG33g7ETKiCez8zyAtXQy8oGeHVbjCuvUhSIolI+wm/H7Rlo7FeoBH/wtbLutOsWyfYLqThc4MQZB/GDN/szzlN+H7SI4ciXSpaE5qWMXQIHrvYzg=
diff --git a/ChangeLog b/ChangeLog
index 3c8b23a..b7be7b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,275 +1,787 @@
-Tue Apr 23 23:00:00 2009  Andrzej Kukula <akukula at gmail.com>
-        + bugfix: fixed rare quoting bug in select_db()
-        + feature: added 'max_conn' parameter to pymssql.connect() and
-          _mssql.connect() which defaults to 25, thanks Daniel Watrous
-          <dwmaillist at gmail.com>
-        * nagios-plugin update - thanks Josselin Mouette <joss at debian.org>:
-          + Include a -P port option, to avoid having to passing it with the
-            host name
-          + Fix the encoding of the comments; utf-8 is the declared encoding
-            of the file and must be followed
-          + Fix a typo in the SQL syntax
-          + Connect explicitly to the "master" database (required since 1.0.0)
-          + Improve perfdata output.
-        * version 1.0.2
-
-Tue Apr 21 22:56:00 2009  Andrzej Kukula <akukula at gmail.com>
-        * mssqldbmodule.c:
-          + bugfix in format_and_run_query(): query strings were sometimes
-            overwritten with garbage due to DECREF in wrong place; thanks
-            Igor Nazarenko <igor.n.nazarenko at gmail.com>
-          + bugfix in get_result(): if a query batch contained DECLARE or
-            possibly other T-SQL statements, no results were returned
-            thanks Kay Schluehr <schluehrk at users.sourceforge.net>
-          + bugfix in execute_scalar(): check if there are any columns in result
-          + bugfix: check for FAIL after each dbnextrow()
-          + feature: Add support for bigint - #2660972; thanks Alexandr
-            Zamaraev <shura_zam at users.sourceforge.net>
-        * pymssql.c:
-          + bugfix in execute(): if execute is called without second argument,
-            don't treat '%' in query string as formatting character; restored
-            compatibility with common sense and with pymssql < 1.0.0; thanks
-            Corey Bertram <corey.bertram at monitoredsecurity.com>,
-            Wes McKinney <wesmckinn at gmail.com>
-          + feature: it is possible to specify 'as_dict' to pymssql.connect
-            and rows will be returned as dictionaries instead of tuples;
-            thanks Daniel Watrous <dwmaillist at gmail.com>
-
-Thu Jan 30 18:36:00 2009  Andrzej Kukula <akukula at gmail.com>
-	* mssqldbmodule.c:
-	  + Pyssize_t error on x64 - thanks Josselin Mouette <joss at debian.org>
-	  + critical charset updates, thanks Josselin Mouette <joss at debian.org>
-	  + more Py_ssize_t updates, further code cleanups
-	  + fixed some compiler warnings
-	* pymssql.py:
-	  + execute() failed, thanks Josselin Mouette <joss at debian.org>
-	  + critical charset updates, thanks Josselin Mouette <joss at debian.org>
-	  + removed warnings, users don't want them and they are not 'MUST'
-	    priority in DB-API spec
-	* nagios-plugin: introducted Nagios plugin, thanks Julien Blache
-	  and Josselin Mouette
-	* version 1.0.1
-
-Thu Jan 29 19:23:00 2009  Andrzej Kukula <akukula at gmail.com>
-	* version 1.0.0
-	* so many changes I'll not put them here, I'll document
-	  changes from now on.
-
-Mon Sep 25 20:18:00 2006  Andrzej Kukula <akukula at gmail.com>
-	* setup.py: fix for Fink (http://Fink.SF.Net) under OS X (thanks
-	  Terrence Brannon <metaperl at gmail.com>)
-
-Sun Sep 24 10:44:00 2006  Andrzej Kukula <akukula at gmail.com>
-	* setup.py:
-	  + it can now dynamically determine the path to SQL 2000 Developer
-	    Tools, if win32api and win32con modules are available
-	  + simple Python version check to prevent most frequently asked
-	    question
-	  + version 0.8.0
-
-Wed Sep 13 01:20:00 2006  Andrzej Kukula <akukula at gmail.com>
-	* mssqldbmodule.c:
-	  + corrected misspellings in docstrings
-	  + fixed segfault on connection close with Python 2.5; thanks
-	    Justin Francis <jfrancis at pivotalpayments.com>
-	* pymssql.py:
-	  + fixed two minor DB-API incompatibilities (thanks Matthew Good
-	    <matt at matt-good.net>)
-	  + fixed datetime quoting (thanks Jan Finell <jfinell at regionline.fi>)
-	* pymssql should be able to build on cygwin (thanks
-	  rob at robnet.com)
-	* docstring fixes, webpage doc updates
-
-Tue May 15 03:18:00 2006  Jooncheol Park <exman at users.sourceforge.net>
-	* setup.py, PKG-INFO, README: license change to LGPL
-
-Wed Mar 15 08:18:00 2006  Andrzej Kukula <akukula at users.sourceforge.net>
-	* pymssql.py: fixed datetime issue (thanks Jan Finell
-	  <jfinell at regionline.fi>)
-
-Fri Feb 24 16:11:00 2006  Andrzej Kukula <akukula at users.sourceforge.net>
-	* mssqldbmodule.c: fixed typos in docstrings (thanks Konstantin
-	  Veretennicov)
-
-Tue Dec 27 15:14:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-	* mssqldbmodule.c: bug fixes, improvements and cleanups:
-	  + implemented set_login_timeout() and set_query_timeout() functions;
-	  + eliminated unnecessary ODBC code
-	  + cleaned up exception code and improved exception handling,
-	    SF bug #1335560
-	  + web page now correctly mentions FreeTDS 0.63 as the minimal
-	    required version
-	  + stdmsg() method is now deprecated; all errors are concatenated
-	    in errmsg()
-	  + implemented min_error_severity: all errors at or above that
-	    level will raise the exception; if the severity is lower, they
-	    will just accumulate in errmsg()
-	  + added setting coltype to NUMBER for float types (found by
-	    Jakub Labath)
-	* setup.py:
-	  + reincarnated ntwdblib.dll which turned out to be redistributable
-	    after all; pymssql includes the latest version that allows
-	    connecting to SQL 2005; eliminated some stupid notes from the
-	    web page and will ease set up process for users
-	* apitest_mssql.py: new file
-	  + provided by Jakub Labath, this file performs some basic DB-API
-	    compliance tests; it immediately triggered the unicode bug
-	* version 0.7.4
-
-Sat Oct 22 19:41:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-	* mssqldbmodule.c: multithreading improvements - from now on pymssql
-	  is thread-safe, it releases GIL in proper places; idea and initial
-	  patch by John-Peter Lee (thanks very much!)
-
-Mon Sep 5 23:29:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-	* setup.py: fixed an installation issue regarding importing pymssql
-	  that imports _mssql which isn't installed, and blows up with
-	  AttributeError... (thanks Vsevolod Stakhov)
-	* version 0.7.3
-
-Mon Sep 5 00:32:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-	* version 0.7.2
-
-Sun Sep 4 23:12:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: improvements and cleanups:
-	  + improved error handling: if the db function fails, the exception
-	    is thrown automatically and immediately; no need to check
-	    return value of conn.query(), just catch _mssql.error
-	  + improved error handling: it is possible that MS SQL calls message
-	    handler twice; now _mssql catches and reports both of them at once
-	  + improved error handling: in some cases _mssql.query() returns
-	    success but the results are invalid; now it is handled properly
-	    (example "SELECT CAST(1234.5678 AS NUMERIC(4,2))")
-	  + added proper connection initialization: a number of SET statements
-	    are executed upon connection setup to set sensible SQL behaviour;
-	    see source for details; one needs to unset them if needed
-	  + implemented min_{message|error}_severity as it is in php_mssql
-	    to ignore unimportant errors; it's work in progress
-	  + new function rmv_lcl() initially by Mark Pettit, to strip locale
-	    crap from MONEY values converted to SQLCHAR while generating
-	    Decimal object
-	  + other small fixes, improvements and janitorial work
-
-Tue Aug 30 00:16:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: new features:
-	  + large numbers (DECIMAL, NUMERIC, MONEY, SMALLMONEY) are returned
-	    as Decimal object -- this helps maintain accuracy; thanks to
-	    Mark Pettit for help
-	  + COMPUTE clauses are supported (it wouldn't fetch data for those
-	    columns before)
-	  + ROWID type has been removed from _mssql module
-	  + new type DECIMAL to denote Decimal objects in result set
-
-Mon Aug 29 21:59:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: some improvements:
-	  + BIT values are returned as Python bool objects, suggested by
-	    Mark Pettit
-	  + close() method returns None on success (not to be used at all)
-	    and throws exception on error
-	  + fixed use of uninitialized value when parsing SMALLDATETIME
-	  + another round of performance improvements in GetRow() - eliminated
-	    unnecessary data conversions and unneeded DB-Lib calls
-	  + janitorial fixes
-
-Mon Aug 22 04:35:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: massive diff:
-	  + fixed bug with fetching query results of some data types;
-	    found by Mark Pettit
-	  + fixed IndexError when query returns no rows; patch by Jakub Labath
-	  + rewritten function GetRow() that fetches query results: performance
-	    improvements, better handling of result data types; datetime
-	    is returned as datetime object instead of string (it's more
-	    consistent with other values -- and more pythonic :)
-	  + eliminated DetermineRowSize()
-	  + cleanups: _mssql_init() further improvements w.r.t. Python API
-	  + janitorial fixes
-	  + added licensing information
-	* pymssql.py: docstring changed to look nicer with help()
-	* version 0.7.2
-
-Thu Aug 11 02:12:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: improved module init function: added doc string,
-	  made compliant with Python 2.0+ module interface (there are no more
-	  coredumps on help())
-	* mssqldbmodule.c: documented that _mssql.connect() is not portable
-	  between FreeTDS-dependent platforms and Windows platforms; documented
-	  host:port usage
-
-Sat Jul 23 14:20:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: eliminated problems with Python exiting upon
-	  invalid login credentials with FreeTDS - the culprit was INT_EXIT
-	  and FreeTDS setting DBDEAD
-	* mssqldbmodule.c: added better error messages (esp. on Windows)
-	* mssqldbmodule.c: added msg_handler and err_handler debugging
-	* 0.7.1 packages re-released
-
-Fri Jul 22 03:19:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: major change; module revamped to support some
-	  more builtin Python features; some redundant code removed; memset()
-	  removed as there were no benefits but performance decrease
-	* mssqldbmodule.c: help(_mssql) works; help for conn object works too
-	* pymssql.py: _quote: removed escaping backslash -- with MSSQL it is
-	  only needed to escape single quotes by duplicating them
-	* pymssql.py: pymssqlCnx class: added a few checks to properly support
-	  DB-API 2.0 (see .close() in PEP 249)
-	* version 0.7.1
-
-Wed Jul 20 22:12:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: removed the workaround for date issue; there were
-	  more problems than benefits
-	* mssqldbmodule_tds.c: removed
-	* some more cleanups and corrections
-
-Tue Jul 19 14:23:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: major change; many portability problems fixed
-	* mssqldbmodule.c: eliminated port setting; this is job for freetds.conf
-	* mssqldbmodule_tds.c: module to get FreeTDS compile-time settings
-	* build fixes; now it builds cleanly on FreeBSD, Linux and Windows
-	* version 0.7.0
-
-Mon Jul 18 15:21:00 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* mssqldbmodule.c: fix build on Windows: changed MS_WIN32 to MS_WINDOWS
-	  reported by Mirek Rusin <mirek.rusin at onet.pl>
-	* mssqldbmodule.c: many small fixes and cleanups; janitorial fixes;
-	  indentation using indent(1L)
-	* ChangeLog fix! 'mysql' was mentioned instead of 'mssql'...
-
-Fri Feb 25 02:15:01 2005  Andrzej Kukula <akukula at users.sourceforge.net>
-
-	* Fix build on Windows with Visual Studio .NET 2003
-	  and MS SQL Server 2000 SP3a
-	* mssqldbmodule.c: Fix compile error with Visual Studio .NET 2003
-	* mssqldbmodule.c: Add detection/workaround for date issue caused by
-	  different dbdatecrack() prototypes
-	* README.freetds: describe dbdatecrack()-related issue
-
-Thu Feb 24 02:03:14 2005  Alejandro Dubrovsky  <alito at organicrobot.com>
-
-	* Export column type names
-	* mssqldbmodule.c:  Return column type information for headers
-	* Use type information to make cursor.description conform to API 2
-
-2005-02-17  Alejandro Dubrovsky  <alito at organicrobot.com>
-
-	* Apply patch by Rob Nichols to get cursor.description closer to API 2 compliance
-
-2005-02-08  Alejandro Dubrovsky  <alito at organicrobot.com>
-
-	* Message changes in mssqldbmodule.c (typos, grammar, etc)
-
-2005-02-07  Alejandro Dubrovsky  <alito at organicrobot.com>
-
-	* Added ChangeLog
-	* API Change:  add 6th parameter 'port' to connect
-	* Don't close connection on cursor close (noted by Alberto Pastore on the sourceforge project page)
-	* Make cursor.fetchone comply with DB-SIG return a tuple, not a list of tuples (report and patch by Chris Curvey)
+Change Log
+==========
+
+Version 2.1.1 - 2014-11-25 - Ramiro Morales
+===========================================
+
+Features
+--------
+
+- Custom message handlers (GH-139)
+
+  The DB-Library API includes a callback mechanism so applications can provide
+  functions known as *message handlers* that get passed informative messages
+  sent by the server which then can be logged, shown to the user, etc.
+
+  ``_mssql`` now allows you to install your own *message handlers* written in
+  Python. See the ``_msssql`` examples and reference sections of the
+  documentation for more details.
+
+  Thanks Marc Abramowitz.
+
+- Compatibility with Azure
+
+  It is now possible to transparently connect to `SQL Server instances`_
+  accessible as part of the Azure_ cloud services.
+
+  .. note:: If you need to connect to Azure make sure you use FreeTDS 0.91 or
+            newer.
+
+- Customizable per-connection initialization SQL clauses (both in ``pymssql``
+  and ``_mssql``) (GH-97)
+
+  It is now possible to customize the SQL statements sent right after the
+  connection is established (e.g. ``'SET ANSI_NULLS ON;'``). Previously
+  it was a hard-coded list of queries. See the ``_mssql.MSSQLConnection``
+  documentation for more details.
+
+  Thanks Marc Abramowitz.
+
+- Added ability to handle instances of ``uuid.UUID`` passed as parameters for
+  SQL queries both in ``pymssql`` and ``_mssql``. (GH-209)
+
+  Thanks Marat Mavlyutov.
+
+- Allow using `SQL Server autocommit mode`_ from ``pymssql`` at connection
+  opening time. This allows e.g. DDL statements like ``DROP DATABASE`` to be
+  executed. (GH-210)
+
+  Thanks Marat Mavlyutov.
+
+- Documentation: Explicitly mention minimum versions supported of Python (2.6)
+  and SQL Server (2005).
+
+- Incremental enhancements to the documentation.
+
+.. _SQL Server instances: http://www.windowsazure.com/en-us/services/sql-database/
+.. _Azure: https://www.windowsazure.com/
+.. _SQL Server autocommit mode: http://msdn.microsoft.com/en-us/library/ms187878%28v=sql.105%29.aspx
+
+Bug fixes
+---------
+
+- Handle errors when calling Stored Procedures via the ``.callproc()`` pymssql
+  cursor method. Now it will raise a DB-API ``DatabaseException``; previously
+  it allowed a ``_mssql.MSSQLDatabaseException`` exception to surface.
+
+- Fixes in ``tds_version`` ``_mssql`` connections property value
+
+  Made it work with TDS protocol version 7.2. (GH-211)
+
+  The value returned for TDS version 7.1 is still 8.0 for backward
+  compatibility (this is because such feature got added in times when
+  Microsoft documentation labeled the two protocol versions that followed 7.0
+  as 8.0 and 9.0; later it changed them to 7.1 and 7.2 respectively) and will
+  be corrected in a future release (2.2).
+
+- PEP 249 compliance (GH-251)
+
+  Added type constructors to increase compatibility with other libraries.
+
+  Thanks Aymeric Augustin.
+
+- pymssql: Made handling of integer SP params more robust (GH-237)
+
+- Check lower bound value when convering integer values from to Python to SQL
+  (GH-238)
+
+Internals
+---------
+
+- Completed migration of the test suite from nose to py.test.
+
+- Added a few more test cases to our suite.
+
+- Tests: Modified a couple of test cases so the full suite can be run against
+  SQL Server 2005.
+
+- Added testing of successful build of documentation to Travis CI script.
+
+- Build process: Cleanup intermediate and ad-hoc anciliary files (GH-231,
+  GH-273)
+
+- setup.py: Fixed handling of release tarballs contents so no extraneous files
+  are shipped and the documentation tree is actually included. Also, removed
+  unused code.
+
+Version 2.1.0 - 2014-02-25 - `Marc Abramowitz <http://marc-abramowitz.com/>`_
+=============================================================================
+
+Features
+--------
+
+- Sphinx-based documentation (GH-149)
+
+  Read it online at http://pymssql.org/
+
+  Thanks, Ramiro Morales!
+
+  See:
+
+  * https://github.com/pymssql/pymssql/pull/149
+  * https://github.com/pymssql/pymssql/pull/162
+  * https://github.com/pymssql/pymssql/pull/164
+  * https://github.com/pymssql/pymssql/pull/165
+  * https://github.com/pymssql/pymssql/pull/166
+  * https://github.com/pymssql/pymssql/pull/167
+  * https://github.com/pymssql/pymssql/pull/169
+  * https://github.com/pymssql/pymssql/pull/174
+  * https://github.com/pymssql/pymssql/pull/175
+
+- "Green" support (GH-135)
+
+  Lets you use pymssql with cooperative multi-tasking systems like
+  gevent and have pymssql call a callback when it is waiting for a
+  response from the server. You can set this callback to yield to
+  another greenlet, coroutine, etc. For example, for gevent, you could
+  do::
+
+      def wait_callback(read_fileno):
+          gevent.socket.wait_read(read_fileno)
+
+      pymssql.set_wait_callback(wait_callback)
+
+  The above is useful if you're say, running a gunicorn server with the
+  gevent worker. With this callback in place, when you send a query to
+  SQL server and are waiting for a response, you can yield to other
+  greenlets and process other requests. This is super useful when you
+  have high concurrency and/or slow database queries and lets you use
+  less gunicorn worker processes and still handle high concurrency.
+
+  See https://github.com/pymssql/pymssql/pull/135
+
+- Better error messages.
+
+  E.g.: For a connection failure, instead of:
+
+      pymssql.OperationalError: (20009, 'Net-Lib error during Connection
+      refused')
+
+  the dberrstr is also included, resulting in:
+
+      pymssql.OperationalError: (20009, 'DB-Lib error message 20009,
+      severity 9:\nUnable to connect: Adaptive Server is unavailable or
+      does not exist\nNet-Lib error during Connection refused\n')
+
+  See:
+  * https://github.com/pymssql/pymssql/pull/151
+
+  In the area of error messages, we also made this change:
+
+  execute: Raise ColumnsWithoutNamesError when as_dict=True and missing
+  column names (GH-160)
+
+  because the previous behavior was very confusing; instead of raising
+  an exception, we would just return row dicts with those columns
+  missing. This prompted at least one question on the mailing list
+  (https://groups.google.com/forum/?fromgroups#!topic/pymssql/JoZpmNZFtxM),
+  so we thought it was better to handle this explicitly by raising an
+  exception, so the user would understand what went wrong.
+
+  See:
+  * https://github.com/pymssql/pymssql/pull/160
+  * https://github.com/pymssql/pymssql/pull/168
+
+- Performance improvements
+
+  You are most likely to notice a difference from these when you are
+  fetching a large number of rows.
+
+  * Reworked row fetching (GH-159)
+
+    There was a rather large amount of type conversion occuring when
+    fetching a row from pymssql. The number of conversions required have
+    been cut down significantly with these changes.
+    Thanks Damien, Churchill!
+
+    See:
+    * https://github.com/pymssql/pymssql/pull/158
+    * https://github.com/pymssql/pymssql/pull/159
+
+  * Modify get_row() to use the CPython tuple API (GH-178)
+
+    This drops the previous method of building up a row tuple and switches
+    to using the CPython API, which allows you to create a correctly sized
+    tuple at the beginning and simply fill it in. This appears to offer
+    around a 10% boost when fetching rows from a table where the data is
+    already in memory.
+    Thanks Damien, Churchill!
+
+    See:
+    * https://github.com/pymssql/pymssql/pull/178
+
+- MSSQLConnection: Add `with` (context manager) support (GH-171)
+
+  This adds `with` statement support for MSSQLConnection in the `_mssql`
+  module -- e.g.::
+
+      with mssqlconn() as conn:
+          conn.execute_query("SELECT @@version AS version")
+
+  We already have `with` statement support for the `pymssql` module.
+  See:
+
+  * https://github.com/pymssql/pymssql/pull/171
+
+- Allow passing in binary data (GH-179)
+
+  Use the bytesarray type added in Python 2.6 to signify that this is
+  binary data and to quote it accordingly. Also modify the handling of
+  str/bytes types checking the first 2 characters for b'0x' and insert
+  that as binary data.
+  See:
+
+  * https://github.com/pymssql/pymssql/pull/179
+
+- Add support for binding uuid.UUID instances to stored procedures input
+  params (GH-143)
+  Thanks, Ramiro Morales!
+
+  See:
+  * https://github.com/pymssql/pymssql/pull/143
+  * https://github.com/pymssql/pymssql/commit/1689c83878304f735eb38b1c63c31e210b028ea7
+
+- The version number is now stored in one place, in pymssql_version.h
+  This makes it easier to update the version number and not forget any
+  places, like I did with pymssql 2.0.1
+
+  * See https://github.com/pymssql/pymssql/commit/fd317df65fa62691c2af377e4661defb721b2699
+
+- Improved support for using py.test as test runner (GH-183)
+
+  * See: https://github.com/pymssql/pymssql/pull/183
+
+- Improved PEP-8 and pylint compliance
+
+Bug Fixes
+---------
+
+- GH-142 ("Change how ``*.pyx`` files are included in package") - this
+  should prevent pymssql.pyx and _mssql.pyx from getting copied into the
+  root of your virtualenv. Thanks, @Arfrever!
+
+  * See: https://github.com/pymssql/pymssql/issues/142
+
+- GH-145 ("Prevent error string growing with repeated failed connection
+  attempts.")
+
+  See:
+
+  * https://github.com/pymssql/pymssql/issues/145
+  * https://github.com/pymssql/pymssql/pull/146
+
+- GH-151 ("err_handler: Don't clobber dberrstr with oserrstr")
+
+  * https://github.com/pymssql/pymssql/pull/151
+
+- GH-152 ("_mssql.pyx: Zero init global last_msg_* vars")
+  See: https://github.com/pymssql/pymssql/pull/152
+
+- GH-177 ("binary columns sometimes are processed as varchar")
+  Better mechanism for pymssql to detect that user is passing binary
+  data.
+
+  See: https://github.com/pymssql/pymssql/issues/177
+
+- buffer overflow fix (GH-182)
+
+  * See: https://github.com/pymssql/pymssql/pull/181
+  * See: https://github.com/pymssql/pymssql/pull/182
+
+- Return uniqueidentifer columns as uuid.UUID objects on Python 3
+
+Version 2.0.1 - 2013-10-27 - `Marc Abramowitz <http://marc-abramowitz.com/>`_
+-----------------------------------------------------------------------------
+
+* MANIFEST.in: Add "\*.rst" to prevent install error: "IOError: [Errno 2] No
+  such file or directory: 'ChangeLog_highlights.rst'"
+
+Version 2.0.0 - 2013-10-25 - `Marc Abramowitz <http://marc-abramowitz.com/>`_
+-----------------------------------------------------------------------------
+
+* First official release of pymssql 2.X (`Cython`_-based code) to `PyPI`_!
+* Compared to pymssql 1.X, this version offers:
+
+  * Better performance
+  * Thread safety
+  * Fuller test suite
+  * Support for Python 3
+  * Continuous integration via `Travis CI`_
+  * Easier to understand code, due to `Cython`_
+
+.. _PyPI: https://pypi.python.org/pypi/pymssql/2.0.0
+.. _Travis CI: https://travis-ci.org/pymssql/pymssql
+.. _Cython: http://cython.org/
+.. _ChangeLog: https://github.com/pymssql/pymssql/blob/master/ChangeLog
+
+Version 2.0.0b1-dev-20130403 - 2013-04-03 - Marc Abramowitz <msabramo at gmail.com>
+--------------------------------------------------------------------------------
+	* Added tag 2.0.0b1-dev-20130403 for changeset 5d0c980ef8b8
+	(b2b2748f7f88)
+	* Fix issue 118 ("datetime conversion to sql is not converting
+	sub-seconds correctly") - Pad microseconds to 3 digits so it gets
+	converted correctly. Thanks, Ken Robbins (kenneth.robbins at gmail)!
+	(5d0c980ef8b8)
+	* Make tests/test_queries.py actually run tests. It looked like it was
+	half-finished and not working. This fills it out and makes it work and
+	actually test a few things. (5373541eb899)
+	* setup.py: Make it possible to use `python setup.py test`
+	(3c32acb41251)
+	* Bunch of fixes to eliminate build/install warnings (adb0fc75bfd0,
+	fe6cb9aa5120, 446f0005e638, e8d4b19d87b1, 90b2aa2ea01f, 7bb29af4b22c)
+	* Add `pymssql.get_dbversion` function that wraps the dbversion
+	function in FreeTDS. (1158a5d2be9c)
+	* Add a `get_freetds_version` function (a4286224dcf2)
+	* Fix issue 109 ("Failure to pass Unicode characters to callproc;
+	failing test:
+	tests.test_sprocs.TestCallProcFancy.testCallProcWithUnicodeStringWithRussianCharacters"):
+	Skip test because it fails with some versions of FreeTDS but passes
+	with others. (d05341273673)
+	* Fix issue 116 ("A few tests fail if running on a system that has SQL
+	Server available on port 1433") (0fc4086447fe)
+	* Modify tests/test_config.py to use server='dontnameyourserverthis'
+	when doing various tests so it doesn't try to connect to a SQL
+	Server listening on localhost:1433 (0fc4086447fe)
+	* tox.ini: Add {posargs:-w tests -v} to nosetests invocation so that
+	we can pass arguments to tox -- e.g.: to run only specific tests
+	(a105878d500d)
+	* tox.ini: Add "ipdb" to deps, because the IPython debugger is very
+	nice for debugging why tests are failing (be9ee40156cb)
+	* Fix issue 114 ("Fix SP name handling in threaded test so we can
+	actually run it.") (6ac2b75747ad)
+	* Fix issue 100 (Error when executing setup.py {build,develop} on a
+	system with no setuptools: "name 'STDevelopCmd' is not defined")
+	(5222ee37b2ab)
+	* Issue 45 ("Make SQLAlchemy tests part of our testing process"): Add
+	tests/run_sqlalchemy_tests.py for running the SQLAlchemy test suite
+	with pymssql using the server configured in tests/tests.cfg
+	(999d9dbe791b)
+	* Fix issue 92 ("Cursor fetch* methods return redundant keys for
+	column names and column numbers.") (08ae783880dd)
+	* tests/test_connection_as_dict.py:
+	bug 18 ("FetchAll fails to return rows when running against a
+	connection instantiated with as_dict=True."): Add a test which
+	illustrates that the issue is resolved. (058d761cc761)
+	* Fix issue 60 ("cursor.execute raise UnicodeDecodeError if query and
+	params in unicode"): Add patch from tonal.promsoft and add tests.
+	(49210c03a6cf)
+	* Add *.c to MANIFEST.in so they get included in sdist and end-users
+	don't need to run Cython. (25c1a84aac0c)
+	* Fix issue 56 ("callproc do not accept None and unicode string in
+	parameters"): Add patch from tonal.promsoft and add tests
+	(939eb7939136)
+  * version 2.0.0b1-dev-20130403
+
+Version 2.0.0b1-dev-20130108 - 2013-01-08 - Marc Abramowitz <msabramo at gmail.com>
+--------------------------------------------------------------------------------
+    * change: put compiled FreeTDS for Windows in pymmsql source, add build
+	instructions to README, better Visual Studio support (#61)
+    + feature: support hostname, port, tds_version connect params without freetds.config
+    + feature: make pymssql.Cursor.rownumber give accurate results for executemany()
+    + feature: bundle FreeTDS libraries & use static libary includes to avoid
+        most end-user-developers needing to mess with FreeTDS
+    * change: speed up handling of tuples/lists when quoting (dieterv77)
+    - bug #46: better handling for byte strings that don't represent ascii data
+    - bug: custom param handling avoids bugs when '%' is used in the SQL (modulus operator)
+    - bug: fix pymssql.DBAPIType so that comparisons work as expected
+    - bug: fetch*() functions would erroneously raise OperationalError when rows exhausted
+    - bug #47: fix threaded tests crashing
+    - bug #79: fix prevision problem with floats (dieterv77)
+		- bug #14: Add setup.py voodoo that undoes setuptools monkeypatching
+		that causes `pip install` to not work with setuptools unless pyrex
+		is installed. (86a73a19d5bd)
+		- bug #106 (OS X: "Symbol not found: _dbadata" error when importing
+		pymssql): Fix OS X build by modifying setup.py so that on OS X we
+		don't attempt to link with the bundled FreeTDS *Linux* library.
+		(88d15d125586)
+		+ feature: Add support for running tox (http://tox.testrun.org/) to
+		test across multiple Python versions. (5fa7a6548b31)
+		- bug #44: Remove test_long_identifiers from test_sqlalchemy.py
+		because SQLAlchemy removed the 30 character limit on identifiers.
+		(6585d44eea33)
+		- feature: Add setup.py voodoo so that Cython can automatially be
+		downloaded if it's not installed instead of an ImportError
+		(bb459dd7fd7e)
+		- bug #105: Link with librt on Unix platforms that have it (like
+		Linux, but not FreeBSD or OS X) to prevent 'undefined symbol:
+		clock_gettime' error when importing pymssql. (2b255b1c035f)
+
+Tue Nov 02 09:33:00 2010 Damien Churchill <damoxc at gmail.com>
+	* _mssql.pyx:
+		+ feature: add support for nullable ints and nullable bits in
+		           stored procedure parameters.
+		+ feature: add support for positional parameters in stored
+		           procedures.
+		+ bugfix:  add support for using type subclasses as parameters
+		+ bugfix:  correctly report incorrect logins.
+		+ feature: add support for setting the application name
+		+ bugfix:  accept more than just the decimal.Decimal type for
+		           money and decimal parameters.
+		+ bugfix:  fix raising exceptions from convert_python_value()
+		+ bugfix:  fix binding parameters of int type when larger than
+		           2^31 - 1 (raise exception).
+		+ bugfix:  use sprintf rather than python strings in the msg_handler
+		+ bugfix:  use sprintf rather than python strings in the err_handler
+		+ bugfix:  make compatible with Cython 0.13
+		+ feature: remove the trusted parameter to connect()
+		+ bugfix:  fix issue 15, not setting implicit_transactions on connect
+		+ bugfix:  fix issue 32, setting the wrong hostname on login
+	* pymssql.pyx:
+		+ feature: add initial support for callproc()
+		+ feature: add support for setting the application name
+		+ bugfix:  fix issue #7, thanks has.temp3
+		+ bugfix:  fix issue #10, rowcount property being incorrect
+		+ bugfix:  make compatible with Cython 0.13
+		+ feature: remove the trusted parameter to connect()
+		+ feature: add returnvalue property with the result of a callproc()
+		           call.
+		+ feature: fix raising exceptions when args[0] is not a string
+	* MANIFEST.in:
+		+ feature: include the tests
+		+ bugfix:  include ez_setup.py
+	* setup.py:
+		+ bugfix:  fix issue #8, ZipFile don't has the attribute
+		           'extractall' error for python2.5
+	* version 1.9.909
+
+Wed Apr 28 11:10:00 2010 Damien Churchill <damoxc at gmail.com>
+	* MANIFEST.in:
+		+ bugfix: fix recursive-include for .pyrex
+	* version 1.9.908
+
+Wed Apr 21 16:02:00 2010 Damien Churchill <damoxc at gmail.com>
+	* MANIFEST.in:
+		+ bugfix: include missing .pyrex folder
+	* version 1.9.907
+
+Fri Apr 09 13:16:00 2010 Damien Churchill <damoxc at gmail.com>
+	* setup.py:
+		+ bugfix: include hack faking that pyrex is installed to workaround
+		          a bug in setuptools.
+	* _mssql.pyx:
+		+ bugfix: add support for connecting using "." and "(local)"
+	* pymssql.pyx:
+		+ feature: add the output type to be used with callproc()
+		+ depreciate: the dsn keyword param to pymssql.connect()
+		+ feature: add the get/set_max_connections to pymssql
+	* sqlfront.pxd:
+		+ feature: tidy up and remove all unused methods.
+	* version 1.9.906
+
+Mon Nov 23 13:37:00 2009 Damien Churchill <damoxc at gmail.com>
+	* _mssql.pyx:
+		+ feature: add support for varbinary types
+		+ feature: add support for passing in charset to _quote_data
+		+ bugfix: rename MSSQLConnection.next_result to
+		          MSSQLConnection.nextresult as before
+		+ bugfix: set the charset upon login
+		+ feature: rewrite _remove_locale using C types instead, 20x faster
+		+ feature: add a charset param to quote_data and relating funcs that
+		           allows the charset to be specified for unicode encodes.
+	* pymssql.pyx:
+		+ feature: add DSN support that was missing
+		+ bugfix: fix rowcount property
+	* sqlfront.pxd:
+		add DBSETLCHARSET
+	* tests:
+		+ feature: add test for multiple results
+	* setup.py:
... 16228 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/pymssql.git



More information about the Python-modules-commits mailing list