Turbodbc

Latest version: v4.12.0

Safety actively analyzes 629765 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 8 of 11

2.0.0

-------------

* Initial support for the arrow data format with the ``Cursor.fetchallarrow()``
method. Still in alpha stage, mileage may vary (Windows not yet supported,
UTF-16 unicode not yet supported). Big thanks to xhochy!
* ``prefer_unicode`` option now also affects column name rendering
when gathering results from the database. This effectively enables
support for Unicode column names for some databases.
* Added module version number ``turbodbc.__version__``
* Removed deprecated performance options for ``connect()``. Use
``connect(..., turbodbc_options=make_options(...))`` instead.

Earlier versions (not conforming to semantic versioning)
--------------------------------------------------------

The following versions do not conform to semantic versioning. The
meaning of the ``major.minor.revision`` versions is:

* Major: psychological ;-)
* Minor: If incremented, this indicates a breaking change
* Revision: If incremented, indicates non-breaking change (either feature or bug fix)

1.1.2

-------------

* Added ``autocommit`` as a keyword argument to ``make_options()``. As the
name suggests, this allows you to enable automatic ``COMMIT`` operations
after each operation. It also improves compatibility with databases
that do not support transactions.
* Added ``autocommit`` property to ``Connection`` class that allows switching
autocommit mode after the connection was created.
* Fixed bug with ``cursor.rowcount`` not being reset to ``-1`` when calls to
``execute()`` or ``executemany()`` raised exceptions.
* Fixed bug with ``cursor.rowcount`` not showing the correct value when
manipulating queries were used without placeholders, i.e., with
parameters baked into the query.
* Global interpreter lock (GIL) is released during some operations to
facilitate basic multi-threading (thanks chmp)
* Internal: The return code ``SQL_SUCCESS_WITH_INFO`` is now treated as
a success instead of an error when allocating environment, connection,
and statement handles. This may improve compatibility with some databases.

1.1.1

-------------

* Windows is now _officially_ supported (64 bit, Python 3.5 and 3.6). From now on,
code is automatically compiled and tested on Linux, OSX, and Windows
(thanks TWAC for support). Windows binary wheels are uploaded to pypi.
* Added supported for fetching results in batches of NumPy objects with
``cursor.fetchnumpybatches()`` (thanks yaxxie)
* MSSQL is now part of the Windows test suite (thanks TWAC)
* ``connect()`` now allows to specify a ``connection_string`` instead of
individual arguments that are then compiles into a connection string (thanks TWAC).

1.1.0

-------------

* Added support for databases that require Unicode data to be transported
in UCS-2/UCS-16 format rather than UTF-8, e.g., MSSQL.
* Added _experimental_ support for Windows source distribution builds.
Windows builds are not fully (or automatically) tested yet, and still require
significant effort on the user side to compile (thanks TWAC for this initial version)
* Added new ``cursor.fetchnumpybatches()`` method which returns a generator to
iterate over result sets in batch sizes as defined by buffer size or rowcount
(thanks yaxxie)
* Added ``make_options()`` function that take all performance and compatibility
settings as keyword arguments.
* Deprecated all performance options (``read_buffer_size``, ``use_async_io``, and
``parameter_sets_to_buffer``) for ``connect()``. Please move these keyword arguments
to ``make_options()``. Then, set ``connect{}``'s new keyword argument ``turbodbc_options``
to the result of ``make_options()``. This effectively separates performance options
from options passed to the ODBC connection string.
* Removed deprecated option ``rows_to_buffer`` from ``turbodbc.connect()``
(see version 0.4.1 for details).
* The order of arguments for ``turbodbc.connect()`` has changed; this may affect
you if you have not used keyword arguments.
* The behavior of ``cursor.fetchallnumpy()`` has changed a little. The
``mask`` attribute of a generated ``numpy.MaskedArray`` instance is
shortened to ``False`` from the previous ``[False, ..., False]`` if the
mask is ``False`` for all entries. This can cause problems when you
access individual indices of the mask.
* Updated ``pybind11`` requirement to at least ``2.1.0``.
* Internal: Some types have changed to accomodate for Linux/OSX/Windows compatibility.
In particular, a few ``long`` types were converted to ``intptr_t`` and ``int64_t``
where appropriate. In particular, this affects the ``field`` type that may be used
by C++ end users (so they exist).

1.0.5

-------------

* Internal: Remove some ``const`` pointers to resolve some compile issues with
xcode 6.4 (thanks xhochy)

1.0.4

-------------

* Added possibility to set unixodbc include and library directories in
setup.py. Required for conda builds.

Page 8 of 11

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.