1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
|
++++
News
++++
.. contents:: Contents:
:backlinks: none
SQLObject 3.12.0
================
Released 2024 Dec 20.
Drivers
-------
* Add support for CyMySQL; there're some problems with unicode yet.
* Separate ``psycopg`` and ``psycopg2``;
``psycopg`` is actually ``psycopg3`` now; not all tests pass.
* Minor fix in getting error code from PyGreSQL.
* Dropped ``oursql``. It wasn't updated in years.
* Dropped ``PySQLite2``. Only builtin ``sqlite3`` is supported.
Tests
-----
* Run tests with Python 3.13.
* Run tests with ``psycopg-c``; not all tests pass.
* Fix ``test_exceptions.py`` under MariaDB, PostgreSQL and SQLite.
* ``py-postgres``: Set ``sslmode`` to ``allow``;
upstream changed default to ``prefer``.
CI
--
* Run tests with ``PyGreSQL`` on w32, do not ignore errors.
* Skip tests with ``pg8000`` on w32.
* GHActions: Switch to ``setup-miniconda``.
* GHActions: Python 3.13.
SQLObject 3.11.0
================
Released 2023 Nov 11.
Features
--------
* Continue working on ``SQLRelatedJoin`` aliasing introduced in 3.10.2.
When a table joins with itself calling
``relJoinCol.filter(thisClass.q.column)`` raises ``ValueError``
hinting that an alias is required for filtering.
* Test that ``idType`` is either ``int`` or ``str``.
* Added ``sqlmeta.idSize``. This sets the size of integer column ``id``
for MySQL and PostgreSQL. Allowed values are ``'TINY'``, ``'SMALL'``,
``'MEDIUM'``, ``'BIG'``, ``None``; default is ``None``. For Postgres
mapped to ``smallserial``/``serial``/``bigserial``. For other backends
it's currently ignored. Feature request by Meet Gujrathi at
https://stackoverflow.com/q/77360075/7976758
SQLObject 3.10.3
================
Released 2023 Oct 25.
Bug fixes
---------
* Relaxed aliasing in ``SQLRelatedJoin`` introduced in 3.10.2 - aliasing
is required only when the table joins with itself. When there're two
tables to join aliasing prevents filtering -- wrong SQL is generated
in ``relJoinCol.filter(thisClass.q.column)``.
Drivers
-------
* Fix(SQLiteConnection): Release connections from threads that are
no longer active. This fixes memory leak in multithreaded programs
in Windows.
``SQLite`` requires different connections per thread so
``SQLiteConnection`` creates and stores a connection per thread.
When a thread finishes its connections should be closed.
But if a program doesn't cooperate and doesn't close connections at
the end of a thread SQLObject leaks memory as connection objects are
stuck in ``SQLiteConnection``. On Linux the leak is negligible as
Linux reuses thread IDs so new connections replace old ones and old
connections are garbage collected. But Windows doesn't reuse thread
IDs so old connections pile and never released. To fix the problem
``SQLiteConnection`` now enumerates threads and releases connections
from non-existing threads.
* Dropped ``supersqlite``. It seems abandoned.
The last version 0.0.78 was released in 2018.
Tests
-----
* Run tests with Python 3.12.
CI
--
* GHActions: Ensure ``pip`` only if needed
This is to work around a problem in conda with Python 3.7 -
it brings in wrong version of ``setuptools`` incompatible with Python 3.7.
SQLObject 3.10.2
================
Released 2023 Aug 09.
Minor features
--------------
* Class ``Alias`` grows a method ``.select()`` to match ``SQLObject.select()``.
Bug fixes
---------
* Fixed a bug in ``SQLRelatedJoin`` in the case where the table joins with
itself; in the resulting SQL two instances of the table must use different
aliases.
CI
--
* Install all Python and PyPy versions from ``conda-forge``.
SQLObject 3.10.1
================
Released 2022 Dec 22.
Minor features
--------------
* Use ``module_loader.exec_module(module_loader.create_module())``
instead of ``module_loader.load_module()`` when available.
Drivers
-------
* Added ``mysql-connector-python``.
Tests
-----
* Run tests with Python 3.11.
CI
--
* Ubuntu >= 22 and ``setup-python`` dropped Pythons < 3.7.
Use ``conda`` via ``s-weigand/setup-conda`` instead of ``setup-python``
to install older Pythons on Linux.
SQLObject 3.10.0
================
Released 2022 Sep 20.
Features
--------
* Allow connections in ``ConnectionHub`` to be strings.
This allows to open a new connection in every thread.
* Add compatibility with ``Pendulum``.
Tests
-----
* Run tests with Python 3.10.
CI
--
* GitHub Actions.
* Stop testing at Travis CI.
* Stop testing at AppVeyor.
Documentation
-------------
* DevGuide: source code must be pure ASCII.
* DevGuide: ``reStructuredText`` format for docstrings is recommended.
* DevGuide: de-facto good commit message format is required:
subject/body/trailers.
* DevGuide: ``conventional commit`` format for commit message subject lines
is recommended.
* DevGuide: ``Markdown`` format for commit message bodies is recommended.
* DevGuide: commit messages must be pure ASCII.
`Older news`__
.. __: News6.html
.. footer:: Get SQLObject at Sourceforge.net_. Fast, secure and Free Open Source software downloads
.. _Sourceforge.net: http://sourceforge.net/projects/sqlobject
|