sqlobject-cvs Mailing List for SQLObject
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
(9) |
Apr
(74) |
May
(29) |
Jun
(16) |
Jul
(28) |
Aug
(10) |
Sep
(57) |
Oct
(9) |
Nov
(29) |
Dec
(12) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(7) |
Feb
(14) |
Mar
(6) |
Apr
(3) |
May
(12) |
Jun
(34) |
Jul
(9) |
Aug
(29) |
Sep
(22) |
Oct
(2) |
Nov
(15) |
Dec
(52) |
| 2005 |
Jan
(47) |
Feb
(78) |
Mar
(14) |
Apr
(35) |
May
(33) |
Jun
(16) |
Jul
(26) |
Aug
(63) |
Sep
(40) |
Oct
(96) |
Nov
(96) |
Dec
(123) |
| 2006 |
Jan
(159) |
Feb
(144) |
Mar
(64) |
Apr
(31) |
May
(88) |
Jun
(48) |
Jul
(16) |
Aug
(64) |
Sep
(87) |
Oct
(92) |
Nov
(56) |
Dec
(76) |
| 2007 |
Jan
(94) |
Feb
(103) |
Mar
(126) |
Apr
(123) |
May
(85) |
Jun
(11) |
Jul
(130) |
Aug
(47) |
Sep
(65) |
Oct
(70) |
Nov
(12) |
Dec
(11) |
| 2008 |
Jan
(30) |
Feb
(55) |
Mar
(88) |
Apr
(20) |
May
(50) |
Jun
|
Jul
(38) |
Aug
(1) |
Sep
(9) |
Oct
(5) |
Nov
(6) |
Dec
(39) |
| 2009 |
Jan
(8) |
Feb
(16) |
Mar
(3) |
Apr
(33) |
May
(44) |
Jun
(1) |
Jul
(10) |
Aug
(33) |
Sep
(74) |
Oct
(22) |
Nov
|
Dec
(15) |
| 2010 |
Jan
(28) |
Feb
(22) |
Mar
(46) |
Apr
(29) |
May
(1) |
Jun
(1) |
Jul
(27) |
Aug
(8) |
Sep
(5) |
Oct
(33) |
Nov
(24) |
Dec
(41) |
| 2011 |
Jan
(4) |
Feb
(12) |
Mar
(35) |
Apr
(29) |
May
(19) |
Jun
(16) |
Jul
(32) |
Aug
(25) |
Sep
(5) |
Oct
(11) |
Nov
(21) |
Dec
(12) |
| 2012 |
Jan
(3) |
Feb
(4) |
Mar
(20) |
Apr
(4) |
May
(25) |
Jun
(13) |
Jul
|
Aug
|
Sep
(2) |
Oct
(25) |
Nov
(9) |
Dec
(1) |
| 2013 |
Jan
(6) |
Feb
(8) |
Mar
|
Apr
(10) |
May
(31) |
Jun
(7) |
Jul
(18) |
Aug
(33) |
Sep
(4) |
Oct
(16) |
Nov
|
Dec
(27) |
| 2014 |
Jan
(2) |
Feb
|
Mar
|
Apr
(11) |
May
(39) |
Jun
(8) |
Jul
(11) |
Aug
(4) |
Sep
|
Oct
(27) |
Nov
|
Dec
(71) |
| 2015 |
Jan
(17) |
Feb
(47) |
Mar
(33) |
Apr
|
May
|
Jun
(9) |
Jul
(7) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(8) |
| 2016 |
Jan
(4) |
Feb
(4) |
Mar
|
Apr
|
May
(12) |
Jun
(7) |
Jul
(9) |
Aug
(31) |
Sep
(8) |
Oct
(3) |
Nov
(15) |
Dec
(1) |
| 2017 |
Jan
(13) |
Feb
(7) |
Mar
(14) |
Apr
(8) |
May
(10) |
Jun
(4) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(8) |
Nov
(4) |
Dec
(5) |
| 2018 |
Jan
(2) |
Feb
(8) |
Mar
|
Apr
(4) |
May
|
Jun
(6) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2019 |
Jan
(1) |
Feb
(16) |
Mar
(1) |
Apr
(3) |
May
(5) |
Jun
(1) |
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
(1) |
Dec
(3) |
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(2) |
Nov
|
Dec
(2) |
| 2021 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(6) |
Oct
(1) |
Nov
(1) |
Dec
(4) |
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(3) |
Sep
(2) |
Oct
(2) |
Nov
(4) |
Dec
|
| 2024 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(9) |
| 2025 |
Jan
|
Feb
(4) |
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: phd <no...@so...> - 2025-08-16 16:22:06
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via 57839aa1eac3ed43a5626b5d2109a4756586b194 (commit)
via 4cc7daec2ff9e981db4605261ac0ee2d55e1f7e9 (commit)
via e582afa447b43ca6c73512f842d06f7ed5bd94c3 (commit)
via eb3fab55fbec873cafe53b7e17336756a930ac34 (commit)
via 49a7268d44f86d356496d637a7d211b2504ea9e0 (commit)
via affe990d0ced03f9e7f904461873c6f501ba87c1 (commit)
via 8435099637695ab96c2e00cb17f45e08a8214e95 (commit)
via fa052128b944fb854420b15f0507cae08ed7a769 (commit)
via 6041aa6a0e2364718094b2ce0a2f67276c5fbfce (commit)
via f6b1c42b2046e77b20b502068b1d5a486abac726 (commit)
from 27b78f03439786ac5b9366755fc6a227bbcf1051 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/57839aa1eac3ed43a5626b5d2109a4756586b194
commit 57839aa1eac3ed43a5626b5d2109a4756586b194
Author: Oleg Broytman <ph...@ph...>
Date: Sat Aug 16 17:47:24 2025 +0300
Tests(tox): Run default flake8 tests under Py 3.14
diff --git a/tox.ini b/tox.ini
index 2edb614..6cbc8df 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 3.15
-envlist = py{27,34,35,36,37,38,39,310,311,312,313,314}-sqlite{,-memory},py{27,37,313}-flake8
+envlist = py{27,34,35,36,37,38,39,310,311,312,313,314}-sqlite{,-memory},py{27,37,314}-flake8
# Base test environment settings
[testenv]
http://sourceforge.net/p/sqlobject/sqlobject/ci/4cc7daec2ff9e981db4605261ac0ee2d55e1f7e9
commit 4cc7daec2ff9e981db4605261ac0ee2d55e1f7e9
Author: Oleg Broytman <ph...@ph...>
Date: Sat Aug 16 16:24:46 2025 +0300
Tests(tox): Run tests with non-binary `psycopg` and `psycopg2`
diff --git a/docs/News.rst b/docs/News.rst
index 0d67c1d..dc7665d 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -10,6 +10,8 @@ SQLObject development (master)
* Tested with Python 3.14.
+* Run tests with non-binary ``psycopg`` and ``psycopg2``.
+
SQLObject 3.13.0
================
diff --git a/tox.ini b/tox.ini
index 885867f..2edb614 100644
--- a/tox.ini
+++ b/tox.ini
@@ -20,10 +20,12 @@ deps =
mysql-connector_py: -rdevscripts/requirements/requirements_connector_python.txt
pymysql: -rdevscripts/requirements/requirements_pymysql.txt
mariadb: mariadb
- psycopg: psycopg[binary]
+ psycopg: psycopg
+ psycopg-binary: psycopg[binary]
psycopg_c: psycopg[c]
- py34-psycopg2: psycopg2-binary==2.8.4
- !py34-psycopg2: psycopg2-binary
+ psycopg2: psycopg2
+ py34-psycopg2-binary: psycopg2-binary==2.8.4
+ !py34-psycopg2-binary: psycopg2-binary
pygresql: -rdevscripts/requirements/requirements_pygresql.txt
pg8000: -rdevscripts/requirements/requirements_pg8000.txt
pyodbc: pyodbc
@@ -176,6 +178,17 @@ commands =
[testenv:py3{6,7,8,9,10,11,12,13,14}-postgres-psycopg]
commands = {[psycopg]commands}
+[psycopg-binary]
+commands =
+ {[testenv]commands}
+ -dropdb --username=runner --no-password sqlobject_test
+ createdb --username=runner --no-password sqlobject_test
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg&charset=utf-8&debug=1"
+ dropdb --username=runner --no-password sqlobject_test
+
+[testenv:py3{6,7,8,9,10,11,12,13,14}-postgres-psycopg-binary]
+commands = {[psycopg-binary]commands}
+
[psycopg_c]
commands =
{[testenv]commands}
@@ -203,6 +216,22 @@ commands =
[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-psycopg2]
commands = {[psycopg2]commands}
+[psycopg2-binary]
+commands =
+ {[testenv]commands}
+ -dropdb --username=runner --no-password sqlobject_test
+ createdb --username=runner --no-password sqlobject_test
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg2&charset=utf-8&debug=1"
+ dropdb --username=runner --no-password sqlobject_test
+
+[testenv:py27-postgres-psycopg2-binary]
+commands =
+ easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
+ {[psycopg2-binary]commands}
+
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-psycopg2-binary]
+commands = {[psycopg2-binary]commands}
+
[pygresql]
commands =
{[testenv]commands}
@@ -515,6 +544,19 @@ commands =
platform = win32
commands = {[psycopg-w32]commands}
+[psycopg-binary-w32]
+platform = win32
+commands =
+ {[testenv]commands}
+ -dropdb --username=runner --no-password sqlobject_test
+ createdb --username=runner --no-password sqlobject_test
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg&charset=utf-8&debug=1"
+ dropdb --username=runner --no-password sqlobject_test
+
+[testenv:py3{6,7,8,9,10,11,12,13,14}-postgres-psycopg-binary-w32]
+platform = win32
+commands = {[psycopg-binary-w32]commands}
+
[psycopg_c-w32]
platform = win32
commands =
@@ -547,6 +589,25 @@ commands =
platform = win32
commands = {[psycopg2-w32]commands}
+[psycopg2-binary-w32]
+platform = win32
+commands =
+ {[testenv]commands}
+ -dropdb --username=runner --no-password sqlobject_test
+ createdb --username=runner --no-password sqlobject_test
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg2&charset=utf-8&debug=1"
+ dropdb --username=runner --no-password sqlobject_test
+
+[testenv:py27-postgres-psycopg2-binary-w32]
+platform = win32
+commands =
+ easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
+ {[psycopg2-binary-w32]commands}
+
+[testenv:py3{4,5,6,7,9,10,11,12,13}-postgres-psycopg2-binary-w32]
+platform = win32
+commands = {[psycopg2-binary-w32]commands}
+
[pygresql-w32]
platform = win32
commands =
http://sourceforge.net/p/sqlobject/sqlobject/ci/e582afa447b43ca6c73512f842d06f7ed5bd94c3
commit e582afa447b43ca6c73512f842d06f7ed5bd94c3
Author: Oleg Broytman <ph...@ph...>
Date: Fri Aug 15 22:02:37 2025 +0300
Tests(tox): Upgrade pip/setuptools/wheel
diff --git a/tox.ini b/tox.ini
index fb681af..885867f 100644
--- a/tox.ini
+++ b/tox.ini
@@ -30,6 +30,8 @@ deps =
pypyodbc: pypyodbc
firebird-fdb: fdb
firebirdsql: firebirdsql
+# Upgrade pip/setuptools/wheel
+download = true
passenv = CI
setenv =
PGPASSWORD = test
http://sourceforge.net/p/sqlobject/sqlobject/ci/eb3fab55fbec873cafe53b7e17336756a930ac34
commit eb3fab55fbec873cafe53b7e17336756a930ac34
Author: Oleg Broytman <ph...@ph...>
Date: Thu Jul 24 17:12:16 2025 +0300
Style(cmp): Fix `flake8` warning F824
The warning was "`global hub` is unused: name is never assigned in scope."
Ok, let's remove it.
diff --git a/sqlobject/tests/dbtest.py b/sqlobject/tests/dbtest.py
index e2693f1..65fcb27 100644
--- a/sqlobject/tests/dbtest.py
+++ b/sqlobject/tests/dbtest.py
@@ -63,7 +63,7 @@ def setupClass(soClasses, force=False):
If force is true, then the database will be recreated no matter
what.
"""
- global hub
+ # global hub
if not isinstance(soClasses, (list, tuple)):
soClasses = [soClasses]
connection = getConnection()
http://sourceforge.net/p/sqlobject/sqlobject/ci/49a7268d44f86d356496d637a7d211b2504ea9e0
commit 49a7268d44f86d356496d637a7d211b2504ea9e0
Author: Oleg Broytman <ph...@ph...>
Date: Thu Jul 24 15:34:45 2025 +0300
Tested with Python 3.14
diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml
index d81585f..54f2658 100644
--- a/.github/workflows/run-tests.yaml
+++ b/.github/workflows/run-tests.yaml
@@ -10,7 +10,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
- python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
+ python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
exclude:
- os: windows-latest
python-version: "2.7"
diff --git a/docs/News.rst b/docs/News.rst
index 217097a..0d67c1d 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,8 @@ News
SQLObject development (master)
==============================
+* Tested with Python 3.14.
+
SQLObject 3.13.0
================
diff --git a/setup.py b/setup.py
index bc6a45a..02b384c 100755
--- a/setup.py
+++ b/setup.py
@@ -65,6 +65,7 @@ and `GitHub <https://github.com/sqlobject>`_.
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
+ "Programming Language :: Python :: 3.14",
"Topic :: Database",
"Topic :: Database :: Front-Ends",
"Topic :: Software Development :: Libraries :: Python Modules",
diff --git a/tox.ini b/tox.ini
index bb8ed52..fb681af 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 3.15
-envlist = py{27,34,35,36,37,38,39,310,311,312,313}-sqlite{,-memory},py{27,37,313}-flake8
+envlist = py{27,34,35,36,37,38,39,310,311,312,313,314}-sqlite{,-memory},py{27,37,313}-flake8
# Base test environment settings
[testenv]
@@ -67,7 +67,7 @@ commands =
pytest -D "mysql://localhost/sqlobject_test?driver=mysqldb&charset=utf8&debug=1"
mysql --execute="drop database sqlobject_test;"
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysqlclient]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysqlclient]
commands = {[mysqlclient]commands}
[mysql-connector]
@@ -83,7 +83,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-connector]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-connector]
commands = {[mysql-connector]commands}
[mysql-connector_py]
@@ -99,7 +99,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-connector_py]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector_py]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-connector_py]
commands = {[mysql-connector_py]commands}
[pymysql]
@@ -115,7 +115,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[pymysql]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-pymysql]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-pymysql]
commands = {[pymysql]commands}
[mariadb]
@@ -126,7 +126,7 @@ commands =
pytest -D "mysql://localhost/sqlobject_test?driver=mariadb&charset=utf8&debug=1"
mysql --execute="drop database sqlobject_test;"
-[testenv:py3{6,7,8,9,10,11,12,13}-mariadb]
+[testenv:py3{6,7,8,9,10,11,12,13,14}-mariadb]
commands = {[mariadb]commands}
[mysql-pyodbc]
@@ -143,7 +143,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-pyodbc]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-pyodbc-noauto]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-pyodbc-noauto]
commands = {[mysql-pyodbc]commands}
[mysql-pypyodbc]
@@ -159,7 +159,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-pypyodbc]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-pypyodbc-noauto]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-pypyodbc-noauto]
commands = {[mysql-pypyodbc]commands}
# PostgreSQL test environments
@@ -171,7 +171,7 @@ commands =
pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
-[testenv:py3{6,7,8,9,10,11,12,13}-postgres-psycopg]
+[testenv:py3{6,7,8,9,10,11,12,13,14}-postgres-psycopg]
commands = {[psycopg]commands}
[psycopg_c]
@@ -182,7 +182,7 @@ commands =
pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
-[testenv:py3{6,7,8,9,10,11,12,13}-postgres-psycopg_c]
+[testenv:py3{6,7,8,9,10,11,12,13,14}-postgres-psycopg_c]
commands = {[psycopg_c]commands}
[psycopg2]
@@ -198,7 +198,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[psycopg2]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-postgres-psycopg2]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-psycopg2]
commands = {[psycopg2]commands}
[pygresql]
@@ -214,7 +214,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[pygresql]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-postgres-pygresql]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-pygresql]
commands = {[pygresql]commands}
[pg8000]
@@ -230,7 +230,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[pg8000]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-postgres-pg8000]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-pg8000]
commands = {[pg8000]commands}
[postgres-pyodbc]
@@ -247,7 +247,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[postgres-pyodbc]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-postgres-pyodbc-noauto]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-pyodbc-noauto]
commands = {[postgres-pyodbc]commands}
[postgres-pypyodbc]
@@ -263,7 +263,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[postgres-pypyodbc]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-postgres-pypyodbc-noauto]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-postgres-pypyodbc-noauto]
commands = {[postgres-pypyodbc]commands}
@@ -280,7 +280,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[sqlite]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-sqlite]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-sqlite]
commands = {[sqlite]commands}
[sqlite-memory]
@@ -293,7 +293,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[sqlite-memory]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-sqlite-memory]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-sqlite-memory]
commands = {[sqlite-memory]commands}
@@ -311,7 +311,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[fdb]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-firebird-fdb]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-firebird-fdb]
commands = {[fdb]commands}
[firebirdsql]
@@ -327,16 +327,16 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[firebirdsql]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-firebirdsql]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-firebirdsql]
commands = {[firebirdsql]commands}
# Special test environments
-[testenv:py{27,34,35,36,37,38,39,310,311,312,313}-flake8]
+[testenv:py{27,34,35,36,37,38,39,310,311,312,313,314}-flake8]
changedir = ./
deps =
flake8
- pytest < 7.0
+ pytest
commands =
{[testenv]commands}
flake8 .
@@ -358,7 +358,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mssql-pyodbc-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mssql-pyodbc-noauto-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mssql-pyodbc-noauto-w32]
platform = win32
commands = {[mssql-pyodbc-w32]commands}
@@ -386,7 +386,7 @@ commands =
pytest -D "mysql://ODBC@localhost/sqlobject_test?driver=mysqldb&charset=utf8&debug=1"
mysql --user=ODBC -e "drop database sqlobject_test;"
-[testenv:py3{6,7,8,9,10,11,12,13}-mysqlclient-w32]
+[testenv:py3{6,7,8,9,10,11,12,13,14}-mysqlclient-w32]
platform = win32
commands = {[mysqlclient-w32]commands}
@@ -405,7 +405,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-connector-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-connector-w32]
platform = win32
commands = {[mysql-connector-w32]commands}
@@ -424,7 +424,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-connector_py-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector_py-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-connector_py-w32]
platform = win32
commands = {[mysql-connector_py-w32]commands}
@@ -456,7 +456,7 @@ commands =
pytest -D "mysql://ODBC@localhost/sqlobject_test?driver=mariadb&charset=utf8&debug=1"
mysql --user=ODBC -e "drop database sqlobject_test;"
-[testenv:py3{6,7,8,9,10,11,12,13}-mariadb-w32]
+[testenv:py3{6,7,8,9,10,11,12,13,14}-mariadb-w32]
platform = win32
commands = {[mariadb-w32]commands}
@@ -476,7 +476,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysql-pyodbc-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-pyodbc-noauto-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13,14}-mysql-pyodbc-noauto-w32]
platform = win32
commands = {[mysql-pyodbc-w32]commands}
@@ -496,7 +496,7 @@ commands =
... 230 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2025-03-07 13:59:10
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.13.0 has been created
at a691e22b504bfc5e7f8727cae9637d2879631e8c (tag)
tagging 0217eb3c33bf7106ffd32b8c4919a86ad71a5de2 (commit)
replaces 3.12.0.post2
tagged by Oleg Broytman
on Fri Mar 7 16:37:41 2025 +0300
- Log -----------------------------------------------------------------
Release 3.13.0
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmfK9qUACgkQbggLcLYo
ewMgBw/8CtQdUwqJQ6GO7JdL+qpyZcmvdatstSiu8MmwfGiVyeU/b9c+9+d1X53c
DkVJl8LgptoJulADKOg1Psoo6fqVXGCWdKVkZOUeE7on0iQVTpv43vh8jorTvXAJ
unzWN0Mx+5XwdDN/bSx5QVMi7iYdeZKmYi31/kuW0EAWbVPopTbgHQmcXwlnDZIi
8WxRBH9f/Fr97eSYGMraBFWrQam3iIutm69QjRjBYJgWKbkCz57FaDV60/SugxoK
zOKsgJS73ADjk/4wxtr6KGvtXOpO1Rn9Ng0eRWkWRf10kXekPBpdTzVKoQm//UBr
t43svKqYhM2ZsPfEiZ5xJMiKdo8wRjnwxP/vN+UQEAx5c50IT5wNjSkmZ2SjZZAN
4UE9hrk1IO2WQtjAtk+9qISSbgvlo2Nzfj2Fts9Hsy3tpoLRyC34D2kDTS9dJnuB
ZdYwmOPmzNO07099KmqRQWUOa490Rn+5yYRbRry3wRSKfHnLWh0JGfjLn6XHK7T6
Dyfov+4fGXZFjg0J2+qOUQ6atpQCJgEU+7ryOq8ya2FDiHqbrXiX31NQMcGDA5Iz
NLxM+JTRpBVn/IKWZU+otdWDZ7Uj8bglyjNCXZPgb6QKrG1VrfFg2sl0oUoODFvM
mCN6wB6dyGR1emSiayW+GOGL2O35dm3uIpdB4VElnz6mRt+A268=
=ZzzY
-----END PGP SIGNATURE-----
Oleg Broytman (23):
Build: Prepare for the next release
Feat(MySQL): Extend default list of drivers
Feat(Pg): Extend default list of drivers
Fix(mysqlconnection): Drop support for CyMySQL
Fix(psycopg): Convert Binary type
Fix(psycopg): Extract error code/message
Fix outstanding problems with `psycopg`
Tests(GHActions): Fix old bug in the workflow on w32
Tests(tox): Rename `mysql-connector` tests to `mysql-cnx`
Tests(tox): Improve tests of `mysql-connector`
Tests(tox): Fix `mysql-connector-python-w32` tests
Tests(tox): Run `psycopg2` tests under Py 3.13
Tests(GHActions): Better error handling
Tests(tox): Skip `psycopg2` test under Py 3.8 on w32
Tests: Add tests for `mysqldb` and `mysqlclient` on w32
Tests(tox): Remove dummy environments
Tests(tox): Run tests with `psycopg[c]`
Docs(News): Fix literal
Feat(Pg): Dropped support for `py-postgresql`
Fix(pg8000): Fixed all problems
Tests(tox): Rename `mysql-connector-python` tests to `mysql-connector_py`
Feat(pg8000): Declare it the first class driver
Release 3.13.0
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2025-03-07 13:59:03
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via 27b78f03439786ac5b9366755fc6a227bbcf1051 (commit)
via 0217eb3c33bf7106ffd32b8c4919a86ad71a5de2 (commit)
via e16bb5901cfb1916c23ed441435b22723a006d25 (commit)
via c61aa5a4a23cecd712a0836ec0c2afe628795271 (commit)
via e2dfa497451a7c6d010ac754fbe4644527811726 (commit)
via efd01ad9d8bc56a5820852f5c6bdc7550c6f1793 (commit)
via 2db031376148d5153994cfd3ff5ff59e135ccc17 (commit)
via 90d193dbf3cad7679c2f277efa792207a35e7cde (commit)
via 2cc558e355b57a0abe15130444d5e3f843b609f6 (commit)
via ecbb61d11bda8b795167e9c78e56ed38aeb2cd91 (commit)
via 3186b3d6121e93d6787754fdc569e9da4adf4aed (commit)
via 5c8fe5b2a97c5049f04b68ee6a97d1fcc13206e5 (commit)
via 6fd55a0e884c6c60f7ac811fc223740f50b47268 (commit)
via 9d3e36f8a282c915cffb6068ef13e4aaeb5dec4c (commit)
via 9cc652db6516aadb1dcebb395d1de53d95a1421b (commit)
via f5c41a4a0c1033fcb73d4a4300302cdac6a9e1fa (commit)
via c2374e64a0540b8ae3ac38a0b72d6b6c66ec26c8 (commit)
via f592d97f048387106352782dfbfa90409024b2e5 (commit)
via 07b0ca4b2551fe01654beb96e13a107841137762 (commit)
via d2c26075783a42d9103dee8e783b7f770a981543 (commit)
via 33a25016093e8cbdaddbf14715ab60ecb13084de (commit)
from edb3970a31c93033b7e12b0f40b7cda52b7c3b6d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/27b78f03439786ac5b9366755fc6a227bbcf1051
commit 27b78f03439786ac5b9366755fc6a227bbcf1051
Author: Oleg Broytman <ph...@ph...>
Date: Fri Mar 7 16:47:14 2025 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index f6dc6fe..dfdda2c 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,45 +1,28 @@
Hello!
-I'm pleased to announce version 3.13.0, the first release of branch
-3.13 of SQLObject.
-
-
-What's new in SQLObject
-=======================
-
-Drivers
--------
-
-* Extended default list of MySQL drivers to ``mysqldb``, ``mysqlclient``,
- ``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
+I'm pleased to announce version 3.13.1a1, the first alpha of the upcoming
+release of branch 3.13 of SQLObject.
-* Extended default list of PostgreSQL drivers to ``psycopg``, ``psycopg2``,
- ``pygresql``, ``pg8000``.
+I'm pleased to announce version 3.13.1a2, the second alpha of the upcoming
+release of branch 3.13 of SQLObject.
-* Fixed outstanding problems with ``psycopg``. It's now the first class driver.
+I'm pleased to announce version 3.13.1b1, the first beta of the upcoming
+release of branch 3.13 of SQLObject.
-* Fixed all problems with ``pg8000``. It's now the first class driver.
+I'm pleased to announce version 3.13.1rc1, the first release candidate
+of the upcoming release of branch 3.13 of SQLObject.
-* Dropped support for ``CyMySQL``;
- its author refused to fix unicode-related problems.
-
-* Dropped support for ``py-postgresql``; it's completely broken
- with debianized ``Postgres`` and the authors reject fixes.
-
-Tests
------
-
-* Added tests for ``mysqldb`` (aka ``mysql-python``)
- and ``mysqlclient`` on w32.
+I'm pleased to announce version 3.13.1, the first bugfix release of branch
+3.13 of SQLObject.
-* Improved tests of ``mysql-connector`` and ``mysql-connector-python``.
+I'm pleased to announce version 3.13.0, the first release of branch
+3.13 of SQLObject.
-CI
---
-* Tests(GHActions): Fixed old bugs in the workflow on w32.
+What's new in SQLObject
+=======================
-* Run tests with ``psycopg[c]``.
+The contributors for this release are ... Thanks!
For a more complete list, please see the news:
@@ -71,7 +54,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.13.0
+https://pypi.org/project/SQLObject/3.13.1a0.dev20250307/
News and changes:
http://sqlobject.org/News.html
diff --git a/docs/News.rst b/docs/News.rst
index f4a3f40..217097a 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,6 +5,9 @@ News
.. contents:: Contents:
:backlinks: none
+SQLObject development (master)
+==============================
+
SQLObject 3.13.0
================
diff --git a/setup.py b/setup.py
index 1bd4ea1..bc6a45a 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 5 - Production/Stable",
+ "Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
http://sourceforge.net/p/sqlobject/sqlobject/ci/0217eb3c33bf7106ffd32b8c4919a86ad71a5de2
commit 0217eb3c33bf7106ffd32b8c4919a86ad71a5de2
Author: Oleg Broytman <ph...@ph...>
Date: Fri Mar 7 16:34:59 2025 +0300
Release 3.13.0
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 7e3a663..f6dc6fe 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,25 +1,45 @@
Hello!
-I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
-release of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.13.0, the first release of branch
+3.13 of SQLObject.
-I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
-release of branch 3.12 of SQLObject.
-I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
-release of branch 3.12 of SQLObject.
+What's new in SQLObject
+=======================
-I'm pleased to announce version 3.12.1rc1, the first release candidate
-of the upcoming release of branch 3.12 of SQLObject.
+Drivers
+-------
-I'm pleased to announce version 3.12.1, the first bugfix release of branch
-3.12 of SQLObject.
+* Extended default list of MySQL drivers to ``mysqldb``, ``mysqlclient``,
+ ``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
+* Extended default list of PostgreSQL drivers to ``psycopg``, ``psycopg2``,
+ ``pygresql``, ``pg8000``.
-What's new in SQLObject
-=======================
+* Fixed outstanding problems with ``psycopg``. It's now the first class driver.
+
+* Fixed all problems with ``pg8000``. It's now the first class driver.
+
+* Dropped support for ``CyMySQL``;
+ its author refused to fix unicode-related problems.
+
+* Dropped support for ``py-postgresql``; it's completely broken
+ with debianized ``Postgres`` and the authors reject fixes.
+
+Tests
+-----
+
+* Added tests for ``mysqldb`` (aka ``mysql-python``)
+ and ``mysqlclient`` on w32.
+
+* Improved tests of ``mysql-connector`` and ``mysql-connector-python``.
+
+CI
+--
+
+* Tests(GHActions): Fixed old bugs in the workflow on w32.
-The contributors for this release are ... Thanks!
+* Run tests with ``psycopg[c]``.
For a more complete list, please see the news:
@@ -51,7 +71,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.1a0.dev20250201/
+https://pypi.org/project/SQLObject/3.13.0
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 3fde456..4e7af74 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.12.0.post2
-======================
+SQLObject 3.13.0
+================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index 8d508b2..3e3cda0 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.12.0.post2 &&
+build_docs 3.13.0 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index 9d2940e..f4a3f40 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,10 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject (development)
-=======================
+SQLObject 3.13.0
+================
+
+Released 2025 Mar 07.
Drivers
-------
diff --git a/setup.py b/setup.py
index bc6a45a..1bd4ea1 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 3 - Alpha",
+ "Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index 9a310a1..cc6e4c5 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.12.0.post2'
+version = '3.13.0'
major = 3
-minor = 12
+minor = 13
micro = 0
-release_level = 'post'
-serial = 2
+release_level = 'final'
+serial = 0
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/e16bb5901cfb1916c23ed441435b22723a006d25
commit e16bb5901cfb1916c23ed441435b22723a006d25
Author: Oleg Broytman <ph...@ph...>
Date: Fri Mar 7 15:50:53 2025 +0300
Feat(pg8000): Declare it the first class driver
diff --git a/docs/News.rst b/docs/News.rst
index fd4cacc..9d2940e 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -15,12 +15,11 @@ Drivers
``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
* Extended default list of PostgreSQL drivers to ``psycopg``, ``psycopg2``,
- ``pygresql``.
+ ``pygresql``, ``pg8000``.
* Fixed outstanding problems with ``psycopg``. It's now the first class driver.
-* Fixed all problems with ``pg8000``. It's now close to become
- the first class driver.
+* Fixed all problems with ``pg8000``. It's now the first class driver.
* Dropped support for ``CyMySQL``;
its author refused to fix unicode-related problems.
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index ac18a6f..7d9f918 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -57,7 +57,7 @@ class PostgresConnection(DBAPI):
def __init__(self, dsn=None, host=None, port=None, db=None,
user=None, password=None, **kw):
- drivers = kw.pop('driver', None) or 'psycopg,psycopg2,pygresql'
+ drivers = kw.pop('driver', None) or 'psycopg,psycopg2,pygresql,pg8000'
for driver in drivers.split(','):
driver = driver.strip()
if not driver:
http://sourceforge.net/p/sqlobject/sqlobject/ci/c61aa5a4a23cecd712a0836ec0c2afe628795271
commit c61aa5a4a23cecd712a0836ec0c2afe628795271
Author: Oleg Broytman <ph...@ph...>
Date: Fri Mar 7 15:47:18 2025 +0300
Tests(tox): Rename `mysql-connector-python` tests to `mysql-connector_py`
Restored `mysql-connector`.
This is to avoid confusing `mysql-connector`
and `mysql-connector-python` tests.
diff --git a/tox.ini b/tox.ini
index c918dd8..bb8ed52 100644
--- a/tox.ini
+++ b/tox.ini
@@ -16,8 +16,8 @@ deps =
!py34: zope.datetime
mysqldb: mysql-python
mysqlclient: -rdevscripts/requirements/requirements_mysqlclient.txt
- mysql-cnx: mysql-connector
- mysql-connector-python: -rdevscripts/requirements/requirements_connector_python.txt
+ mysql-connector: mysql-connector
+ mysql-connector_py: -rdevscripts/requirements/requirements_connector_python.txt
pymysql: -rdevscripts/requirements/requirements_pymysql.txt
mariadb: mariadb
psycopg: psycopg[binary]
@@ -70,7 +70,7 @@ commands =
[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysqlclient]
commands = {[mysqlclient]commands}
-[mysql-cnx]
+[mysql-connector]
commands =
{[testenv]commands}
-mysql --execute="drop database sqlobject_test;"
@@ -78,15 +78,15 @@ commands =
pytest -D "mysql://runner:@localhost/sqlobject_test?driver=connector&charset=utf8&debug=1"
mysql --execute="drop database sqlobject_test;"
-[testenv:py27-mysql-cnx]
+[testenv:py27-mysql-connector]
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
- {[mysql-cnx]commands}
+ {[mysql-connector]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-cnx]
-commands = {[mysql-cnx]commands}
+[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector]
+commands = {[mysql-connector]commands}
-[mysql-connector-python]
+[mysql-connector_py]
commands =
{[testenv]commands}
-mysql --execute="drop database sqlobject_test;"
@@ -94,13 +94,13 @@ commands =
pytest -D "mysql://runner:@localhost/sqlobject_test?driver=connector-python&charset=utf8&debug=1"
mysql --execute="drop database sqlobject_test;"
-[testenv:py27-mysql-connector-python]
+[testenv:py27-mysql-connector_py]
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
- {[mysql-connector-python]commands}
+ {[mysql-connector_py]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector-python]
-commands = {[mysql-connector-python]commands}
+[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector_py]
+commands = {[mysql-connector_py]commands}
[pymysql]
commands =
@@ -390,7 +390,7 @@ commands =
platform = win32
commands = {[mysqlclient-w32]commands}
-[mysql-cnx-w32]
+[mysql-connector-w32]
platform = win32
commands =
{[testenv]commands}
@@ -399,17 +399,17 @@ commands =
pytest -D "mysql://ODBC@localhost/sqlobject_test?driver=connector&charset=utf8&debug=1"
mysql --user=ODBC -e "drop database sqlobject_test;"
-[testenv:py27-mysql-cnx-w32]
+[testenv:py27-mysql-connector-w32]
platform = win32
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
- {[mysql-cnx-w32]commands}
+ {[mysql-connector-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-cnx-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector-w32]
platform = win32
-commands = {[mysql-cnx-w32]commands}
+commands = {[mysql-connector-w32]commands}
-[mysql-connector-python-w32]
+[mysql-connector_py-w32]
platform = win32
commands =
{[testenv]commands}
@@ -418,15 +418,15 @@ commands =
pytest -D "mysql://ODBC@localhost/sqlobject_test?driver=connector-python&charset=utf8&debug=1"
mysql --user=ODBC -e "drop database sqlobject_test;"
-[testenv:py27-mysql-connector-python-w32]
+[testenv:py27-mysql-connector_py-w32]
platform = win32
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
- {[mysql-connector-python-w32]commands}
+ {[mysql-connector_py-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector-python-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysql-connector_py-w32]
platform = win32
-commands = {[mysql-connector-python-w32]commands}
+commands = {[mysql-connector_py-w32]commands}
[pymysql-w32]
platform = win32
http://sourceforge.net/p/sqlobject/sqlobject/ci/e2dfa497451a7c6d010ac754fbe4644527811726
commit e2dfa497451a7c6d010ac754fbe4644527811726
Author: Oleg Broytman <ph...@ph...>
Date: Mon Mar 3 21:58:45 2025 +0300
Fix(pg8000): Fixed all problems
diff --git a/docs/News.rst b/docs/News.rst
index a606541..fd4cacc 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -19,6 +19,9 @@ Drivers
* Fixed outstanding problems with ``psycopg``. It's now the first class driver.
+* Fixed all problems with ``pg8000``. It's now close to become
+ the first class driver.
+
* Dropped support for ``CyMySQL``;
its author refused to fix unicode-related problems.
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index a128ab8..ac18a6f 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -73,8 +73,12 @@ class PostgresConnection(DBAPI):
import pgdb
self.module = pgdb
elif driver == 'pg8000':
- import pg8000
- self.module = pg8000
+ try:
+ import pg8000.dbapi
+ self.module = pg8000.dbapi
+ except ImportError:
+ import pg8000
... 1314 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2025-02-01 19:30:45
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
discards 64610cfa6d704c21a01fe699e5b1128743109940 (commit)
discards 35173138349b7274b1f4d01d8ccafee1d1983368 (commit)
via edb3970a31c93033b7e12b0f40b7cda52b7c3b6d (commit)
via 6ac086505501cb878066577072be951539db4b2d (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (64610cfa6d704c21a01fe699e5b1128743109940)
\
N -- N -- N (edb3970a31c93033b7e12b0f40b7cda52b7c3b6d)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/edb3970a31c93033b7e12b0f40b7cda52b7c3b6d
commit edb3970a31c93033b7e12b0f40b7cda52b7c3b6d
Author: Oleg Broytman <ph...@ph...>
Date: Mon Jan 13 21:10:20 2025 +0300
Feat(Pg): Extend default list of drivers
The list is now `psycopg`, `psycopg2`, `pygresql`.
diff --git a/docs/News.rst b/docs/News.rst
index 3cba166..53e959c 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -14,6 +14,9 @@ Drivers
* Extended default list of MySQL drivers to ``mysqldb``, ``mysqlclient``,
``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
+* Extended default list of PostgreSQL drivers to ``psycopg``, ``psycopg2``,
+ ``pygresql``.
+
SQLObject 3.12.0.post2
======================
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index 8f08941..9f46fa3 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -1852,7 +1852,7 @@ parameter in DB URI or PostgresConnection that can be a comma-separated
list of driver names. Possible drivers are: ``psycopg``, ``psycopg2``,
``pygresql``, ``pypostgresql``, ``pg8000``,
``pyodbc``, ``pypyodbc`` or ``odbc`` (try ``pyodbc`` and
-``pypyodbc``). Default is ``psycopg``.
+``pypyodbc``). Default are ``psycopg``, ``psycopg2``, ``pygresql``.
Connection-specific parameters are: ``sslmode``, ``unicodeCols``,
``schema``, ``charset``.
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index bb76afa..fb24f95 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -57,7 +57,7 @@ class PostgresConnection(DBAPI):
def __init__(self, dsn=None, host=None, port=None, db=None,
user=None, password=None, **kw):
- drivers = kw.pop('driver', None) or 'psycopg'
+ drivers = kw.pop('driver', None) or 'psycopg,psycopg2,pygresql'
for driver in drivers.split(','):
driver = driver.strip()
if not driver:
http://sourceforge.net/p/sqlobject/sqlobject/ci/6ac086505501cb878066577072be951539db4b2d
commit 6ac086505501cb878066577072be951539db4b2d
Author: Oleg Broytman <ph...@ph...>
Date: Mon Jan 13 21:05:30 2025 +0300
Feat(MySQL): Extend default list of drivers
The list is now `mysqldb`, `mysqlclient`,
`mysql-connector`, `mysql-connector-python`, `pymysql`.
diff --git a/docs/News.rst b/docs/News.rst
index 83a60ba..3cba166 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,12 @@ News
SQLObject (development)
=======================
+Drivers
+-------
+
+* Extended default list of MySQL drivers to ``mysqldb``, ``mysqlclient``,
+ ``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
+
SQLObject 3.12.0.post2
======================
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index c6bbd17..8f08941 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -1804,7 +1804,8 @@ define the backend using ``sqlmeta.createSQL``.
Supported drivers are ``mysqldb``, ``connector``, ``pymysql``, ``cymysql``,
``mariadb``, ``pyodbc``, ``pypyodbc`` or ``odbc`` (try ``pyodbc`` and
-``pypyodbc``); defualt is ``mysqldb``.
+``pypyodbc``); default are ``mysqldb``, ``mysqlclient``,
+``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
Keyword argument ``conv`` allows to pass a list of custom converters.
diff --git a/sqlobject/mysql/mysqlconnection.py b/sqlobject/mysql/mysqlconnection.py
index 557adb9..8ba4a99 100644
--- a/sqlobject/mysql/mysqlconnection.py
+++ b/sqlobject/mysql/mysqlconnection.py
@@ -39,7 +39,8 @@ class MySQLConnection(DBAPI):
odbc_keywords = ('Server', 'Port', 'UID', 'Password', 'Database')
def __init__(self, db, user, password='', host='localhost', port=0, **kw):
- drivers = kw.pop('driver', None) or 'mysqldb'
+ drivers = kw.pop('driver', None) or 'mysqldb,mysqlclient,' + \
+ 'mysql-connector,mysql-connector-python,pymysql'
for driver in drivers.split(','):
driver = driver.strip().lower()
if not driver:
-----------------------------------------------------------------------
Summary of changes:
docs/News.rst | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2025-02-01 19:24:59
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.12.0.post1 has been created
at a76ee014288dddd4e6db8c22eff3d98e607e6063 (tag)
tagging 0db3eeeab3c3837d5491481e0bf9b7538985cdd7 (commit)
replaces 3.12.0
tagged by Oleg Broytman
on Fri Dec 20 17:55:59 2024 +0300
- Log -----------------------------------------------------------------
Release 3.12.0.post1
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmdlhX8ACgkQbggLcLYo
ewMl+w//bKLwlbEgqn9SKUWdjc9QsG6u/l6TphYP80kc6EQdZpkQD4ekLW38ePGh
qXzmhQnIymYanrtl3sU4sh85y3PmCpsAe4E/p9r8Od537MVACw2FbXh/EcIJfQnP
MZZ9CHYvsa1ZGEp8T9pPNQOPoTagKxZUcBqSTD68w8INfxVCsVUQxtNfc4wJNWqv
zn90w396Qaj+7ejX+eYQJ1ABO3Ab600LF+WNJiFVLA5LngvEga0iopUl2LI86LxF
4+x2KZBQp+FKRv/HuB6aNHLsSMFBlZV66eE+CWSLJUUtiPmteRzp2rgVhP2ID8L2
YDEEmNyP6lh4QOMAVdb1Eiw3ocYS/BPv1xbUgkk3c29izooFtzWR+MEgHZQ00xOd
W/Dd9raZRytKql2yvO4Bb5Nav0q5eB14q2Y2uMvAjmMdy8+U4CinSpr9GznuVPnI
EqsuouYW+JPJZ7DGcYqj/PXn6fyWHVjvfx7QFyB6m/fZP9l6fyRMYEO/KZsRXX0U
MoqCSTjV8EqjxyvzYkG9ouwNPGVIuZbUANlO1BkEnf4yLdT5mlYHi8ktHghUX/mP
8wbz5rfc/Vaob81ph5LkVGTduh1pcsS24ULRjGhV2B25yRL4Nen6qiUhIrBcFval
XQQr3JUgI9WBmltywX9zbHrcrhhInge5ugiF9IA41N4RFT4IE94=
=LeCX
-----END PGP SIGNATURE-----
Oleg Broytman (3):
Build: Prepare for the next release
Build: Release only sdist
Release 3.12.0.post1
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2025-02-01 19:24:56
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.12.0.post2 has been created
at 95dd2048ebe0c33e0b618c63832475c305215c68 (tag)
tagging 749f3c83307895ac556f1eb30e437a5c5a3e2f40 (commit)
replaces 3.12.0
tagged by Oleg Broytman
on Sat Feb 1 22:03:50 2025 +0300
- Log -----------------------------------------------------------------
Release 3.12.0.post2
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmeecBYACgkQbggLcLYo
ewPNJg//Xke+3VtOIXaZ1ZppT/VKsUDNX4CFCXTJmy/Iu4axdyTDNG7DVHyCPD0i
Z6kpxwjyioMAlVEQhRIUIPE+gsHvtsARrSACxadNKQWtHk+eY5/2oAlZKePnZlTT
yrglvbsXYzkPbLsuH862rHOOltiVJ9Y3G30oroEN5jmTnchjpGel8JcAva+IFFnf
OToq9aHk5noMouGIEZ7adTEK25B67FaYsjye6RTCRro5bSdIFaKXJ4Ts4xTmIMgR
Q4Ci6Rgd5Qn+DaTM+HCtg76LqLQmxNNIUaY3CUBC1RgZ/y44N+A8RdrSH1MSaCFb
ayJQMWZok6lDIdnAazxQ6F+Bn90w6Y5q8qCQkirT/j0f1DZgy+4fD2qkzSJawiLL
d/mYw0Rh0QRbSxCCh5JxLgXlfimdtGCxdTE5tZ8+GKxzucxHdJ/CzINJF02e5FqO
08Qu/suU1jn4aI9SDAgR4+bX9Bmv/bGLuRJ54SlRtiRFaZoaeUkvJBac4+WwreuE
0boVfV+R2tuF2m7GmJEUD+BPTSfeV/ce4NJ9BGeKCLjpjaoiNFSOmZkV3yLoOEUd
03TwwMVauImCeSHPQCicdLHA8/gx0by+kdpr1p9GeXgMxED/9WlEhMCZIjqqW937
63wcB/q6nzb8HYBl1XzvHvCcbzNkNYHV7sbmLT6q/NXOgaCNcII=
=IlnO
-----END PGP SIGNATURE-----
Oleg Broytman (5):
Build: Prepare for the next release
CI(GHActions): Upgrade `setup-python` and `cache` actions
Tests(tox): Change syntax for `envlist`
Build(requirements): Use `FormEncode` 2.1.1 for Python 3.13
Release 3.12.0.post2
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2025-02-01 19:24:53
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via 64610cfa6d704c21a01fe699e5b1128743109940 (commit)
via 35173138349b7274b1f4d01d8ccafee1d1983368 (commit)
via d13705e34c49158b2c23675958752b779165ba1d (commit)
via 749f3c83307895ac556f1eb30e437a5c5a3e2f40 (commit)
via 738920611f57aefb355d6551863eb3a3aba34a2b (commit)
via 7f5284a05e1de651fdf99d90bdcaddfd10f68128 (commit)
via 194151f2670321684e34bbfb7d77c501492725b5 (commit)
from 500a70b21b62956202aeea8059e2a17889a2a919 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/64610cfa6d704c21a01fe699e5b1128743109940
commit 64610cfa6d704c21a01fe699e5b1128743109940
Author: Oleg Broytman <ph...@ph...>
Date: Mon Jan 13 21:10:20 2025 +0300
Feat(Pg): Extend default list of drivers
The list is now `psycopg`, `psycopg2`, `pygresql`.
diff --git a/docs/News.rst b/docs/News.rst
index 01ca0ab..4de503a 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -24,6 +24,9 @@ Drivers
* Extended default list of MySQL drivers to ``mysqldb``, ``mysqlclient``,
``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
+* Extended default list of PostgreSQL drivers to ``psycopg``, ``psycopg2``,
+ ``pygresql``.
+
SQLObject 3.12.0
================
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index 8f08941..9f46fa3 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -1852,7 +1852,7 @@ parameter in DB URI or PostgresConnection that can be a comma-separated
list of driver names. Possible drivers are: ``psycopg``, ``psycopg2``,
``pygresql``, ``pypostgresql``, ``pg8000``,
``pyodbc``, ``pypyodbc`` or ``odbc`` (try ``pyodbc`` and
-``pypyodbc``). Default is ``psycopg``.
+``pypyodbc``). Default are ``psycopg``, ``psycopg2``, ``pygresql``.
Connection-specific parameters are: ``sslmode``, ``unicodeCols``,
``schema``, ``charset``.
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index bb76afa..fb24f95 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -57,7 +57,7 @@ class PostgresConnection(DBAPI):
def __init__(self, dsn=None, host=None, port=None, db=None,
user=None, password=None, **kw):
- drivers = kw.pop('driver', None) or 'psycopg'
+ drivers = kw.pop('driver', None) or 'psycopg,psycopg2,pygresql'
for driver in drivers.split(','):
driver = driver.strip()
if not driver:
http://sourceforge.net/p/sqlobject/sqlobject/ci/35173138349b7274b1f4d01d8ccafee1d1983368
commit 35173138349b7274b1f4d01d8ccafee1d1983368
Author: Oleg Broytman <ph...@ph...>
Date: Mon Jan 13 21:05:30 2025 +0300
Feat(MySQL): Extend default list of drivers
The list is now `mysqldb`, `mysqlclient`,
`mysql-connector`, `mysql-connector-python`, `pymysql`.
diff --git a/docs/News.rst b/docs/News.rst
index 83a60ba..01ca0ab 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -18,6 +18,12 @@ Installation/dependencies
* Use ``FormEncode`` 2.1.1 for Python 3.13.
+Drivers
+-------
+
+* Extended default list of MySQL drivers to ``mysqldb``, ``mysqlclient``,
+ ``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
+
SQLObject 3.12.0
================
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index c6bbd17..8f08941 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -1804,7 +1804,8 @@ define the backend using ``sqlmeta.createSQL``.
Supported drivers are ``mysqldb``, ``connector``, ``pymysql``, ``cymysql``,
``mariadb``, ``pyodbc``, ``pypyodbc`` or ``odbc`` (try ``pyodbc`` and
-``pypyodbc``); defualt is ``mysqldb``.
+``pypyodbc``); default are ``mysqldb``, ``mysqlclient``,
+``mysql-connector``, ``mysql-connector-python``, ``pymysql``.
Keyword argument ``conv`` allows to pass a list of custom converters.
diff --git a/sqlobject/mysql/mysqlconnection.py b/sqlobject/mysql/mysqlconnection.py
index 557adb9..8ba4a99 100644
--- a/sqlobject/mysql/mysqlconnection.py
+++ b/sqlobject/mysql/mysqlconnection.py
@@ -39,7 +39,8 @@ class MySQLConnection(DBAPI):
odbc_keywords = ('Server', 'Port', 'UID', 'Password', 'Database')
def __init__(self, db, user, password='', host='localhost', port=0, **kw):
- drivers = kw.pop('driver', None) or 'mysqldb'
+ drivers = kw.pop('driver', None) or 'mysqldb,mysqlclient,' + \
+ 'mysql-connector,mysql-connector-python,pymysql'
for driver in drivers.split(','):
driver = driver.strip().lower()
if not driver:
http://sourceforge.net/p/sqlobject/sqlobject/ci/d13705e34c49158b2c23675958752b779165ba1d
commit d13705e34c49158b2c23675958752b779165ba1d
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 1 22:18:34 2025 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index d0b2fc1..47a3734 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,16 +1,26 @@
Hello!
-I'm pleased to announce version 3.12.0.post2, the second post-release
-of release 3.12.0 of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
+release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
+release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
+release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1rc1, the first release candidate
+of the upcoming release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1, the first bugfix release of branch
+3.12 of SQLObject.
What's new in SQLObject
=======================
-Installation/dependencies
--------------------------
+The contributors for this release are ... Thanks!
-* Use ``FormEncode`` 2.1.1 for Python 3.13.
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -42,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.0.post2
+https://pypi.org/project/SQLObject/3.12.1a0.dev20250201/
News and changes:
http://sqlobject.org/News.html
diff --git a/docs/News.rst b/docs/News.rst
index bc14736..83a60ba 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,6 +5,9 @@ News
.. contents:: Contents:
:backlinks: none
+SQLObject (development)
+=======================
+
SQLObject 3.12.0.post2
======================
diff --git a/setup.cfg b/setup.cfg
index 43bae0f..461bc50 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,6 +4,11 @@ universal = 1
[easy_install]
optimize = 2
+[egg_info]
+tag_build =
+tag_date = 0
+tag_svn_revision = 0
+
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 48e7a9d..1eeb42c 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 5 - Production/Stable",
+ "Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
http://sourceforge.net/p/sqlobject/sqlobject/ci/749f3c83307895ac556f1eb30e437a5c5a3e2f40
commit 749f3c83307895ac556f1eb30e437a5c5a3e2f40
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 1 21:46:43 2025 +0300
Release 3.12.0.post2
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 8fb113f..d0b2fc1 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,26 +1,16 @@
Hello!
-I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
-release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
-release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
-release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1rc1, the first release candidate
-of the upcoming release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1, the first bugfix release of branch
-3.12 of SQLObject.
+I'm pleased to announce version 3.12.0.post2, the second post-release
+of release 3.12.0 of branch 3.12 of SQLObject.
What's new in SQLObject
=======================
-The contributors for this release are ... Thanks!
+Installation/dependencies
+-------------------------
+* Use ``FormEncode`` 2.1.1 for Python 3.13.
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -52,7 +42,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.1a0.dev20241220/
+https://pypi.org/project/SQLObject/3.12.0.post2
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 980aae8..1829efc 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.12.0
-================
+SQLObject 3.12.0.post2
+======================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index 648f2f1..8d508b2 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.12.0 &&
+build_docs 3.12.0.post2 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index 95ed3c4..bc14736 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,10 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject (master)
-==================
+SQLObject 3.12.0.post2
+======================
+
+Released 2025 Feb 01.
Installation/dependencies
-------------------------
diff --git a/setup.cfg b/setup.cfg
index 461bc50..43bae0f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,11 +4,6 @@ universal = 1
[easy_install]
optimize = 2
-[egg_info]
-tag_build =
-tag_date = 0
-tag_svn_revision = 0
-
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 1eeb42c..48e7a9d 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 3 - Alpha",
+ "Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index 767a40e..9a310a1 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.12.0'
+version = '3.12.0.post2'
major = 3
minor = 12
micro = 0
-release_level = 'final'
-serial = 0
+release_level = 'post'
+serial = 2
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/738920611f57aefb355d6551863eb3a3aba34a2b
commit 738920611f57aefb355d6551863eb3a3aba34a2b
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 1 21:17:42 2025 +0300
Build(requirements): Use `FormEncode` 2.1.1 for Python 3.13
diff --git a/devscripts/requirements/requirements.txt b/devscripts/requirements/requirements.txt
index ce36de2..0283399 100644
--- a/devscripts/requirements/requirements.txt
+++ b/devscripts/requirements/requirements.txt
@@ -2,7 +2,7 @@
DateTime
FormEncode >= 1.1.1, != 1.3.0; python_version == '2.7'
-FormEncode >= 1.3.1; python_version >= '3.4' and python_version < '3.13'
-git+https://github.com/formencode/formencode.git; python_version >= '3.13'
+FormEncode >= 1.3.1; python_version >= '3.4'
+FormEncode >= 2.1.1; python_version >= '3.13'
PyDispatcher >= 2.0.4
diff --git a/docs/News.rst b/docs/News.rst
index 030a651..95ed3c4 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,11 @@ News
SQLObject (master)
==================
+Installation/dependencies
+-------------------------
+
+* Use ``FormEncode`` 2.1.1 for Python 3.13.
+
SQLObject 3.12.0
================
diff --git a/setup.py b/setup.py
index 9f5bea0..1eeb42c 100755
--- a/setup.py
+++ b/setup.py
@@ -104,11 +104,9 @@ and `GitHub <https://github.com/sqlobject>`_.
requires=['FormEncode', 'PyDispatcher'],
install_requires=[
"FormEncode>=1.1.1,!=1.3.0; python_version=='2.7'",
- "FormEncode>=1.3.1; python_version>='3.4' and python_version < '3.13'",
+ "FormEncode>=1.3.1; python_version>='3.4'",
+ "FormEncode>=2.1.1; python_version >= '3.13'",
"PyDispatcher>=2.0.4",
- "formencode @ "
- "git+https://github.com/formencode/formencode.git#egg=formencode"
- " ; python_version >= '3.13'",
],
extras_require={
# Firebird/Interbase
http://sourceforge.net/p/sqlobject/sqlobject/ci/7f5284a05e1de651fdf99d90bdcaddfd10f68128
commit 7f5284a05e1de651fdf99d90bdcaddfd10f68128
Author: Oleg Broytman <ph...@ph...>
Date: Tue Jan 14 00:20:58 2025 +0300
Tests(tox): Change syntax for `envlist`
`[testenv:]` doesn't allow lists like `[testenv:py27,py3{4,5}]`;
it only allows syntax like `[testenv:py{27,34,35}]`.
This commit changes syntax for `envlist` to make it closer to `[testenv:]`.
diff --git a/tox.ini b/tox.ini
index 82b39a4..a0df8f3 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 3.15
-envlist = py27,py3{4,5,6,7,8,9,10,11,12,13}-sqlite{,-memory},py{27,37,312}-flake8
+envlist = py{27,34,35,36,37,38,39,310,311,312,313}-sqlite{,-memory},py{27,37,312}-flake8
# Base test environment settings
[testenv]
http://sourceforge.net/p/sqlobject/sqlobject/ci/194151f2670321684e34bbfb7d77c501492725b5
commit 194151f2670321684e34bbfb7d77c501492725b5
Author: Oleg Broytman <ph...@ph...>
Date: Mon Jan 13 19:29:22 2025 +0300
CI(GHActions): Upgrade `setup-python` and `cache` actions
diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml
index e61a0c4..1611929 100644
--- a/.github/workflows/run-tests.yaml
+++ b/.github/workflows/run-tests.yaml
@@ -49,16 +49,16 @@ jobs:
miniforge-version: latest
python-version: ${{ matrix.python-version }}
if: ${{ !contains(fromJSON(env.not_in_conda), matrix.python-version) }}
- - uses: actions/setup-python@v4
+ - uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
if: ${{ contains(fromJSON(env.not_in_conda), matrix.python-version) }}
- - uses: actions/cache@v3
+ - uses: actions/cache@v4
with:
path: ~/conda_pkgs_dir
key: ${{ runner.os }}-conda
- name: Cache pip
- uses: actions/cache@v3
+ uses: actions/cache@v4
with:
path: ${{ matrix.pip-cache-path }}
key: ${{ runner.os }}-pip
-----------------------------------------------------------------------
Summary of changes:
.github/workflows/run-tests.yaml | 6 +++---
ANNOUNCE.rst | 2 +-
README.rst | 4 ++--
devscripts/build-all-docs | 2 +-
devscripts/requirements/requirements.txt | 4 ++--
docs/News.rst | 23 +++++++++++++++++++++--
docs/SQLObject.rst | 5 +++--
setup.py | 6 ++----
sqlobject/__version__.py | 6 +++---
sqlobject/mysql/mysqlconnection.py | 3 ++-
sqlobject/postgres/pgconnection.py | 2 +-
tox.ini | 2 +-
12 files changed, 42 insertions(+), 23 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 15:07:44
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.12.0.post1 has been deleted
was a76ee014288dddd4e6db8c22eff3d98e607e6063
- Log -----------------------------------------------------------------
0db3eeeab3c3837d5491481e0bf9b7538985cdd7 Release 3.12.0.post1
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 15:07:43
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
discards ff8635d69d2ae8d0b78308bdb952ff0775be502b (commit)
discards 0db3eeeab3c3837d5491481e0bf9b7538985cdd7 (commit)
discards 3f2b254f9a6616d8a778423472e4378fd07ec061 (commit)
This update discarded existing revisions and left the branch pointing at
a previous point in the repository history.
* -- * -- N (500a70b21b62956202aeea8059e2a17889a2a919)
\
O -- O -- O (ff8635d69d2ae8d0b78308bdb952ff0775be502b)
The removed revisions are not necessarily gone - if another reference
still refers to them they will stay in the repository.
No new revisions were added by this update.
Summary of changes:
README.rst | 4 ++--
devscripts/build-all-docs | 2 +-
devscripts/release | 2 +-
docs/News.rst | 10 ----------
sqlobject/__version__.py | 6 +++---
5 files changed, 7 insertions(+), 17 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 15:00:30
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, direct-link-formencode has been deleted
was 2805f3f689dfb83534ecec24b583de44ee5c811d
- Log -----------------------------------------------------------------
2805f3f689dfb83534ecec24b583de44ee5c811d Release 3.12.0.post1
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 14:59:49
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.12.0.post1 has been created
at a76ee014288dddd4e6db8c22eff3d98e607e6063 (tag)
tagging 0db3eeeab3c3837d5491481e0bf9b7538985cdd7 (commit)
replaces 3.12.0
tagged by Oleg Broytman
on Fri Dec 20 17:55:59 2024 +0300
- Log -----------------------------------------------------------------
Release 3.12.0.post1
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmdlhX8ACgkQbggLcLYo
ewMl+w//bKLwlbEgqn9SKUWdjc9QsG6u/l6TphYP80kc6EQdZpkQD4ekLW38ePGh
qXzmhQnIymYanrtl3sU4sh85y3PmCpsAe4E/p9r8Od537MVACw2FbXh/EcIJfQnP
MZZ9CHYvsa1ZGEp8T9pPNQOPoTagKxZUcBqSTD68w8INfxVCsVUQxtNfc4wJNWqv
zn90w396Qaj+7ejX+eYQJ1ABO3Ab600LF+WNJiFVLA5LngvEga0iopUl2LI86LxF
4+x2KZBQp+FKRv/HuB6aNHLsSMFBlZV66eE+CWSLJUUtiPmteRzp2rgVhP2ID8L2
YDEEmNyP6lh4QOMAVdb1Eiw3ocYS/BPv1xbUgkk3c29izooFtzWR+MEgHZQ00xOd
W/Dd9raZRytKql2yvO4Bb5Nav0q5eB14q2Y2uMvAjmMdy8+U4CinSpr9GznuVPnI
EqsuouYW+JPJZ7DGcYqj/PXn6fyWHVjvfx7QFyB6m/fZP9l6fyRMYEO/KZsRXX0U
MoqCSTjV8EqjxyvzYkG9ouwNPGVIuZbUANlO1BkEnf4yLdT5mlYHi8ktHghUX/mP
8wbz5rfc/Vaob81ph5LkVGTduh1pcsS24ULRjGhV2B25yRL4Nen6qiUhIrBcFval
XQQr3JUgI9WBmltywX9zbHrcrhhInge5ugiF9IA41N4RFT4IE94=
=LeCX
-----END PGP SIGNATURE-----
Oleg Broytman (3):
Build: Prepare for the next release
Build: Release only sdist
Release 3.12.0.post1
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 14:59:46
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, direct-link-formencode has been created
at 2805f3f689dfb83534ecec24b583de44ee5c811d (commit)
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/2805f3f689dfb83534ecec24b583de44ee5c811d
commit 2805f3f689dfb83534ecec24b583de44ee5c811d
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 17:29:10 2024 +0300
Release 3.12.0.post1
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 8fb113f..4539fb4 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,25 +1,56 @@
Hello!
-I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
-release of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.12.0.post1, the first post-release
+of release 3.12.0 of branch 3.12 of SQLObject.
-I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
-release of branch 3.12 of SQLObject.
-I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
-release of branch 3.12 of SQLObject.
+What's new in SQLObject
+=======================
-I'm pleased to announce version 3.12.1rc1, the first release candidate
-of the upcoming release of branch 3.12 of SQLObject.
+Drivers
+-------
-I'm pleased to announce version 3.12.1, the first bugfix release of branch
-3.12 of SQLObject.
+* Add support for CyMySQL; there're some problems with unicode yet.
+* Separate ``psycopg`` and ``psycopg2``;
+ ``psycopg`` is actually ``psycopg3`` now; not all tests pass.
-What's new in SQLObject
-=======================
+* 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.
+
+Build/release
+-------------
+
+* Use ``python3`` for release; requires for direct link syntax
+ ``FormEncode @ git+https://github.com/formencode/formencode.git``.
-The contributors for this release are ... Thanks!
+* Release only sdist: wheels do not allow direct links for dependencies.
For a more complete list, please see the news:
@@ -52,7 +83,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.1a0.dev20241220/
+https://pypi.org/project/SQLObject/3.12.0.post1
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 980aae8..c50fd2e 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.12.0
-================
+SQLObject 3.12.0.post1
+======================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index 648f2f1..869a350 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.12.0 &&
+build_docs 3.12.0.post1 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index c9380ef..a7f323a 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,10 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject (master)
-==================
+SQLObject 3.12.0.post1
+======================
+
+Released 2024 Dec 20.
Build/release
-------------
diff --git a/setup.cfg b/setup.cfg
index 461bc50..43bae0f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,11 +4,6 @@ universal = 1
[easy_install]
optimize = 2
-[egg_info]
-tag_build =
-tag_date = 0
-tag_svn_revision = 0
-
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 9f5bea0..52811dc 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 3 - Alpha",
+ "Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index 767a40e..7d878b4 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.12.0'
+version = '3.12.0.post1'
major = 3
minor = 12
micro = 0
-release_level = 'final'
-serial = 0
+release_level = 'post'
+serial = 1
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/99ddfbd480ff3798c640508a46fa32196b9e5c6b
commit 99ddfbd480ff3798c640508a46fa32196b9e5c6b
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 17:36:58 2024 +0300
Build: Release only sdist
Wheels do not allow direct links for dependencies.
[skip ci]
diff --git a/devscripts/release b/devscripts/release
index cd3510e..c248a30 100755
--- a/devscripts/release
+++ b/devscripts/release
@@ -12,7 +12,7 @@ python3 setup.py build --executable '/usr/bin/env python' &&
python3 setup.py sdist &&
find build -name '*.py[co]' -delete &&
-python3 setup.py bdist_wheel --universal &&
+#python3 setup.py bdist_wheel --universal &&
version=`python3 setup.py --version`
. `dirname $0`/split_tag.sh &&
diff --git a/docs/News.rst b/docs/News.rst
index ff34a4a..c9380ef 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -14,6 +14,8 @@ Build/release
* Use ``python3`` for release; requires for direct link syntax
``FormEncode @ git+https://github.com/formencode/formencode.git``.
+* Release only sdist: wheels do not allow direct links for dependencies.
+
SQLObject 3.12.0
================
http://sourceforge.net/p/sqlobject/sqlobject/ci/f400abd939555893339213ef54df7333c1b56c20
commit f400abd939555893339213ef54df7333c1b56c20
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 17:24:01 2024 +0300
Build: Use `python3` for release
Requires for direct link syntax
`FormEncode @ git+https://github.com/formencode/formencode.git`.
[skip ci]
diff --git a/devscripts/prerelease b/devscripts/prerelease
index 7fe520d..d5e9293 100755
--- a/devscripts/prerelease
+++ b/devscripts/prerelease
@@ -26,7 +26,7 @@ version_info = (major, minor, micro, release_level, serial)" > sqlobject/__versi
sqlo_tag="SQLObject $tag" &&
sqlo_tag_len=${#sqlo_tag} &&
sed -Ei "1s/^SQLObject [1-9].+\$/$sqlo_tag/" README.rst &&
-sed -Ei "2s/^==========+\$/`python -c \"print('='*$sqlo_tag_len)\"`/" README.rst &&
+sed -Ei "2s/^==========+\$/`python3 -c \"print('='*$sqlo_tag_len)\"`/" README.rst &&
if [ "$state" = alpha ]; then
trove_cls='3 - Alpha'
diff --git a/devscripts/release b/devscripts/release
index f5a2e57..cd3510e 100755
--- a/devscripts/release
+++ b/devscripts/release
@@ -7,14 +7,14 @@ chmod -R a+rX . &&
set-commit-date.py &&
devscripts/build-docs &&
-python setup.py build_py &&
-python setup.py build --executable '/usr/bin/env python' &&
-python setup.py sdist &&
+python3 setup.py build_py &&
+python3 setup.py build --executable '/usr/bin/env python' &&
+python3 setup.py sdist &&
find build -name '*.py[co]' -delete &&
-python setup.py bdist_wheel --universal &&
+python3 setup.py bdist_wheel --universal &&
-version=`python setup.py --version`
+version=`python3 setup.py --version`
. `dirname $0`/split_tag.sh &&
split_tag $version
diff --git a/docs/News.rst b/docs/News.rst
index 030a651..ff34a4a 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,12 @@ News
SQLObject (master)
==================
+Build/release
+-------------
+
+* Use ``python3`` for release; requires for direct link syntax
+ ``FormEncode @ git+https://github.com/formencode/formencode.git``.
+
SQLObject 3.12.0
================
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 14:59:44
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via ff8635d69d2ae8d0b78308bdb952ff0775be502b (commit)
via 0db3eeeab3c3837d5491481e0bf9b7538985cdd7 (commit)
via 3f2b254f9a6616d8a778423472e4378fd07ec061 (commit)
from 500a70b21b62956202aeea8059e2a17889a2a919 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/ff8635d69d2ae8d0b78308bdb952ff0775be502b
commit ff8635d69d2ae8d0b78308bdb952ff0775be502b
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 17:58:22 2024 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index d4c5e73..8fb113f 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,53 +1,25 @@
Hello!
-I'm pleased to announce version 3.12.0.post1, the first post-release
-of release 3.12.0 of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
+release of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
+release of branch 3.12 of SQLObject.
-What's new in SQLObject
-=======================
-
-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
------
+I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
+release of branch 3.12 of SQLObject.
-* Run tests with Python 3.13.
+I'm pleased to announce version 3.12.1rc1, the first release candidate
+of the upcoming release of branch 3.12 of SQLObject.
-* Run tests with ``psycopg-c``; not all tests pass.
+I'm pleased to announce version 3.12.1, the first bugfix release of branch
+3.12 of SQLObject.
-* 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.
-
-Build/release
--------------
+What's new in SQLObject
+=======================
-* Release only sdist: wheels do not allow direct links for dependencies.
+The contributors for this release are ... Thanks!
For a more complete list, please see the news:
@@ -80,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.0.post1
+https://pypi.org/project/SQLObject/3.12.1a0.dev20241220/
News and changes:
http://sqlobject.org/News.html
diff --git a/docs/News.rst b/docs/News.rst
index 82efe92..02e18c1 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,6 +5,9 @@ News
.. contents:: Contents:
:backlinks: none
+SQLObject (master)
+==================
+
SQLObject 3.12.0.post1
======================
diff --git a/setup.cfg b/setup.cfg
index 43bae0f..461bc50 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,6 +4,11 @@ universal = 1
[easy_install]
optimize = 2
+[egg_info]
+tag_build =
+tag_date = 0
+tag_svn_revision = 0
+
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 52811dc..9f5bea0 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 5 - Production/Stable",
+ "Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
http://sourceforge.net/p/sqlobject/sqlobject/ci/0db3eeeab3c3837d5491481e0bf9b7538985cdd7
commit 0db3eeeab3c3837d5491481e0bf9b7538985cdd7
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 17:29:10 2024 +0300
Release 3.12.0.post1
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 8fb113f..d4c5e73 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,25 +1,53 @@
Hello!
-I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
-release of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.12.0.post1, the first post-release
+of release 3.12.0 of branch 3.12 of SQLObject.
-I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
-release of branch 3.12 of SQLObject.
-I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
-release of branch 3.12 of SQLObject.
+What's new in SQLObject
+=======================
-I'm pleased to announce version 3.12.1rc1, the first release candidate
-of the upcoming release of branch 3.12 of SQLObject.
+Drivers
+-------
-I'm pleased to announce version 3.12.1, the first bugfix release of branch
-3.12 of SQLObject.
+* Add support for CyMySQL; there're some problems with unicode yet.
+* Separate ``psycopg`` and ``psycopg2``;
+ ``psycopg`` is actually ``psycopg3`` now; not all tests pass.
-What's new in SQLObject
-=======================
+* 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.
+
+Build/release
+-------------
-The contributors for this release are ... Thanks!
+* Release only sdist: wheels do not allow direct links for dependencies.
For a more complete list, please see the news:
@@ -52,7 +80,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.1a0.dev20241220/
+https://pypi.org/project/SQLObject/3.12.0.post1
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 980aae8..c50fd2e 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.12.0
-================
+SQLObject 3.12.0.post1
+======================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index 648f2f1..869a350 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.12.0 &&
+build_docs 3.12.0.post1 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index 2cabf57..82efe92 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,10 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject (master)
-==================
+SQLObject 3.12.0.post1
+======================
+
+Released 2024 Dec 20.
Build/release
-------------
diff --git a/setup.cfg b/setup.cfg
index 461bc50..43bae0f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,11 +4,6 @@ universal = 1
[easy_install]
optimize = 2
-[egg_info]
-tag_build =
-tag_date = 0
-tag_svn_revision = 0
-
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 9f5bea0..52811dc 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 3 - Alpha",
+ "Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index 767a40e..7d878b4 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.12.0'
+version = '3.12.0.post1'
major = 3
minor = 12
micro = 0
-release_level = 'final'
-serial = 0
+release_level = 'post'
+serial = 1
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/3f2b254f9a6616d8a778423472e4378fd07ec061
commit 3f2b254f9a6616d8a778423472e4378fd07ec061
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 17:36:58 2024 +0300
Build: Release only sdist
Wheels do not allow direct links for dependencies.
[skip ci]
diff --git a/devscripts/release b/devscripts/release
index f5a2e57..943b436 100755
--- a/devscripts/release
+++ b/devscripts/release
@@ -12,7 +12,7 @@ python setup.py build --executable '/usr/bin/env python' &&
python setup.py sdist &&
find build -name '*.py[co]' -delete &&
-python setup.py bdist_wheel --universal &&
+#python setup.py bdist_wheel --universal &&
version=`python setup.py --version`
. `dirname $0`/split_tag.sh &&
diff --git a/docs/News.rst b/docs/News.rst
index 030a651..2cabf57 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,11 @@ News
SQLObject (master)
==================
+Build/release
+-------------
+
+* Release only sdist: wheels do not allow direct links for dependencies.
+
SQLObject 3.12.0
================
-----------------------------------------------------------------------
Summary of changes:
README.rst | 4 ++--
devscripts/build-all-docs | 2 +-
devscripts/release | 2 +-
docs/News.rst | 10 ++++++++++
sqlobject/__version__.py | 6 +++---
5 files changed, 17 insertions(+), 7 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 12:37:06
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.12.0b1 has been created
at bb559d7672982769bd4bb03927a11cb02f147645 (tag)
tagging fd927abafd29bb6261d2603b73b3fefcb8efdbec (commit)
replaces 3.11.0
tagged by Oleg Broytman
on Wed Dec 18 14:44:57 2024 +0300
- Log -----------------------------------------------------------------
Release 3.12.0b1
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmditbkACgkQbggLcLYo
ewNVbxAAgnG1nyeU5MTorn323g1Ww6eNSBhFRZyOpSZfMNfZlDfVeVCj7PEMapJE
1H1PUFAuXBPbfNVd6L4IuAcQupviTEQEI7Ralf9Pjyj4HQldh4U4i66NMtERDFPG
kDhFbO8cI7l4i8zMCfqy+Hm2+x5dq4bCgkFibb3g69ZJRdyrQ4oDufTlkcTQCEQu
41UMiNr10YTp+fZZdNjJqvNfmhJIyBeUJFs0c0P/y+5MaAUQBzzSk9lIlatN/nWG
Euy6czhbKgElGDv0R166zsPpHozzzC7P8jO0MuIJ/Ezpv5JgObCo1WUxCTBw1BP9
LxmUCw7sg2vGRCaeP9anuoJ//ZMlcUZ5i+1TePZ6hzZ7ZegydXJ/HVbaR+IbyUuT
trSTyst+Hg9jYOMs37NzM94XXSTGIhzAtlQIXDJXoHEC9NcSJl4crg2VjT0SslgA
QUKc/tLv72WGYwDFdD7pbZYICaJ2xbcPApoRQS7Lvn90656UnDqWRvz4gIElpdTq
0SqVYml0qjwH4an+DNNLpVQsPZZbZflDCXxeFq7/habs6aKoaOVaUCztlhpzZO+D
ZNADfy5Vbr5DqC/irnQqinsikcAq2K2Cfp/ZPUW3EBSriz/AJ/sc3sRnnL9tjUXv
hTl5o8ld5nPiqdWmV/DhDmi7WNQNKWomXAA7Ff/c6hCJY6zMjjk=
=q6nb
-----END PGP SIGNATURE-----
Oleg Broytman (30):
Build: Prepare for the next release
Build(devscripts/postrelease): Restore alpha state
Build(setup.cfg): Remove `validators.py`
Build(GHActions): Use `checkout@v4` instead of outdated `v2`
Build(git): Simplify regular expressions for `compileall`
CI: Run tests with `PyGreSQL`
CI: Skip tests with `pg8000`
Build(requirements): PyMySQL 1.0.3 dropped support for Python 3.6
CI(GHActions): Switch to `setup-miniconda`
CI(GHActions): Exclude Python 2.7 at w32
Build(git-hooks): Remove `python -m compileall`
Build(git-hooks/post-checkout): Use `rmdir`
Tests, CI(GHActions): Run tests with Python 3.13
Feat(Pg): Separate `psycopg` and `psycopg2`
Tests(test_exceptions): MariaDB returns a different error code
Fix(Pg): Minor fix in getting error code from PyGreSQL
Tests(test_exceptions): Fix under SQLite
Build(requirements): Fix Python version at 2.7
Feat(MySQL): Drop `oursql`
Feat(SQLite): Dropped `PySQLite2`
Refactor(mysqlconnection): Call `driver.lower()` once globally
Feat(MySQL): Add support for CyMySQL
Build(setup.py): Always install `psycopg2-binary`
Tests(Pg): Run tests with `psycopg-c`
Build(setup.py): Use declarative syntax for FormEnode under Python 3.13
Build(setup.py): Improve declarative dependencies
Tests(tox): Run tests with psycopg under Python 3.13
Tests(py-postgres): Set `sslmode` to `allow`
Build(devscripts/release): PEP 625
Release 3.12.0b1
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 12:37:04
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.12.0 has been created
at b6591fdecd863c68528038bff73be3bc6f707e91 (tag)
tagging 0ead85f0d058a4e0ada04f80bd41cc942a5f18df (commit)
replaces 3.12.0b1
tagged by Oleg Broytman
on Fri Dec 20 15:19:37 2024 +0300
- Log -----------------------------------------------------------------
Release 3.12.0
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmdlYNkACgkQbggLcLYo
ewOo5xAAgoxel9JmeVG7mrdqucSGHf8ATAmIhQ04rOOqKEXsZcVxiP9SNXxdI0O3
9GwIvByhTLFuw0VNvgwp/9a6tbyO8/WB+OBcbynT5dFDCS8ubmwOKgfXOG1inqDN
9GTT3CzfaibPW5oNKeGubdUfcDFLXKidRSZzzHOJNo+kDGzuyEZN5VuITX2Qtlf0
JPQMu4P/mbWQjelO789mOT97z1/Z04YV2+V4X+ARDJV5t1rSedKEsUNGHzV0ZSfQ
6WiNUZP1tI5UHZezNj4gw3jOZ3HMdPiF6bLFpFd1/q2j/WRG1fXD7LEPQKF0dp1H
dVCG42HyIsQVD6X5tsb8pzI1MQhdooC7cokIPIVyvqliu/DAAgpJOnYS6+xZrgTb
2n8d42IYWfQXWRF1BpvkBDv1u5FbBLZUSQITXOW3YRjsmeIMfKw6/IeHFIbPhvzf
piQP7lwb7j39Eionz5vbZdC9+LSDIbJiA1/cPy+Eu+zhusO8YWOka0VKOLHPekXy
lU4KYnHBWx1V1AUqpZs3XR16BPcAW7VyAAJfwY4ZDHe+vSAWxR3AsuZzd/8JbTCL
wm8RnzJnQfA3lNzK4ScCrfGk9yHJJYRIiJ8Shg1JQf7hUH5sUq87qokXFTMxXj4n
EfX+5LqTGmZVcsyGZkkk7ynoTeAiskMpvLu6U7Hs/hUBtxsN8AM=
=JJqj
-----END PGP SIGNATURE-----
Oleg Broytman (5):
Build: Prepare for the next release
Build(devscripts/postrelease): Commit `setup.py`
Build(devscripts/prerelease): For prerelease do not edit `build-all-docs`
Build(devscripts/release): Check if sdist is (not) PEP-625 compatible
Release 3.12.0
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-12-20 12:37:02
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via 500a70b21b62956202aeea8059e2a17889a2a919 (commit)
via 0ead85f0d058a4e0ada04f80bd41cc942a5f18df (commit)
via 784592927509ebc7365227cba4366e0aef54463b (commit)
via a6a9cac105522ee8781dd6a67626590912419ba0 (commit)
via fcb25a4b17af178c4980f200fe33ab6a15c2e5a2 (commit)
via 3e265f765ea2395cc4b66834aca47bf6e33c1412 (commit)
via fd927abafd29bb6261d2603b73b3fefcb8efdbec (commit)
via e4d9aadd81a703877161537a757839b9ef708221 (commit)
via 7ebf297f6e1bbcaec2cf58fd4b859d2d78f0ef7e (commit)
via 60b8683d88cdd59d18ff7c74e38c94948fa19b8f (commit)
via 7f7c368ec8fc72a4e527aab0df9c5e6ddb8d82f8 (commit)
via 7a114b78a43c5f3c19df7f0299347b4d651727f5 (commit)
via 32c1ce111d56025594083a8c8889994f205acc9c (commit)
via 8bae132a9f988e06cbf9f21116182dfd2215ea69 (commit)
via d16586274a3834e651f4c5715d8143ba27956f6a (commit)
via 44e92542e66b985adec84c96387446483f880037 (commit)
via 321ba16a6deb93285c43913ed60d971e4d8897de (commit)
via 5b3832184e19308c3712d9393eb7540e74dab8ed (commit)
from bfcc0f135bb0008692bf57ad3e31e8aeb08b8c8a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/500a70b21b62956202aeea8059e2a17889a2a919
commit 500a70b21b62956202aeea8059e2a17889a2a919
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 15:36:21 2024 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 0ebac76..8fb113f 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,6 +1,18 @@
Hello!
-I'm pleased to announce version 3.12.0, the release of branch
+I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
+release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
+release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
+release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1rc1, the first release candidate
+of the upcoming release of branch 3.12 of SQLObject.
+
+I'm pleased to announce version 3.12.1, the first bugfix release of branch
3.12 of SQLObject.
@@ -40,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.0
+https://pypi.org/project/SQLObject/3.12.1a0.dev20241220/
News and changes:
http://sqlobject.org/News.html
diff --git a/docs/News.rst b/docs/News.rst
index 86c1914..030a651 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,6 +5,9 @@ News
.. contents:: Contents:
:backlinks: none
+SQLObject (master)
+==================
+
SQLObject 3.12.0
================
diff --git a/setup.cfg b/setup.cfg
index 43bae0f..461bc50 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,6 +4,11 @@ universal = 1
[easy_install]
optimize = 2
+[egg_info]
+tag_build =
+tag_date = 0
+tag_svn_revision = 0
+
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 52811dc..9f5bea0 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 5 - Production/Stable",
+ "Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
http://sourceforge.net/p/sqlobject/sqlobject/ci/0ead85f0d058a4e0ada04f80bd41cc942a5f18df
commit 0ead85f0d058a4e0ada04f80bd41cc942a5f18df
Author: Oleg Broytman <ph...@ph...>
Date: Fri Dec 20 15:16:34 2024 +0300
Release 3.12.0
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 92e7248..0ebac76 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,18 +1,6 @@
Hello!
-I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
-release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
-release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
-release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1rc1, the first release candidate
-of the upcoming release of branch 3.12 of SQLObject.
-
-I'm pleased to announce version 3.12.1, the first bugfix release of branch
+I'm pleased to announce version 3.12.0, the release of branch
3.12 of SQLObject.
@@ -52,7 +40,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.1a0.dev20241218/
+https://pypi.org/project/SQLObject/3.12.0
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 7ed8189..980aae8 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.12.0b1
-==================
+SQLObject 3.12.0
+================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index 63d78c2..648f2f1 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.11.0 &&
+build_docs 3.12.0 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index c90ef06..86c1914 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,10 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject 3.12.0b1
-==================
+SQLObject 3.12.0
+================
+
+Released 2024 Dec 20.
Drivers
-------
diff --git a/setup.cfg b/setup.cfg
index 461bc50..43bae0f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,11 +4,6 @@ universal = 1
[easy_install]
optimize = 2
-[egg_info]
-tag_build =
-tag_date = 0
-tag_svn_revision = 0
-
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 9f5bea0..52811dc 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 3 - Alpha",
+ "Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index d38b704..767a40e 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.12.0b1'
+version = '3.12.0'
major = 3
minor = 12
micro = 0
-release_level = 'beta'
-serial = 1
+release_level = 'final'
+serial = 0
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/784592927509ebc7365227cba4366e0aef54463b
commit 784592927509ebc7365227cba4366e0aef54463b
Author: Oleg Broytman <ph...@ph...>
Date: Thu Dec 19 17:02:52 2024 +0300
Build(devscripts/release): Check if sdist is (not) PEP-625 compatible
[skip ci]
diff --git a/devscripts/release b/devscripts/release
index cb4ce22..f5a2e57 100755
--- a/devscripts/release
+++ b/devscripts/release
@@ -24,9 +24,11 @@ if [ "$state" = final ]; then
devscripts/sftp-frs
fi &&
-cd dist &&
-mv SQLObject-$version.tar.gz sqlobject-$version.tar.gz &&
-cd .. &&
+if [ -f dist/SQLObject-$version.tar.gz ]; then
+ cd dist &&
+ mv SQLObject-$version.tar.gz sqlobject-$version.tar.gz &&
+ cd ..
+fi &&
twine upload --disable-progress-bar --skip-existing dist/* &&
exec rm -rf build dist docs/html SQLObject.egg-info
http://sourceforge.net/p/sqlobject/sqlobject/ci/a6a9cac105522ee8781dd6a67626590912419ba0
commit a6a9cac105522ee8781dd6a67626590912419ba0
Author: Oleg Broytman <ph...@ph...>
Date: Wed Dec 18 15:06:37 2024 +0300
Build(devscripts/prerelease): For prerelease do not edit `build-all-docs`
For alpha/beta versions do not change stable version docs.
[skip ci]
diff --git a/devscripts/prerelease b/devscripts/prerelease
index 53e8956..7fe520d 100755
--- a/devscripts/prerelease
+++ b/devscripts/prerelease
@@ -40,5 +40,9 @@ else
fi &&
sed -Ei "s/Development Status :: .+\",\$/Development Status :: $trove_cls\",/" setup.py &&
-`git var GIT_EDITOR` devscripts/build-all-docs docs/News.rst ANNOUNCE.rst sqlobject/__version__.py README.rst setup.cfg setup.py &&
+if [ "$state" = final -o "$state" = post ]; then
+ dbad=devscripts/build-all-docs
+fi &&
+
+`git var GIT_EDITOR` $dbad docs/News.rst ANNOUNCE.rst sqlobject/__version__.py README.rst setup.cfg setup.py &&
exec git commit --message="Release $tag" devscripts/build-all-docs docs/News.rst ANNOUNCE.rst sqlobject/__version__.py README.rst setup.cfg setup.py
http://sourceforge.net/p/sqlobject/sqlobject/ci/fcb25a4b17af178c4980f200fe33ab6a15c2e5a2
commit fcb25a4b17af178c4980f200fe33ab6a15c2e5a2
Author: Oleg Broytman <ph...@ph...>
Date: Wed Dec 18 14:51:51 2024 +0300
Build(devscripts/postrelease): Commit `setup.py`
[skip ci]
diff --git a/devscripts/postrelease b/devscripts/postrelease
index 246e9e3..a799b55 100755
--- a/devscripts/postrelease
+++ b/devscripts/postrelease
@@ -6,4 +6,4 @@ trove_cls='3 - Alpha' &&
sed -Ei "s/Development Status :: .+\",\$/Development Status :: $trove_cls\",/" setup.py &&
`git var GIT_EDITOR` ANNOUNCE.rst setup.cfg README.rst docs/News.rst &&
-exec git commit --message="Build: Prepare for the next release" --message="[skip ci]" ANNOUNCE.rst setup.cfg README.rst docs/News.rst
+exec git commit --message="Build: Prepare for the next release" --message="[skip ci]" ANNOUNCE.rst setup.cfg README.rst docs/News.rst setup.py
http://sourceforge.net/p/sqlobject/sqlobject/ci/3e265f765ea2395cc4b66834aca47bf6e33c1412
commit 3e265f765ea2395cc4b66834aca47bf6e33c1412
Author: Oleg Broytman <ph...@ph...>
Date: Wed Dec 18 14:50:12 2024 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 9528f2e..92e7248 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,48 +1,26 @@
Hello!
-I'm pleased to announce version 3.12.0b1, the first beta of the upcoming
+I'm pleased to announce version 3.12.1a1, the first alpha of the upcoming
release of branch 3.12 of SQLObject.
+I'm pleased to announce version 3.12.1a2, the second alpha of the upcoming
+release of branch 3.12 of SQLObject.
-What's new in SQLObject
-=======================
-
-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.
+I'm pleased to announce version 3.12.1b1, the first beta of the upcoming
+release of branch 3.12 of SQLObject.
-* ``py-postgres``: Set ``sslmode`` to ``allow``;
- upstream changed default to ``prefer``.
+I'm pleased to announce version 3.12.1rc1, the first release candidate
+of the upcoming release of branch 3.12 of SQLObject.
-CI
---
+I'm pleased to announce version 3.12.1, the first bugfix release of branch
+3.12 of SQLObject.
-* Run tests with ``PyGreSQL`` on w32, do not ignore errors.
-* Skip tests with ``pg8000`` on w32.
+What's new in SQLObject
+=======================
-* GHActions: Switch to ``setup-miniconda``.
+The contributors for this release are ... Thanks!
-* GHActions: Python 3.13.
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -74,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.12.0b1
+https://pypi.org/project/SQLObject/3.12.1a0.dev20241218/
News and changes:
http://sqlobject.org/News.html
diff --git a/setup.cfg b/setup.cfg
index 43bae0f..461bc50 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -4,6 +4,11 @@ universal = 1
[easy_install]
optimize = 2
+[egg_info]
+tag_build =
+tag_date = 0
+tag_svn_revision = 0
+
[flake8]
exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
diff --git a/setup.py b/setup.py
index 1a755e6..9f5bea0 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 4 - Beta",
+ "Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
http://sourceforge.net/p/sqlobject/sqlobject/ci/fd927abafd29bb6261d2603b73b3fefcb8efdbec
commit fd927abafd29bb6261d2603b73b3fefcb8efdbec
Author: Oleg Broytman <ph...@ph...>
Date: Wed Dec 18 14:43:51 2024 +0300
Release 3.12.0b1
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 404614f..9528f2e 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,26 +1,48 @@
Hello!
-I'm pleased to announce version 3.11.1a1, the first alpha of the upcoming
-release of branch 3.11 of SQLObject.
+I'm pleased to announce version 3.12.0b1, the first beta of the upcoming
+release of branch 3.12 of SQLObject.
-I'm pleased to announce version 3.11.1a2, the second alpha of the upcoming
-release of branch 3.11 of SQLObject.
-I'm pleased to announce version 3.11.1b1, the first beta of the upcoming
-release of branch 3.11 of SQLObject.
+What's new in SQLObject
+=======================
-I'm pleased to announce version 3.11.1rc1, the first release candidate
-of the upcoming release of branch 3.11 of SQLObject.
+Drivers
+-------
-I'm pleased to announce version 3.11.1, the first bugfix release of branch
-3.11 of SQLObject.
+* Add support for CyMySQL; there're some problems with unicode yet.
+* Separate ``psycopg`` and ``psycopg2``;
+ ``psycopg`` is actually ``psycopg3`` now; not all tests pass.
-What's new in SQLObject
-=======================
+* 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.
... 1311 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-09-26 10:46:54
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via bfcc0f135bb0008692bf57ad3e31e8aeb08b8c8a (commit)
via 9429cdd5f33d7293fb1f751f9e88a61d3071674e (commit)
via 48eb837ded57b314f73d2dc7f4bf1defcdc2ec9a (commit)
via 07e74e51d5877217aa6af5413371a6e5ac1055b6 (commit)
via 8fb726180c7c0a1a60003efc8ba45edcc79b5e20 (commit)
via cf96c5e4974cd2241f182e61abd955bdc189fa8c (commit)
via d365886888d1fcde1c7886a09493b5f1ec7ad8a7 (commit)
via ba965063611f185dff46d0bb27659408efef1c6c (commit)
from f34450feec071f0b9495d0919b929d06204b4eea (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/bfcc0f135bb0008692bf57ad3e31e8aeb08b8c8a
commit bfcc0f135bb0008692bf57ad3e31e8aeb08b8c8a
Author: Oleg Broytman <ph...@ph...>
Date: Thu Sep 26 13:45:50 2024 +0300
Build(requirements): Fix Python version at 2.7
There will never be 2.8.
[skip ci]
diff --git a/devscripts/requirements/requirements.txt b/devscripts/requirements/requirements.txt
index befc10e..ce36de2 100644
--- a/devscripts/requirements/requirements.txt
+++ b/devscripts/requirements/requirements.txt
@@ -1,7 +1,7 @@
# DateTime from Zope
DateTime
-FormEncode >= 1.1.1, != 1.3.0; python_version >= '2.7' and python_version < '3.0'
+FormEncode >= 1.1.1, != 1.3.0; python_version == '2.7'
FormEncode >= 1.3.1; python_version >= '3.4' and python_version < '3.13'
git+https://github.com/formencode/formencode.git; python_version >= '3.13'
http://sourceforge.net/p/sqlobject/sqlobject/ci/9429cdd5f33d7293fb1f751f9e88a61d3071674e
commit 9429cdd5f33d7293fb1f751f9e88a61d3071674e
Author: Oleg Broytman <ph...@ph...>
Date: Wed Sep 25 18:37:46 2024 +0300
Tests(test_exceptions): Fix under SQLite
diff --git a/docs/News.rst b/docs/News.rst
index a4c11e1..6685d9c 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -21,7 +21,7 @@ Tests
* Run tests with Python 3.13.
-* Fix ``test_exceptions.py``: MariaDB returns a different error code.
+* Fix ``test_exceptions.py`` under MariaDB, PostgreSQL and SQLite.
CI
--
diff --git a/sqlobject/tests/test_exceptions.py b/sqlobject/tests/test_exceptions.py
index 7299191..169ca18 100644
--- a/sqlobject/tests/test_exceptions.py
+++ b/sqlobject/tests/test_exceptions.py
@@ -1,6 +1,7 @@
import pytest
from sqlobject import SQLObject, StringCol
-from sqlobject.dberrors import DuplicateEntryError, ProgrammingError
+from sqlobject.dberrors import DuplicateEntryError, OperationalError, \
+ ProgrammingError
from sqlobject.tests.dbtest import getConnection, raises, setupClass, supports
@@ -30,5 +31,7 @@ def test_exceptions():
list(SOTestExceptionWithNonexistingTable.select())
except ProgrammingError as e:
assert e.args[0].code in (1146, '42P01')
+ except OperationalError:
+ assert connection.dbName == 'sqlite'
else:
assert False, "DID NOT RAISE"
http://sourceforge.net/p/sqlobject/sqlobject/ci/48eb837ded57b314f73d2dc7f4bf1defcdc2ec9a
commit 48eb837ded57b314f73d2dc7f4bf1defcdc2ec9a
Author: Oleg Broytman <ph...@ph...>
Date: Wed Sep 25 18:12:16 2024 +0300
Fix(Pg): Minor fix in getting error code from PyGreSQL
diff --git a/docs/News.rst b/docs/News.rst
index fd0fbdf..a4c11e1 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -14,6 +14,8 @@ Drivers
* Separate ``psycopg`` and ``psycopg2``;
``psycopg`` is actually ``psycopg3`` now.
+* Minor fix in getting error code from PyGreSQL.
+
Tests
-----
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index 87921c2..bb76afa 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -21,6 +21,9 @@ class ErrorMessage(str):
# pg8000 for Python 3.5+
ecode = eargs0['C']
eerror = emessage = eargs0['M']
+ elif e.__module__ == 'pg': # PyGreSQL
+ ecode = e.sqlstate
+ eerror = emessage = e.args[0]
elif hasattr(e, 'pgcode'): # psycopg2 or psycopg2.errors
ecode = getattr(e, 'pgcode', None)
eerror = getattr(e, 'pgerror', None)
http://sourceforge.net/p/sqlobject/sqlobject/ci/07e74e51d5877217aa6af5413371a6e5ac1055b6
commit 07e74e51d5877217aa6af5413371a6e5ac1055b6
Author: Oleg Broytman <ph...@ph...>
Date: Wed Sep 25 17:45:32 2024 +0300
Tests(test_exceptions): MariaDB returns a different error code
diff --git a/docs/News.rst b/docs/News.rst
index 6e4fbeb..fd0fbdf 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -19,6 +19,8 @@ Tests
* Run tests with Python 3.13.
+* Fix ``test_exceptions.py``: MariaDB returns a different error code.
+
CI
--
diff --git a/sqlobject/tests/test_exceptions.py b/sqlobject/tests/test_exceptions.py
index 86559ef..7299191 100644
--- a/sqlobject/tests/test_exceptions.py
+++ b/sqlobject/tests/test_exceptions.py
@@ -29,6 +29,6 @@ def test_exceptions():
try:
list(SOTestExceptionWithNonexistingTable.select())
except ProgrammingError as e:
- assert e.args[0].code == '42P01'
+ assert e.args[0].code in (1146, '42P01')
else:
assert False, "DID NOT RAISE"
http://sourceforge.net/p/sqlobject/sqlobject/ci/8fb726180c7c0a1a60003efc8ba45edcc79b5e20
commit 8fb726180c7c0a1a60003efc8ba45edcc79b5e20
Author: Oleg Broytman <ph...@ph...>
Date: Wed Sep 25 16:53:58 2024 +0300
Feat(Pg): Separate `psycopg` and `psycopg2`
diff --git a/docs/News.rst b/docs/News.rst
index 631d418..6e4fbeb 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,12 @@ News
SQLObject (master)
==================
+Drivers
+-------
+
+* Separate ``psycopg`` and ``psycopg2``;
+ ``psycopg`` is actually ``psycopg3`` now.
+
Tests
-----
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index e67aea2..94a4142 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -49,13 +49,13 @@ Requirements
Currently SQLObject supports MySQL_ and MariaDB_ via MySQLdb_ aka
MySQL-python (called mysqlclient_ for Python 3), `MySQL Connector`_,
oursql_, PyMySQL_, `mariadb connector`_, PyODBC_ and PyPyODBC_. For
-PostgreSQL_ psycopg2_ is recommended; PyGreSQL_, py-postgresql_ and pg8000_
-are supported; SQLite_ has a built-in driver or PySQLite_.
-Firebird_ is supported via fdb_ or kinterbasdb_; pyfirebirdsql_ is
-supported but has problems. `MAX DB`_ (also known as SAP DB) is supported
-via sapdb_. Sybase via Sybase_. `MSSQL Server`_ via pymssql_ (+ FreeTDS_)
-or adodbapi_ (Win32). PyODBC_ and PyPyODBC_ are supported for MySQL,
-PostgreSQL and MSSQL but have problems (not all tests passed).
+PostgreSQL_ psycopg_ and psycopg2_ are recommended; PyGreSQL_,
+py-postgresql_ and pg8000_ are supported; SQLite_ has a built-in driver or
+PySQLite_. Firebird_ is supported via fdb_ or kinterbasdb_; pyfirebirdsql_
+is supported but has problems. `MAX DB`_ (also known as SAP DB) is
+supported via sapdb_. Sybase via Sybase_. `MSSQL Server`_ via pymssql_ (+
+FreeTDS_) or adodbapi_ (Win32). PyODBC_ and PyPyODBC_ are supported for
+MySQL, PostgreSQL and MSSQL but have problems (not all tests passed).
.. _MySQL: https://www.mysql.com/
.. _MariaDB: https://mariadb.org/
@@ -66,7 +66,8 @@ PostgreSQL and MSSQL but have problems (not all tests passed).
.. _PyMySQL: https://github.com/PyMySQL/PyMySQL/
.. _mariadb connector: https://pypi.org/project/mariadb/
.. _PostgreSQL: https://postgresql.org
-.. _psycopg2: http://initd.org/psycopg/
+.. _psycopg: https://pypi.org/project/psycopg/
+.. _psycopg2: https://www.psycopg.org/
.. _PyGreSQL: http://www.pygresql.org/
.. _py-postgresql: https://pypi.org/project/py-postgresql/
.. _pg8000: https://pypi.org/project/pg8000/
@@ -1843,9 +1844,9 @@ PostgresConnection supports transactions and all other features.
The user can choose a DB API driver for PostgreSQL by using a ``driver``
parameter in DB URI or PostgresConnection that can be a comma-separated
-list of driver names. Possible drivers are: ``psycopg2``,
-``psycopg`` (alias for ``psycopg2``), ``pygresql``, ``pypostgresql``,
-``pg8000``, ``pyodbc``, ``pypyodbc`` or ``odbc`` (try ``pyodbc`` and
+list of driver names. Possible drivers are: ``psycopg``, ``psycopg2``,
+``pygresql``, ``pypostgresql``, ``pg8000``,
+``pyodbc``, ``pypyodbc`` or ``odbc`` (try ``pyodbc`` and
``pypyodbc``). Default is ``psycopg``.
Connection-specific parameters are: ``sslmode``, ``unicodeCols``,
diff --git a/docs/download.rst b/docs/download.rst
index 77f4615..bc28315 100644
--- a/docs/download.rst
+++ b/docs/download.rst
@@ -73,7 +73,8 @@ pyodbc pypyodbc odbc (synonym for pyodbc)
PostgreSQL
^^^^^^^^^^
-psycopg2 psycopg postgres postgresql (synonyms for psycopg2)
+psycopg
+psycopg2 postgres postgresql (synonyms for psycopg2)
pygresql pypostgresql py-postgresql pg8000
SQLite
diff --git a/setup.py b/setup.py
index 356331c..e90c10f 100755
--- a/setup.py
+++ b/setup.py
@@ -134,8 +134,8 @@ and `GitHub <https://github.com/sqlobject>`_.
'pyodbc': ['pyodbc'],
'pypyodbc': ['pypyodbc'],
# PostgreSQL
+ 'psycopg:python_version>="3.6"': ['psycopg[binary]'],
'psycopg2': ['psycopg2'],
- 'psycopg': ['psycopg2'],
'postgres': ['psycopg2'],
'postgresql': ['psycopg2'],
'pygresql': ['pygresql'],
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index 5bc6778..87921c2 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -60,9 +60,12 @@ class PostgresConnection(DBAPI):
if not driver:
continue
try:
- if driver in ('psycopg', 'psycopg2'):
- import psycopg2 as psycopg
+ if driver == 'psycopg':
+ import psycopg
self.module = psycopg
+ elif driver == 'psycopg2':
+ import psycopg2
+ self.module = psycopg2
elif driver == 'pygresql':
import pgdb
self.module = pgdb
@@ -133,7 +136,10 @@ class PostgresConnection(DBAPI):
else:
dsn_dict["port"] = port
if db:
- dsn_dict["database"] = db
+ if driver == 'psycopg':
+ dsn_dict["dbname"] = db
+ else:
+ dsn_dict["database"] = db
if user:
dsn_dict["user"] = user
if password:
diff --git a/sqlobject/tests/test_exceptions.py b/sqlobject/tests/test_exceptions.py
index 42dd134..86559ef 100644
--- a/sqlobject/tests/test_exceptions.py
+++ b/sqlobject/tests/test_exceptions.py
@@ -25,8 +25,6 @@ def test_exceptions():
raises(DuplicateEntryError, SOTestException, name="test")
connection = getConnection()
- if connection.module.__name__ != 'psycopg2':
- return
SOTestExceptionWithNonexistingTable.setConnection(connection)
try:
list(SOTestExceptionWithNonexistingTable.select())
diff --git a/tox.ini b/tox.ini
index 91dce16..1b64b4c 100644
--- a/tox.ini
+++ b/tox.ini
@@ -22,8 +22,9 @@ deps =
mysql-oursql3: git+https://github.com/sqlobject/oursql.git@py3k#egg=oursql
pymysql: -rdevscripts/requirements/requirements_pymysql.txt
mariadb: mariadb
- py34-psycopg: psycopg2-binary==2.8.4
- !py34-psycopg: psycopg2-binary
+ psycopg: psycopg[binary]
+ py34-psycopg2: psycopg2-binary==2.8.4
+ !py34-psycopg2: psycopg2-binary
pygresql: -rdevscripts/requirements/requirements_pygresql.txt
pypostgresql: git+https://github.com/sqlobject/py-postgresql.git@combined-fixes#egg=py-postgresql
pg8000: -rdevscripts/requirements/requirements_pg8000.txt
@@ -200,13 +201,24 @@ commands =
pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
-[testenv:py27-postgres-psycopg]
+[testenv:py3{6,7,8,9,10,11,12}-postgres-psycopg-noauto]
+commands = {[psycopg]commands}
+
+[psycopg2]
+commands =
+ {[testenv]commands}
+ -dropdb --username=runner --no-password sqlobject_test
+ createdb --username=runner --no-password sqlobject_test
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg2&charset=utf-8&debug=1"
+ dropdb --username=runner --no-password sqlobject_test
+
+[testenv:py27-postgres-psycopg2]
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
- {[psycopg]commands}
+ {[psycopg2]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-psycopg]
-commands = {[psycopg]commands}
+[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-psycopg2]
+commands = {[psycopg2]commands}
[pygresql]
commands =
@@ -485,6 +497,19 @@ commands = {[mysql-pypyodbc-w32]commands}
[psycopg-w32]
platform = win32
+commands =
+ {[testenv]commands}
+ -dropdb --username=runner --no-password sqlobject_test
+ createdb --username=runner --no-password sqlobject_test
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg&charset=utf-8&debug=1"
+ dropdb --username=runner --no-password sqlobject_test
+
+[testenv:py3{6,7,8,9,10,11,12}-postgres-psycopg-noauto-w32]
+platform = win32
+commands = {[psycopg-w32]commands}
+
+[psycopg2-w32]
+platform = win32
commands =
{[testenv]commands}
-dropdb --username=runner --no-password sqlobject_test
@@ -492,15 +517,15 @@ commands =
pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=psycopg2&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
-[testenv:py27-postgres-psycopg-w32]
+[testenv:py27-postgres-psycopg2-w32]
platform = win32
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
- {[psycopg-w32]commands}
+ {[psycopg2-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-psycopg-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-psycopg2-w32]
platform = win32
-commands = {[psycopg-w32]commands}
+commands = {[psycopg2-w32]commands}
[pygresql-w32]
platform = win32
http://sourceforge.net/p/sqlobject/sqlobject/ci/cf96c5e4974cd2241f182e61abd955bdc189fa8c
commit cf96c5e4974cd2241f182e61abd955bdc189fa8c
Author: Oleg Broytman <ph...@ph...>
Date: Tue Sep 24 22:53:22 2024 +0300
Tests, CI(GHActions): Run tests with Python 3.13
Excluding psycopg2 -- it's not yet compatible.
Excluding PyMySQL under w32 -- it's also not yet compatible.
diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml
index 4439ef2..e61a0c4 100644
--- a/.github/workflows/run-tests.yaml
+++ b/.github/workflows/run-tests.yaml
@@ -10,7 +10,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
- python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
+ python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
exclude:
- os: windows-latest
python-version: "2.7"
@@ -45,6 +45,7 @@ jobs:
- uses: actions/checkout@v4
- uses: conda-incubator/setup-miniconda@v3
with:
+ channels: conda-forge, conda-forge/label/python_rc
miniforge-version: latest
python-version: ${{ matrix.python-version }}
if: ${{ !contains(fromJSON(env.not_in_conda), matrix.python-version) }}
diff --git a/devscripts/requirements/requirements.txt b/devscripts/requirements/requirements.txt
index a419296..befc10e 100644
--- a/devscripts/requirements/requirements.txt
+++ b/devscripts/requirements/requirements.txt
@@ -2,5 +2,7 @@
DateTime
FormEncode >= 1.1.1, != 1.3.0; python_version >= '2.7' and python_version < '3.0'
-FormEncode >= 1.3.1; python_version >= '3.4'
+FormEncode >= 1.3.1; python_version >= '3.4' and python_version < '3.13'
+git+https://github.com/formencode/formencode.git; python_version >= '3.13'
+
PyDispatcher >= 2.0.4
diff --git a/docs/News.rst b/docs/News.rst
index 6d75172..631d418 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,11 @@ News
SQLObject (master)
==================
+Tests
+-----
+
+* Run tests with Python 3.13.
+
CI
--
@@ -17,6 +22,8 @@ CI
* GHActions: Switch to ``setup-miniconda``.
+* GHActions: Python 3.13.
+
SQLObject 3.11.0
================
diff --git a/setup.py b/setup.py
index 28a634b..356331c 100755
--- a/setup.py
+++ b/setup.py
@@ -64,6 +64,7 @@ and `GitHub <https://github.com/sqlobject>`_.
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
+ "Programming Language :: Python :: 3.13",
"Topic :: Database",
"Topic :: Database :: Front-Ends",
"Topic :: Software Development :: Libraries :: Python Modules",
@@ -103,9 +104,12 @@ and `GitHub <https://github.com/sqlobject>`_.
requires=['FormEncode', 'PyDispatcher'],
install_requires=[
"FormEncode>=1.1.1,!=1.3.0; python_version=='2.7'",
- "FormEncode>=1.3.1; python_version>='3.4'",
+ "FormEncode>=1.3.1; python_version>='3.4' and python_version < '3.13'",
"PyDispatcher>=2.0.4",
- ],
+ ] + [
+ "formencode @ "
+ "git+https://github.com/formencode/formencode.git#egg=formencode"
+ ] if sys.version_info >= (3, 13) else [],
extras_require={
# Firebird/Interbase
'fdb': ['fdb'],
diff --git a/tox.ini b/tox.ini
index 4d1b619..91dce16 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 3.15
-envlist = py27,py3{4,5,6,7,8,9,10,11,12}-sqlite{,-memory},py{27,37,312}-flake8
+envlist = py27,py3{4,5,6,7,8,9,10,11,12,13}-sqlite{,-memory},py{27,37,312}-flake8
# Base test environment settings
[testenv]
@@ -60,7 +60,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[mysqldb]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12}-mysqldb]
+[testenv:py3{4,5,6,7,8,9,10,11,12,13}-mysqldb]
... 370 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-07-24 18:08:54
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via f34450feec071f0b9495d0919b929d06204b4eea (commit)
via 1b9b3aa51986028bbc203e111f78846cafbd524c (commit)
via 5e5f588771c94dea2a40829726000ef6917a1b32 (commit)
from 93864e0f548ef3a70e0d5640bcaa74718aa52bec (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/f34450feec071f0b9495d0919b929d06204b4eea
commit f34450feec071f0b9495d0919b929d06204b4eea
Author: Oleg Broytman <ph...@ph...>
Date: Wed Jul 24 18:23:04 2024 +0300
CI(GHActions): Exclude Python 2.7 at w32
It requires VC9 and cannot be installed.
diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml
index 10d845b..4439ef2 100644
--- a/.github/workflows/run-tests.yaml
+++ b/.github/workflows/run-tests.yaml
@@ -11,6 +11,9 @@ jobs:
matrix:
os: [ubuntu-latest, windows-latest]
python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
+ exclude:
+ - os: windows-latest
+ python-version: "2.7"
include:
- os: ubuntu-latest
os-name: Linux
http://sourceforge.net/p/sqlobject/sqlobject/ci/1b9b3aa51986028bbc203e111f78846cafbd524c
commit 1b9b3aa51986028bbc203e111f78846cafbd524c
Author: Oleg Broytman <ph...@ph...>
Date: Wed Jul 24 20:57:21 2024 +0300
CI(GHActions): Switch to `setup-miniconda`
diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml
index b38d006..10d845b 100644
--- a/.github/workflows/run-tests.yaml
+++ b/.github/workflows/run-tests.yaml
@@ -40,15 +40,19 @@ jobs:
# Setup Python/pip
- uses: actions/checkout@v4
- - uses: s-weigand/setup-conda@v1
+ - uses: conda-incubator/setup-miniconda@v3
with:
- conda-channels: conda-forge
+ miniforge-version: latest
python-version: ${{ matrix.python-version }}
if: ${{ !contains(fromJSON(env.not_in_conda), matrix.python-version) }}
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
if: ${{ contains(fromJSON(env.not_in_conda), matrix.python-version) }}
+ - uses: actions/cache@v3
+ with:
+ path: ~/conda_pkgs_dir
+ key: ${{ runner.os }}-conda
- name: Cache pip
uses: actions/cache@v3
with:
@@ -63,8 +67,10 @@ jobs:
python -m pip install --upgrade pip setuptools wheel
pip --version
pip install --upgrade virtualenv "tox >= 3.15, < 4"
+ shell: bash -el {0}
- name: Set PYVER
run: |
+ python -c "
import os, sys
ld_library_path = None
pyver = '%d%d' % tuple(sys.version_info[:2])
@@ -77,11 +83,13 @@ jobs:
f.write('LD_LIBRARY_PATH=' + ld_library_path + '\n')
f.write('PYVER=' + pyver + '\n')
f.write('PGPASSWORD=test\n')
- shell: python
+ "
+ shell: bash -el {0}
- name: tox version
run: |
tox --version
+ shell: bash -el {0}
- name: Run tox @ Linux
run: |
devscripts/tox-select-envs $PYVER-mysql
@@ -89,9 +97,11 @@ jobs:
devscripts/tox-select-envs $PYVER-sqlite
devscripts/tox-select-envs $PYVER-flake8
if: ${{ runner.os == 'Linux' }}
+ shell: bash -el {0}
- name: Run tox @ w32
run: |
devscripts\tox-select-envs.cmd %PYVER%-mysql
devscripts\tox-select-envs.cmd %PYVER%-postgres
devscripts\tox-select-envs.cmd %PYVER%-sqlite
if: ${{ runner.os == 'Windows' }}
+ shell: cmd /C CALL {0}
diff --git a/docs/News.rst b/docs/News.rst
index 1060920..6d75172 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -15,6 +15,8 @@ CI
* Skip tests with ``pg8000`` on w32.
+* GHActions: Switch to ``setup-miniconda``.
+
SQLObject 3.11.0
================
http://sourceforge.net/p/sqlobject/sqlobject/ci/5e5f588771c94dea2a40829726000ef6917a1b32
commit 5e5f588771c94dea2a40829726000ef6917a1b32
Author: Oleg Broytman <ph...@ph...>
Date: Tue May 21 23:19:20 2024 +0300
Build(requirements): PyMySQL 1.0.3 dropped support for Python 3.6
diff --git a/devscripts/requirements/requirements_pymysql.txt b/devscripts/requirements/requirements_pymysql.txt
index b8c7bc6..4333b47 100644
--- a/devscripts/requirements/requirements_pymysql.txt
+++ b/devscripts/requirements/requirements_pymysql.txt
@@ -1,3 +1,4 @@
pymysql < 1.0; python_version == '2.7' or python_version == '3.5'
pymysql < 0.10.0; python_version == '3.4'
-pymysql; python_version >= '3.6'
+pymysql < 1.0.3; python_version == '3.6'
+pymysql; python_version >= '3.7'
-----------------------------------------------------------------------
Summary of changes:
.github/workflows/run-tests.yaml | 19 ++++++++++++++++---
devscripts/requirements/requirements_pymysql.txt | 3 ++-
docs/News.rst | 2 ++
3 files changed, 20 insertions(+), 4 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-02-25 12:52:52
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
discards a98b7be3a884986cb8060f80f15c4e4809476325 (commit)
discards dc75365a4999c1d4112240617a2c93b67fd7a5e8 (commit)
discards f0750f5a357df1c1c8f024a13abb48a1dcdde611 (commit)
discards db02d0281af3a60c095a7e2205d645b92c54c554 (commit)
via 93864e0f548ef3a70e0d5640bcaa74718aa52bec (commit)
via 3dc10840dbf50bee098ec9cc006fb41380ed45cb (commit)
via 06901b4af66de626daaa8ae35bc370bf3d787f50 (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (a98b7be3a884986cb8060f80f15c4e4809476325)
\
N -- N -- N (93864e0f548ef3a70e0d5640bcaa74718aa52bec)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/93864e0f548ef3a70e0d5640bcaa74718aa52bec
commit 93864e0f548ef3a70e0d5640bcaa74718aa52bec
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 24 22:20:24 2024 +0300
CI: Skip tests with `pg8000`
diff --git a/docs/News.rst b/docs/News.rst
index d65b6e5..1060920 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -13,6 +13,8 @@ CI
* Run tests with ``PyGreSQL`` on w32, do not ignore errors.
+* Skip tests with ``pg8000`` on w32.
+
SQLObject 3.11.0
================
diff --git a/tox.ini b/tox.ini
index c660a75..4d1b619 100644
--- a/tox.ini
+++ b/tox.ini
@@ -554,7 +554,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[pg8000-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-pg8000-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-pg8000-noauto-w32]
platform = win32
commands = {[pg8000-w32]commands}
http://sourceforge.net/p/sqlobject/sqlobject/ci/3dc10840dbf50bee098ec9cc006fb41380ed45cb
commit 3dc10840dbf50bee098ec9cc006fb41380ed45cb
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 24 21:48:12 2024 +0300
CI: Run tests with `PyGreSQL`
diff --git a/docs/News.rst b/docs/News.rst
index 270a44a..d65b6e5 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,11 @@ News
SQLObject (master)
==================
+CI
+--
+
+* Run tests with ``PyGreSQL`` on w32, do not ignore errors.
+
SQLObject 3.11.0
================
diff --git a/tox.ini b/tox.ini
index caa5945..c660a75 100644
--- a/tox.ini
+++ b/tox.ini
@@ -508,10 +508,10 @@ commands =
{[testenv]commands}
-dropdb --username=runner --no-password sqlobject_test
createdb --username=runner --no-password sqlobject_test
- -pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
-[testenv:py27-postgres-pygresql-noauto-w32]
+[testenv:py27-postgres-pygresql-w32]
platform = win32
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
http://sourceforge.net/p/sqlobject/sqlobject/ci/06901b4af66de626daaa8ae35bc370bf3d787f50
commit 06901b4af66de626daaa8ae35bc370bf3d787f50
Author: Oleg Broytman <ph...@ph...>
Date: Tue Jan 23 11:37:53 2024 +0300
Build(git): Simplify regular expressions for `compileall`
[skip ci]
diff --git a/devscripts/git-hooks/post-checkout b/devscripts/git-hooks/post-checkout
index 40f7bd7..c615fc8 100755
--- a/devscripts/git-hooks/post-checkout
+++ b/devscripts/git-hooks/post-checkout
@@ -16,7 +16,7 @@ if [ "$new_branch" = 1 ]; then
rm -rf docs/_build/html docs/html
fi &&
-python -m compileall -q -x '\.tox/.+' . &&
-python -O -m compileall -q -x '\.tox/.+' .
+python -m compileall -q -x '\.tox/' . &&
+python -O -m compileall -q -x '\.tox/' .
exit 0
diff --git a/devscripts/git-hooks/post-merge b/devscripts/git-hooks/post-merge
index 633a1d0..2df0670 100755
--- a/devscripts/git-hooks/post-merge
+++ b/devscripts/git-hooks/post-merge
@@ -2,7 +2,7 @@
# post-merge hook that compiles python files to byte code
-python -m compileall -q -x '\.tox/.+' . &&
-python -O -m compileall -q -x '\.tox/.+' .
+python -m compileall -q -x '\.tox/' . &&
+python -O -m compileall -q -x '\.tox/' .
exit 0
diff --git a/devscripts/git-hooks/post-rewrite b/devscripts/git-hooks/post-rewrite
index df28442..59efb3d 100755
--- a/devscripts/git-hooks/post-rewrite
+++ b/devscripts/git-hooks/post-rewrite
@@ -2,7 +2,7 @@
# post-rewrite hook that compiles python files to byte code
-python -m compileall -q -x '\.tox/.+' . &&
-python -O -m compileall -q -x '\.tox/.+' .
+python -m compileall -q -x '\.tox/' . &&
+python -O -m compileall -q -x '\.tox/' .
exit 0
-----------------------------------------------------------------------
Summary of changes:
docs/News.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2024-02-24 19:38:03
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via a98b7be3a884986cb8060f80f15c4e4809476325 (commit)
via dc75365a4999c1d4112240617a2c93b67fd7a5e8 (commit)
via f0750f5a357df1c1c8f024a13abb48a1dcdde611 (commit)
via db02d0281af3a60c095a7e2205d645b92c54c554 (commit)
via 5396e8151f13215a6a2076ea24c52482489af5b8 (commit)
via 782091b5712fdaadbc4ae8b88a4a52562bfc5d2b (commit)
via 61151b8015d67de07a7a1e19d9161e7534b00800 (commit)
from c714f55a9aa4990020711494d2d3911faf9566c4 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/a98b7be3a884986cb8060f80f15c4e4809476325
commit a98b7be3a884986cb8060f80f15c4e4809476325
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 24 22:20:24 2024 +0300
CI: Skip tests with `pg8000`
diff --git a/docs/News.rst b/docs/News.rst
index b88cf8c..dc2863d 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -13,6 +13,8 @@ CI
* Run tests with ``PyGreSQL`` (do not ignore errors).
+* Skip tests with ``pg8000``.
+
SQLObject 3.11.0
================
diff --git a/tox.ini b/tox.ini
index c660a75..4d1b619 100644
--- a/tox.ini
+++ b/tox.ini
@@ -554,7 +554,7 @@ commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
{[pg8000-w32]commands}
-[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-pg8000-w32]
+[testenv:py3{4,5,6,7,8,9,10,11,12}-postgres-pg8000-noauto-w32]
platform = win32
commands = {[pg8000-w32]commands}
http://sourceforge.net/p/sqlobject/sqlobject/ci/dc75365a4999c1d4112240617a2c93b67fd7a5e8
commit dc75365a4999c1d4112240617a2c93b67fd7a5e8
Author: Oleg Broytman <ph...@ph...>
Date: Sat Feb 24 21:48:12 2024 +0300
CI: Run tests with `PyGreSQL`
diff --git a/docs/News.rst b/docs/News.rst
index 270a44a..b88cf8c 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,11 @@ News
SQLObject (master)
==================
+CI
+--
+
+* Run tests with ``PyGreSQL`` (do not ignore errors).
+
SQLObject 3.11.0
================
diff --git a/tox.ini b/tox.ini
index e798939..c660a75 100644
--- a/tox.ini
+++ b/tox.ini
@@ -213,7 +213,7 @@ commands =
{[testenv]commands}
-dropdb --username=runner --no-password sqlobject_test
createdb --username=runner --no-password sqlobject_test
- -pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
[testenv:py27-postgres-pygresql]
@@ -508,10 +508,10 @@ commands =
{[testenv]commands}
-dropdb --username=runner --no-password sqlobject_test
createdb --username=runner --no-password sqlobject_test
- -pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
+ pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
-[testenv:py27-postgres-pygresql-noauto-w32]
+[testenv:py27-postgres-pygresql-w32]
platform = win32
commands =
easy_install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
http://sourceforge.net/p/sqlobject/sqlobject/ci/f0750f5a357df1c1c8f024a13abb48a1dcdde611
commit f0750f5a357df1c1c8f024a13abb48a1dcdde611
Author: Oleg Broytman <ph...@ph...>
Date: Tue Jan 23 11:37:53 2024 +0300
Build(git): Simplify regular expressions for `compileall`
[skip ci]
diff --git a/devscripts/git-hooks/post-checkout b/devscripts/git-hooks/post-checkout
index 40f7bd7..c615fc8 100755
--- a/devscripts/git-hooks/post-checkout
+++ b/devscripts/git-hooks/post-checkout
@@ -16,7 +16,7 @@ if [ "$new_branch" = 1 ]; then
rm -rf docs/_build/html docs/html
fi &&
-python -m compileall -q -x '\.tox/.+' . &&
-python -O -m compileall -q -x '\.tox/.+' .
+python -m compileall -q -x '\.tox/' . &&
+python -O -m compileall -q -x '\.tox/' .
exit 0
diff --git a/devscripts/git-hooks/post-merge b/devscripts/git-hooks/post-merge
index 633a1d0..2df0670 100755
--- a/devscripts/git-hooks/post-merge
+++ b/devscripts/git-hooks/post-merge
@@ -2,7 +2,7 @@
# post-merge hook that compiles python files to byte code
-python -m compileall -q -x '\.tox/.+' . &&
-python -O -m compileall -q -x '\.tox/.+' .
+python -m compileall -q -x '\.tox/' . &&
+python -O -m compileall -q -x '\.tox/' .
exit 0
diff --git a/devscripts/git-hooks/post-rewrite b/devscripts/git-hooks/post-rewrite
index df28442..59efb3d 100755
--- a/devscripts/git-hooks/post-rewrite
+++ b/devscripts/git-hooks/post-rewrite
@@ -2,7 +2,7 @@
# post-rewrite hook that compiles python files to byte code
-python -m compileall -q -x '\.tox/.+' . &&
-python -O -m compileall -q -x '\.tox/.+' .
+python -m compileall -q -x '\.tox/' . &&
+python -O -m compileall -q -x '\.tox/' .
exit 0
http://sourceforge.net/p/sqlobject/sqlobject/ci/db02d0281af3a60c095a7e2205d645b92c54c554
commit db02d0281af3a60c095a7e2205d645b92c54c554
Author: Oleg Broytman <ph...@ph...>
Date: Wed Jan 3 02:52:53 2024 +0300
Tests(tox): Ignore errors from PyGreSQL tests
diff --git a/tox.ini b/tox.ini
index caa5945..e798939 100644
--- a/tox.ini
+++ b/tox.ini
@@ -213,7 +213,7 @@ commands =
{[testenv]commands}
-dropdb --username=runner --no-password sqlobject_test
createdb --username=runner --no-password sqlobject_test
- pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
+ -pytest -D "postgres://runner:test@localhost/sqlobject_test?driver=pygresql&charset=utf-8&debug=1"
dropdb --username=runner --no-password sqlobject_test
[testenv:py27-postgres-pygresql]
http://sourceforge.net/p/sqlobject/sqlobject/ci/5396e8151f13215a6a2076ea24c52482489af5b8
commit 5396e8151f13215a6a2076ea24c52482489af5b8
Author: Oleg Broytman <ph...@ph...>
Date: Wed Jan 3 02:02:14 2024 +0300
Build(GHActions): Use `checkout@v4` instead of outdated `v2`
diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml
index 3593f6a..b38d006 100644
--- a/.github/workflows/run-tests.yaml
+++ b/.github/workflows/run-tests.yaml
@@ -39,7 +39,7 @@ jobs:
if: ${{ runner.os == 'Windows' }}
# Setup Python/pip
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v4
- uses: s-weigand/setup-conda@v1
with:
conda-channels: conda-forge
http://sourceforge.net/p/sqlobject/sqlobject/ci/782091b5712fdaadbc4ae8b88a4a52562bfc5d2b
commit 782091b5712fdaadbc4ae8b88a4a52562bfc5d2b
Author: Oleg Broytman <ph...@ph...>
Date: Thu Dec 14 23:15:05 2023 +0300
Build(setup.cfg): Remove `validators.py`
We no longer carry `validators.py` with us.
[skip ci]
diff --git a/setup.cfg b/setup.cfg
index af28274..461bc50 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -10,7 +10,7 @@ tag_date = 0
tag_svn_revision = 0
[flake8]
-exclude = .git,.tox,docs/europython/*.py,validators.py
+exclude = .git,.tox,docs/europython/*.py
# E305: expected 2 blank lines after class or function definition, found 1
# W503 line break before binary operator
# W605 invalid escape sequence
http://sourceforge.net/p/sqlobject/sqlobject/ci/61151b8015d67de07a7a1e19d9161e7534b00800
commit 61151b8015d67de07a7a1e19d9161e7534b00800
Author: Oleg Broytman <ph...@ph...>
Date: Sat Nov 11 16:19:51 2023 +0300
Build(devscripts/postrelease): Restore alpha state
[skip ci]
diff --git a/devscripts/postrelease b/devscripts/postrelease
index 0a9c73a..246e9e3 100755
--- a/devscripts/postrelease
+++ b/devscripts/postrelease
@@ -2,5 +2,8 @@
git checkout HEAD~ ANNOUNCE.rst setup.cfg &&
+trove_cls='3 - Alpha' &&
+sed -Ei "s/Development Status :: .+\",\$/Development Status :: $trove_cls\",/" setup.py &&
+
`git var GIT_EDITOR` ANNOUNCE.rst setup.cfg README.rst docs/News.rst &&
exec git commit --message="Build: Prepare for the next release" --message="[skip ci]" ANNOUNCE.rst setup.cfg README.rst docs/News.rst
-----------------------------------------------------------------------
Summary of changes:
.github/workflows/run-tests.yaml | 2 +-
devscripts/git-hooks/post-checkout | 4 ++--
devscripts/git-hooks/post-merge | 4 ++--
devscripts/git-hooks/post-rewrite | 4 ++--
devscripts/postrelease | 3 +++
docs/News.rst | 7 +++++++
setup.cfg | 2 +-
tox.ini | 6 +++---
8 files changed, 21 insertions(+), 11 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2023-11-11 13:15:26
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.11.0 has been created
at eaf781db98170f4080cc544a490dae6da3133270 (tag)
tagging cc185d98ac00892335778446c5f554a16e9122dd (commit)
replaces 3.11.0b1
tagged by Oleg Broytman
on Sat Nov 11 16:09:26 2023 +0300
- Log -----------------------------------------------------------------
Release 3.11.0
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmVPfQYACgkQbggLcLYo
ewNDXRAAgDkm0ktlwD7iTzfNx6bxgyjnVFcYVoJDSKaPAzp5uEYpUiWy36R+oZPr
MrnzWevVwtPTyr87qkJIDj5Nf7UJ//aUknaPJ4qJ0ktUrRjywlA43U1ga4fz87at
bHMIG1sybyApEyBZtd63mmW2K3MzyIJK7uMW74YX5YSWqdX4PnDUnXk2vEdmUDeO
0PA0odLR+OsddqvaVl7Wbh/SOogHUlADh4FrJHbQh2xhuoWQ3RXdqZAeBd30n81a
leL2p+Su5hMMt+qXqtnKFzbBauMPJB6VdjxWM2M9d5aFcLPeN+V7xH4rEL7/ltF8
5bUYOgH3GoGJqUy1BYpESeORPz5gZ+S6o73nk1N0yZKl2F8sbePb30CSMOWoJmmf
YISLfgkJfN6OHxcIkMMNYYOwDKwR+PM/zPAtDk0gcbAzSNWkS5fMu231lqoOubq7
dmMLteNO4UCQ0s8bUbK3+LwxwudMDEI6xoDlFkpevI+L+Z+DfMg4E0cbdCBPzyMh
6EBjPlub15PfTLRYSvHvw3PXKpfddXhNINvWIG0ljKAccbnnppnNLdrKUCWGFNfn
DgXlx2BqS7fTVABVFPY9cJ92U0kuObwY1tlX2+PB4l0wgwUgSgkl/SKbiBwFlrvI
5TarOvTTlI3PZT0p/h0TZ7jqQQGZFL1VFZyJs2w+PftiZHRkhRA=
=cXB8
-----END PGP SIGNATURE-----
Oleg Broytman (3):
Build: Prepare for the next release
Build(devscripts/prerelease): Fix replace expression
Release 3.11.0
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2023-11-11 13:15:24
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via c714f55a9aa4990020711494d2d3911faf9566c4 (commit)
via cc185d98ac00892335778446c5f554a16e9122dd (commit)
via bcc6084516541c73dd8b2e467e30b4ff7118ea82 (commit)
from 2dddc9e4d9421f1b4dc8f438c96cdd24567a4864 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/c714f55a9aa4990020711494d2d3911faf9566c4
commit c714f55a9aa4990020711494d2d3911faf9566c4
Author: Oleg Broytman <ph...@ph...>
Date: Sat Nov 11 16:13:36 2023 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index fbb6112..2faac81 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,28 +1,26 @@
Hello!
-I'm pleased to announce version 3.11.0, the first stable release
-of branch 3.11 of SQLObject.
+I'm pleased to announce version 3.11.1a1, the first alpha of the upcoming
+release of branch 3.11 of SQLObject.
+I'm pleased to announce version 3.11.1a2, the second alpha of the upcoming
+release of branch 3.11 of SQLObject.
-What's new in SQLObject
-=======================
+I'm pleased to announce version 3.11.1b1, the first beta of the upcoming
+release of branch 3.11 of SQLObject.
+
+I'm pleased to announce version 3.11.1rc1, the first release candidate
+of the upcoming release of branch 3.11 of SQLObject.
-Features
---------
+I'm pleased to announce version 3.11.1, the first bugfix release of branch
+3.11 of SQLObject.
-* 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``.
+What's new in SQLObject
+=======================
+
+The contributors for this release are ... Thanks!
-* 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
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -54,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.11.0
+https://pypi.org/project/SQLObject/3.11.1a0.dev20231112/
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 8e89539..d9390c7 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.11.0
-================
+SQLObject 3.11.1a0
+==================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/docs/News.rst b/docs/News.rst
index e5aa90e..270a44a 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,9 +5,14 @@ News
.. contents:: Contents:
:backlinks: none
+SQLObject (master)
+==================
+
SQLObject 3.11.0
================
+Released 2023 Nov 11.
+
Features
--------
diff --git a/setup.py b/setup.py
index b1dea83..28a634b 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 5 - Production/Stable",
+ "Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
http://sourceforge.net/p/sqlobject/sqlobject/ci/cc185d98ac00892335778446c5f554a16e9122dd
commit cc185d98ac00892335778446c5f554a16e9122dd
Author: Oleg Broytman <ph...@ph...>
Date: Sat Nov 11 16:05:53 2023 +0300
Release 3.11.0
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index d29e875..fbb6112 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,26 +1,28 @@
Hello!
-I'm pleased to announce version 3.11.0a1, the first alpha of the upcoming
-release of branch 3.11 of SQLObject.
-
-I'm pleased to announce version 3.11.0a2, the second alpha of the upcoming
-release of branch 3.11 of SQLObject.
-
-I'm pleased to announce version 3.11.0b1, the first beta of the upcoming
-release of branch 3.11 of SQLObject.
-
-I'm pleased to announce version 3.11.0rc1, the first release candidate
-of the upcoming release of branch 3.11 of SQLObject.
-
-I'm pleased to announce version 3.11.0, the fourth bugfix release of branch
-3.11 of SQLObject.
+I'm pleased to announce version 3.11.0, the first stable release
+of branch 3.11 of SQLObject.
What's new in SQLObject
=======================
-The contributors for this release are ... Thanks!
+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
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -52,7 +54,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.11.0a0.dev20231105/
+https://pypi.org/project/SQLObject/3.11.0
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 1ac14c4..8e89539 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.11.0b1
-==================
+SQLObject 3.11.0
+================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index 4e7aaa5..63d78c2 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.10.3 &&
+build_docs 3.11.0 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index d644a2d..e5aa90e 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,8 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject (master)
-==================
+SQLObject 3.11.0
+================
Features
--------
diff --git a/setup.py b/setup.py
index cf98bf0..b1dea83 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 4 - Beta",
+ "Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index eb59522..19a73b7 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.11.0b1'
+version = '3.11.0'
major = 3
minor = 11
micro = 0
-release_level = 'beta'
-serial = 1
+release_level = 'final'
+serial = 0
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/bcc6084516541c73dd8b2e467e30b4ff7118ea82
commit bcc6084516541c73dd8b2e467e30b4ff7118ea82
Author: Oleg Broytman <ph...@ph...>
Date: Sat Nov 11 16:05:59 2023 +0300
Build(devscripts/prerelease): Fix replace expression
Escape a slash.
[skip ci]
diff --git a/devscripts/prerelease b/devscripts/prerelease
index f3f5c21..53e8956 100755
--- a/devscripts/prerelease
+++ b/devscripts/prerelease
@@ -33,7 +33,7 @@ if [ "$state" = alpha ]; then
elif [ "$state" = beta -o "$state" = 'release candidate' ]; then
trove_cls='4 - Beta'
elif [ "$state" = final -o "$state" = post ]; then
- trove_cls='5 - Production/Stable'
+ trove_cls='5 - Production\/Stable'
else
echo "Error: unknown state $state" >&2
exit 1
-----------------------------------------------------------------------
Summary of changes:
ANNOUNCE.rst | 12 ++++++------
README.rst | 2 +-
devscripts/build-all-docs | 2 +-
devscripts/prerelease | 2 +-
docs/News.rst | 5 +++++
setup.py | 2 +-
sqlobject/__version__.py | 6 +++---
7 files changed, 18 insertions(+), 13 deletions(-)
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2023-11-04 11:56:04
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The annotated tag, 3.11.0b1 has been created
at 6ad79e9d04de5f4db414724808928fe8197d8abf (tag)
tagging ee9624c5f76e5458876cd624fae9010ac4ad32b4 (commit)
replaces 3.10.3
tagged by Oleg Broytman
on Sat Nov 4 14:47:56 2023 +0300
- Log -----------------------------------------------------------------
Release 3.11.0b1
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEAXmp+v5763cG/OMobggLcLYoewMFAmVGL2wACgkQbggLcLYo
ewP7QA/+JrNqWeT7S849HAofRU13TpK9+bQM/tHYYHamrmBADbC9/oXpTieK44N4
KO/wnkIEfOOAlWtaBdSLWaI/LqHo4SKRE2ks3jDrb+//abvQxyClWziE5MlooELY
GvDciqzNpc2APlOrJnom8m4v+F/CW0pSUlU5sGMakRLbE3UbcQ6x1ZYB+HNLGtB9
r8LxTtKHcsIs8aeQ999bu9BievLq7USRplgkjpXrhoc+Le5LR55aiejQcrnA7odL
fHxw5uXub8rPrclEGIkUPTT7EHb38u2wZw15+3AF4i1fQ36BwFN6lLU3NM49FBpj
7Oa+3DQgQOh8pZGqh5dv871KkHuvP0NyDbOUdEV4vjV9fmwbErhsRXC8Wf8msrFH
htC0Z7lAPuKwelq8RQVAQgLCKAtPGM+6Y6YHbiTPJgvTgDXMv4iUGNTMx9H5dCTe
zeRDf0ybzJAdNrhwTpZq61cF8TplFkDRqIKYEVb5nMgk4yjx2JGWdA1zr1u8nuYv
CUvuWVDyJR6+Y5ohzL0JrzWSrY60W8RvzsrrV35JUygjvwFUott4KLMkBWM10yCy
MduKT/bA9gobOlDzrP0kobxiqi7NySC6xLbXdaIOkqV5g+FfRx/z/9nDwxt5ArcF
/cZCDOGuvfqL9Dcn5GBhyYrIpYD530WRyE8aaNKgMVCgI0kW4z0=
=XVy0
-----END PGP SIGNATURE-----
Oleg Broytman (9):
Build: Prepare for the next release
Build(devscripts): Feat `prerelease`: set trove classifier
Build(devscripts): Feat `prerelease`: Set version in `README.rst`
Refactor(SOSQLRelatedJoin): Pass `orderBy` right in
Refactor(SOSQLRelatedJoin): Directly use `SelectResults`
Feat(SOSQLRelatedJoin): Raise error for filter without alias
Feat: `idType` must be either `int` or `str`
Feat: `sqlmeta.idSize` to set `id` size
Release 3.11.0b1
-----------------------------------------------------------------------
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2023-11-04 11:56:02
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
via 2dddc9e4d9421f1b4dc8f438c96cdd24567a4864 (commit)
via ee9624c5f76e5458876cd624fae9010ac4ad32b4 (commit)
via a0459c0f93bdd0bda61a172ed8e717e2a239b7d2 (commit)
via c830a55eb4bb55521b5393acfac099c4c6e110c0 (commit)
via b29ab6e30703a0458a72e01262ff903e539356c5 (commit)
via 391d4b180bd8493bc75cec97cf0b972586c74fcc (commit)
via 99e0d142b7d00f3f3232aa9ce21de1a764117dba (commit)
via d07860bdf349573c993da82f5b154f7e67dbd1d6 (commit)
via 15bda4c25923597b0371b5af50d42c4db78fb206 (commit)
from 25e4fac9844618f54fdb3ecf8cf3114071b7ecf8 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/2dddc9e4d9421f1b4dc8f438c96cdd24567a4864
commit 2dddc9e4d9421f1b4dc8f438c96cdd24567a4864
Author: Oleg Broytman <ph...@ph...>
Date: Sat Nov 4 14:54:29 2023 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 9677b85..d29e875 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,28 +1,26 @@
Hello!
+I'm pleased to announce version 3.11.0a1, the first alpha of the upcoming
+release of branch 3.11 of SQLObject.
+
+I'm pleased to announce version 3.11.0a2, the second alpha of the upcoming
+release of branch 3.11 of SQLObject.
+
I'm pleased to announce version 3.11.0b1, the first beta of the upcoming
release of branch 3.11 of SQLObject.
+I'm pleased to announce version 3.11.0rc1, the first release candidate
+of the upcoming release of branch 3.11 of SQLObject.
-What's new in SQLObject
-=======================
+I'm pleased to announce version 3.11.0, the fourth bugfix release of branch
+3.11 of SQLObject.
-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.
+What's new in SQLObject
+=======================
-* Test that ``idType`` is either ``int`` or ``str``.
+The contributors for this release are ... Thanks!
-* 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
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -54,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.11.0b1
+https://pypi.org/project/SQLObject/3.11.0a0.dev20231105/
News and changes:
http://sqlobject.org/News.html
http://sourceforge.net/p/sqlobject/sqlobject/ci/ee9624c5f76e5458876cd624fae9010ac4ad32b4
commit ee9624c5f76e5458876cd624fae9010ac4ad32b4
Author: Oleg Broytman <ph...@ph...>
Date: Sat Nov 4 14:45:56 2023 +0300
Release 3.11.0b1
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index c2d4289..9677b85 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,26 +1,28 @@
Hello!
-I'm pleased to announce version 3.10.4a1, the first alpha of the upcoming
-release of branch 3.10 of SQLObject.
-
-I'm pleased to announce version 3.10.4a2, the second alpha of the upcoming
-release of branch 3.10 of SQLObject.
-
-I'm pleased to announce version 3.10.4b1, the first beta of the upcoming
-release of branch 3.10 of SQLObject.
-
-I'm pleased to announce version 3.10.4rc1, the first release candidate
-of the upcoming release of branch 3.10 of SQLObject.
-
-I'm pleased to announce version 3.10.4, the fourth bugfix release of branch
-3.10 of SQLObject.
+I'm pleased to announce version 3.11.0b1, the first beta of the upcoming
+release of branch 3.11 of SQLObject.
What's new in SQLObject
=======================
-The contributors for this release are ... Thanks!
+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
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -52,7 +54,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.10.4a0.dev20231025/
+https://pypi.org/project/SQLObject/3.11.0b1
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index e6db9d4..1ac14c4 100644
--- a/README.rst
+++ b/README.rst
@@ -1,4 +1,4 @@
-SQLObject 3.10.4a0
+SQLObject 3.11.0b1
==================
SQLObject is a free and open-source (LGPL) Python object-relational
diff --git a/setup.py b/setup.py
index b1dea83..cf98bf0 100755
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,7 @@ and `GitHub <https://github.com/sqlobject>`_.
""", # noqa: E501 line too long
long_description_content_type="text/x-rst",
classifiers=[
- "Development Status :: 5 - Production/Stable",
+ "Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"License :: OSI Approved :: "
"GNU Library or Lesser General Public License (LGPL)",
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index c1c41ab..eb59522 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.10.3'
+version = '3.11.0b1'
major = 3
-minor = 10
-micro = 3
-release_level = 'final'
-serial = 0
+minor = 11
+micro = 0
+release_level = 'beta'
+serial = 1
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/a0459c0f93bdd0bda61a172ed8e717e2a239b7d2
commit a0459c0f93bdd0bda61a172ed8e717e2a239b7d2
Author: Oleg Broytman <ph...@ph...>
Date: Sun Oct 29 15:16:52 2023 +0300
Feat: `sqlmeta.idSize` to set `id` size
diff --git a/docs/News.rst b/docs/News.rst
index 66bc112..d644a2d 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -18,6 +18,13 @@ Features
* 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
================
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index e2350d7..e67aea2 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -768,6 +768,13 @@ values are:
or ``str``. This is ``int`` by default (all IDs are normalized to
integers).
+`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.
+
`style`:
A style object -- this object allows you to use other algorithms
for translating between Python attribute and class names, and the
diff --git a/sqlobject/main.py b/sqlobject/main.py
index c0f8a88..7d2fd1c 100644
--- a/sqlobject/main.py
+++ b/sqlobject/main.py
@@ -190,6 +190,7 @@ class sqlmeta(with_metaclass(declarative.DeclarativeMeta, object)):
table = None
idName = None
+ idSize = None # Allowed values are 'TINY/SMALL/MEDIUM/BIG/None'
idSequence = None
# This function is used to coerce IDs into the proper format,
# so you should replace it with str, or another function, if you
@@ -271,6 +272,10 @@ class sqlmeta(with_metaclass(declarative.DeclarativeMeta, object)):
if cls.idType not in (int, str):
raise TypeError('sqlmeta.idType must be int or str, not %r'
% cls.idType)
+ if cls.idSize not in ('TINY', 'SMALL', 'MEDIUM', 'BIG', None):
+ raise ValueError(
+ "sqlmeta.idType must be 'TINY', 'SMALL', 'MEDIUM', 'BIG' "
+ "or None, not %r" % cls.idSize)
cls.soClass = soClass
if not cls.style:
cls.style = styles.defaultStyle
diff --git a/sqlobject/mysql/mysqlconnection.py b/sqlobject/mysql/mysqlconnection.py
index b1ab6c2..1fcf0a7 100644
--- a/sqlobject/mysql/mysqlconnection.py
+++ b/sqlobject/mysql/mysqlconnection.py
@@ -364,7 +364,16 @@ class MySQLConnection(DBAPI):
if soClass.sqlmeta.idType is not int:
raise TypeError('sqlmeta.idType must be int or str, not %r'
% soClass.sqlmeta.idType)
- return '%s INT PRIMARY KEY AUTO_INCREMENT' % soClass.sqlmeta.idName
+ if soClass.sqlmeta.idSize is None:
+ mysql_int_type = 'INT'
+ elif soClass.sqlmeta.idSize in ('TINY', 'SMALL', 'MEDIUM', 'BIG'):
+ mysql_int_type = '%sINT' % soClass.sqlmeta.idSize
+ else:
+ raise ValueError(
+ "sqlmeta.idSize must be 'TINY', 'SMALL', 'MEDIUM', 'BIG' "
+ "or None, not %r" % soClass.sqlmeta.idSize)
+ return '%s %s PRIMARY KEY AUTO_INCREMENT' \
+ % (soClass.sqlmeta.idName, mysql_int_type)
def joinSQLType(self, join):
return 'INT NOT NULL'
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index 722f3d4..5bc6778 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -341,7 +341,22 @@ class PostgresConnection(DBAPI):
return index.postgresCreateIndexSQL(soClass)
def createIDColumn(self, soClass):
- key_type = {int: "SERIAL", str: "TEXT"}[soClass.sqlmeta.idType]
+ if soClass.sqlmeta.idType is int:
+ if soClass.sqlmeta.idSize in ('TINY', 'SMALL'):
+ key_type = 'SMALLSERIAL'
+ elif soClass.sqlmeta.idSize in ('MEDIUM', None):
+ key_type = 'SERIAL'
+ elif soClass.sqlmeta.idSize == 'BIG':
+ key_type = 'BIGSERIAL'
+ else:
+ raise ValueError(
+ "sqlmeta.idSize must be 'TINY', 'SMALL', 'MEDIUM', 'BIG' "
+ "or None, not %r" % soClass.sqlmeta.idSize)
+ elif soClass.sqlmeta.idType is str:
+ key_type = "TEXT"
+ else:
+ raise TypeError('sqlmeta.idType must be int or str, not %r'
+ % soClass.sqlmeta.idType)
return '%s %s PRIMARY KEY' % (soClass.sqlmeta.idName, key_type)
def dropTable(self, tableName, cascade=False):
diff --git a/sqlobject/tests/test_basic.py b/sqlobject/tests/test_basic.py
index 12dff99..361bf93 100644
--- a/sqlobject/tests/test_basic.py
+++ b/sqlobject/tests/test_basic.py
@@ -347,3 +347,13 @@ def _test_wrong_sqlmeta_idType():
def test_wrong_sqlmeta_idType():
pytest.raises(TypeError, _test_wrong_sqlmeta_idType)
+
+
+def _test_wrong_sqlmeta_idSize():
+ class SOTestSO14(SQLObject):
+ class sqlmeta:
+ idSize = 'DEFAULT'
+
+
+def test_wrong_sqlmeta_idSize():
+ pytest.raises(ValueError, _test_wrong_sqlmeta_idSize)
diff --git a/sqlobject/tests/test_mysql.py b/sqlobject/tests/test_mysql.py
index 5f41bd9..5a15aca 100644
--- a/sqlobject/tests/test_mysql.py
+++ b/sqlobject/tests/test_mysql.py
@@ -38,3 +38,13 @@ def test_ANY():
SOTestANY(value=30)
assert len(list(SOTestANY.select(
SOTestANY.q.value > ANY(Select([SOTestANY.q.value]))))) == 2
+
+
+class SOTestMySQLidSize(SQLObject):
+ class sqlmeta:
+ idSize = 'BIG'
+
+
+def test_idSize():
+ assert 'id BIGINT PRIMARY KEY AUTO_INCREMENT' \
+ in SOTestMySQLidSize.createTableSQL(connection=connection)[0]
diff --git a/sqlobject/tests/test_postgres.py b/sqlobject/tests/test_postgres.py
index dbe62c0..037a78a 100644
--- a/sqlobject/tests/test_postgres.py
+++ b/sqlobject/tests/test_postgres.py
@@ -70,3 +70,13 @@ def test_SOME():
SOTestSOME(value=30)
assert len(list(SOTestSOME.select(
SOTestSOME.q.value > SOME(Select([SOTestSOME.q.value]))))) == 2
+
+
+class SOTestPgidSize(SQLObject):
+ class sqlmeta:
+ idSize = 'BIG'
+
+
+def test_idSize():
+ assert 'id BIGSERIAL PRIMARY KEY' \
+ in SOTestPgidSize.createTableSQL(connection=connection)[0]
http://sourceforge.net/p/sqlobject/sqlobject/ci/c830a55eb4bb55521b5393acfac099c4c6e110c0
commit c830a55eb4bb55521b5393acfac099c4c6e110c0
Author: Oleg Broytman <ph...@ph...>
Date: Sun Oct 29 14:35:24 2023 +0300
Feat: `idType` must be either `int` or `str`
diff --git a/docs/News.rst b/docs/News.rst
index 20213a3..66bc112 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -16,6 +16,8 @@ Features
``relJoinCol.filter(thisClass.q.column)`` raises ``ValueError``
hinting that an alias is required for filtering.
+* Test that ``idType`` is either ``int`` or ``str``.
+
SQLObject 3.10.3
================
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index cba7db1..e2350d7 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -764,8 +764,9 @@ values are:
is ``id``.
`idType`:
- A function that coerces/normalizes IDs when setting IDs. This
- is ``int`` by default (all IDs are normalized to integers).
+ A type that coerces/normalizes IDs when setting IDs. Must be ``int``
+ or ``str``. This is ``int`` by default (all IDs are normalized to
+ integers).
`style`:
A style object -- this object allows you to use other algorithms
diff --git a/sqlobject/main.py b/sqlobject/main.py
index 827db2c..c0f8a88 100644
--- a/sqlobject/main.py
+++ b/sqlobject/main.py
@@ -268,6 +268,9 @@ class sqlmeta(with_metaclass(declarative.DeclarativeMeta, object)):
@classmethod
def setClass(cls, soClass):
+ if cls.idType not in (int, str):
+ raise TypeError('sqlmeta.idType must be int or str, not %r'
+ % cls.idType)
cls.soClass = soClass
if not cls.style:
cls.style = styles.defaultStyle
diff --git a/sqlobject/mysql/mysqlconnection.py b/sqlobject/mysql/mysqlconnection.py
index 76b1172..b1ab6c2 100644
--- a/sqlobject/mysql/mysqlconnection.py
+++ b/sqlobject/mysql/mysqlconnection.py
@@ -359,8 +359,11 @@ class MySQLConnection(DBAPI):
return index.mysqlCreateIndexSQL(soClass)
def createIDColumn(self, soClass):
- if soClass.sqlmeta.idType == str:
+ if soClass.sqlmeta.idType is str:
return '%s TEXT PRIMARY KEY' % soClass.sqlmeta.idName
+ if soClass.sqlmeta.idType is not int:
+ raise TypeError('sqlmeta.idType must be int or str, not %r'
+ % soClass.sqlmeta.idType)
return '%s INT PRIMARY KEY AUTO_INCREMENT' % soClass.sqlmeta.idName
def joinSQLType(self, join):
diff --git a/sqlobject/sqlite/sqliteconnection.py b/sqlobject/sqlite/sqliteconnection.py
index 6285c44..d6df5c5 100644
--- a/sqlobject/sqlite/sqliteconnection.py
+++ b/sqlobject/sqlite/sqliteconnection.py
@@ -311,8 +311,11 @@ class SQLiteConnection(DBAPI):
return self._createIDColumn(soClass.sqlmeta)
def _createIDColumn(self, sqlmeta):
- if sqlmeta.idType == str:
+ if sqlmeta.idType is str:
return '%s TEXT PRIMARY KEY' % sqlmeta.idName
+ if sqlmeta.idType is not int:
+ raise TypeError('sqlmeta.idType must be int or str, not %r'
+ % sqlmeta.idType)
return '%s INTEGER PRIMARY KEY AUTOINCREMENT' % sqlmeta.idName
def joinSQLType(self, join):
diff --git a/sqlobject/tests/test_basic.py b/sqlobject/tests/test_basic.py
index d9d1a2e..12dff99 100644
--- a/sqlobject/tests/test_basic.py
+++ b/sqlobject/tests/test_basic.py
@@ -337,3 +337,13 @@ def test_connection_override():
assert SOTestSO13._connection.uri() == 'sqlite:///db2'
del sqlhub.processConnection
+
+
+def _test_wrong_sqlmeta_idType():
+ class SOTestSO13(SQLObject):
+ class sqlmeta:
+ idType = dict
+
+
+def test_wrong_sqlmeta_idType():
+ pytest.raises(TypeError, _test_wrong_sqlmeta_idType)
http://sourceforge.net/p/sqlobject/sqlobject/ci/b29ab6e30703a0458a72e01262ff903e539356c5
commit b29ab6e30703a0458a72e01262ff903e539356c5
Author: Oleg Broytman <ph...@ph...>
Date: Sat Oct 28 16:39:25 2023 +0300
Feat(SOSQLRelatedJoin): Raise error for filter without alias
Closes: #187.
diff --git a/docs/News.rst b/docs/News.rst
index c6a01e4..20213a3 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,14 @@ News
SQLObject (master)
==================
+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.
+
SQLObject 3.10.3
================
diff --git a/sqlobject/joins.py b/sqlobject/joins.py
index de479e7..948d04d 100644
--- a/sqlobject/joins.py
+++ b/sqlobject/joins.py
@@ -2,6 +2,7 @@ from itertools import count
from . import boundattributes
... 251 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|
|
From: phd <no...@so...> - 2023-10-25 16:24:42
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "SQLObject development repository".
The branch, master has been updated
discards 69c1c2f36c2893f82b9270782eb802a9f96df589 (commit)
via 25e4fac9844618f54fdb3ecf8cf3114071b7ecf8 (commit)
via 27d347f0d25f29fbd8245d860d387cc306398c42 (commit)
via e151c186e647aa111254eecbd900462933733984 (commit)
via 59a0894945676fd175d3c2206eefbdb7446be2bb (commit)
via ab2df13ad1841d8314d1325a1f2963d82041468b (commit)
via 4faa6b208560bedd676e785839c0368b8a511887 (commit)
via 633532ca1d2fc743cb64d2087359b8659a9bdb4a (commit)
via 8c2a92e206a4352c8cc4332f148a5566eadf3526 (commit)
via a37239b87bfedd8bc72b62431412a9cf5a17e48e (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (69c1c2f36c2893f82b9270782eb802a9f96df589)
\
N -- N -- N (25e4fac9844618f54fdb3ecf8cf3114071b7ecf8)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/sqlobject/sqlobject/ci/25e4fac9844618f54fdb3ecf8cf3114071b7ecf8
commit 25e4fac9844618f54fdb3ecf8cf3114071b7ecf8
Author: Oleg Broytman <ph...@ph...>
Date: Wed Oct 25 19:23:36 2023 +0300
Build: Prepare for the next release
[skip ci]
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 4b6d859..c2d4289 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,58 +1,26 @@
Hello!
-I'm pleased to announce version 3.10.3, the 3rd bugfix release of branch
-3.10 of SQLObject.
-
-
-What's new in SQLObject
-=======================
-
-The contributors for this release are
-Igor Yudytskiy and shuffle (github.com/shuffleyxf).
-Thanks!
+I'm pleased to announce version 3.10.4a1, the first alpha of the upcoming
+release of branch 3.10 of SQLObject.
-Bug fixes
----------
+I'm pleased to announce version 3.10.4a2, the second alpha of the upcoming
+release of branch 3.10 of SQLObject.
-* 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)``.
+I'm pleased to announce version 3.10.4b1, the first beta of the upcoming
+release of branch 3.10 of SQLObject.
-Drivers
--------
+I'm pleased to announce version 3.10.4rc1, the first release candidate
+of the upcoming release of branch 3.10 of SQLObject.
-* 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
------
+I'm pleased to announce version 3.10.4, the fourth bugfix release of branch
+3.10 of SQLObject.
-* Run tests with Python 3.12.
-CI
---
+What's new in SQLObject
+=======================
-* GHActions: Ensure ``pip`` only if needed
+The contributors for this release are ... Thanks!
- 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.
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -84,7 +52,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.10.3
+https://pypi.org/project/SQLObject/3.10.4a0.dev20231025/
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 39ece0b..e6db9d4 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.10.3
-================
+SQLObject 3.10.4a0
+==================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/docs/News.rst b/docs/News.rst
index dabc193..c6a01e4 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,6 +5,9 @@ News
.. contents:: Contents:
:backlinks: none
+SQLObject (master)
+==================
+
SQLObject 3.10.3
================
http://sourceforge.net/p/sqlobject/sqlobject/ci/27d347f0d25f29fbd8245d860d387cc306398c42
commit 27d347f0d25f29fbd8245d860d387cc306398c42
Author: Oleg Broytman <ph...@ph...>
Date: Wed Oct 25 19:16:19 2023 +0300
Release 3.10.3
diff --git a/ANNOUNCE.rst b/ANNOUNCE.rst
index 216844c..4b6d859 100644
--- a/ANNOUNCE.rst
+++ b/ANNOUNCE.rst
@@ -1,37 +1,58 @@
Hello!
-I'm pleased to announce version 3.10.3a1, the first alpha of the upcoming
-release of branch 3.10 of SQLObject.
+I'm pleased to announce version 3.10.3, the 3rd bugfix release of branch
+3.10 of SQLObject.
-I'm pleased to announce version 3.10.3a2, the second alpha of the upcoming
-release of branch 3.10 of SQLObject.
-I'm pleased to announce version 3.10.3b1, the first beta of the upcoming
-release of branch 3.10 of SQLObject.
+What's new in SQLObject
+=======================
-I'm pleased to announce version 3.10.3rc1, the first release candidate
-of the upcoming release of branch 3.10 of SQLObject.
+The contributors for this release are
+Igor Yudytskiy and shuffle (github.com/shuffleyxf).
+Thanks!
-I'm pleased to announce version 3.10.3, the first bugfix release of branch
-3.10 of SQLObject.
+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)``.
-What's new in SQLObject
-=======================
+Drivers
+-------
-The contributors for this release are ... Thanks!
+* Fix(SQLiteConnection): Release connections from threads that are
+ no longer active. This fixes memory leak in multithreaded programs
+ in Windows.
-Minor features
---------------
+ ``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.
-* Class ``Alias`` grows a method ``.select()`` to match ``SQLObject.select()``.
+* Dropped ``supersqlite``. It seems abandoned.
+ The last version 0.0.78 was released in 2018.
-Bug fixes
----------
+Tests
+-----
+
+* Run tests with Python 3.12.
+
+CI
+--
+
+* GHActions: Ensure ``pip`` only if needed
-* 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. Thanks to Igor Yudytskiy for providing an elaborated bug report.
+ 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.
For a more complete list, please see the news:
http://sqlobject.org/News.html
@@ -63,7 +84,7 @@ Site:
http://sqlobject.org
Download:
-https://pypi.org/project/SQLObject/3.10.3a0.dev20230810/
+https://pypi.org/project/SQLObject/3.10.3
News and changes:
http://sqlobject.org/News.html
diff --git a/README.rst b/README.rst
index 074d26a..39ece0b 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-SQLObject 3.10.3a0
-==================
+SQLObject 3.10.3
+================
SQLObject is a free and open-source (LGPL) Python object-relational
mapper. Your database tables are described as classes, and rows are
diff --git a/devscripts/build-all-docs b/devscripts/build-all-docs
index d633b09..4e7aaa5 100755
--- a/devscripts/build-all-docs
+++ b/devscripts/build-all-docs
@@ -10,7 +10,7 @@ cd "`dirname \"$0\"`" &&
PROG_DIR="`pwd`" &&
cd .. &&
-build_docs 3.10.2 &&
+build_docs 3.10.3 &&
build_docs master devel &&
rm -rf docs/html &&
diff --git a/docs/News.rst b/docs/News.rst
index e8ee45c..dabc193 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -5,8 +5,10 @@ News
.. contents:: Contents:
:backlinks: none
-SQLObject (master)
-==================
+SQLObject 3.10.3
+================
+
+Released 2023 Oct 25.
Bug fixes
---------
diff --git a/sqlobject/__version__.py b/sqlobject/__version__.py
index 8bf191f..c1c41ab 100644
--- a/sqlobject/__version__.py
+++ b/sqlobject/__version__.py
@@ -1,8 +1,8 @@
-version = '3.10.2'
+version = '3.10.3'
major = 3
minor = 10
-micro = 2
+micro = 3
release_level = 'final'
serial = 0
version_info = (major, minor, micro, release_level, serial)
http://sourceforge.net/p/sqlobject/sqlobject/ci/e151c186e647aa111254eecbd900462933733984
commit e151c186e647aa111254eecbd900462933733984
Author: Oleg Broytman <ph...@ph...>
Date: Thu Oct 19 16:53:52 2023 +0300
Fix(SQLRelatedJoin): Relax aliasing
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)`.
diff --git a/docs/News.rst b/docs/News.rst
index b7c8e23..e8ee45c 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -8,6 +8,14 @@ News
SQLObject (master)
==================
+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
-------
diff --git a/sqlobject/joins.py b/sqlobject/joins.py
index fa2b337..34d9c59 100644
--- a/sqlobject/joins.py
+++ b/sqlobject/joins.py
@@ -291,52 +291,63 @@ class RelatedJoin(MultipleJoin):
class OtherTableToJoin(sqlbuilder.SQLExpression):
- def __init__(self, otherTable, otherIdName, interTable, joinColumn):
+ def __init__(self, otherTable, otherIdName, interTable, joinColumn, alias):
self.otherTable = otherTable
self.otherIdName = otherIdName
self.interTable = interTable
self.joinColumn = joinColumn
+ self.alias = alias
def tablesUsedImmediate(self):
return [
- '%s _SO_SQLRelatedJoin_OtherTable' % self.otherTable,
+ '%s %s' % (self.otherTable, self.alias)
+ if self.alias else self.otherTable,
self.interTable,
]
def __sqlrepr__(self, db):
- return '_SO_SQLRelatedJoin_OtherTable.%s = %s.%s' % (
+ return '%s.%s = %s.%s' % (
+ self.alias if self.alias else self.otherTable,
self.otherIdName, self.interTable, self.joinColumn)
class JoinToTable(sqlbuilder.SQLExpression):
- def __init__(self, table, idName, interTable, joinColumn):
+ def __init__(self, table, idName, interTable, joinColumn, alias):
self.table = table
self.idName = idName
self.interTable = interTable
self.joinColumn = joinColumn
+ self.alias = alias
def tablesUsedImmediate(self):
return [
- '%s _SO_SQLRelatedJoin_ThisTable' % self.table,
+ '%s %s' % (self.table, self.alias)
+ if self.alias else self.table,
self.interTable,
]
def __sqlrepr__(self, db):
- return '%s.%s = _SO_SQLRelatedJoin_ThisTable.%s' % (
- self.interTable, self.joinColumn, self.idName)
+ return '%s.%s = %s.%s' % (
+ self.interTable, self.joinColumn,
+ self.alias if self.alias else self.table, self.idName)
class TableToId(sqlbuilder.SQLExpression):
- def __init__(self, table, idName, idValue):
+ def __init__(self, table, idName, idValue, alias):
self.table = table
self.idName = idName
self.idValue = idValue
+ self.alias = alias
def tablesUsedImmediate(self):
- return ['%s _SO_SQLRelatedJoin_ThisTable' % self.table]
+ return [
+ '%s %s' % (self.table, self.alias)
+ if self.alias else self.table,
+ ]
def __sqlrepr__(self, db):
- return '_SO_SQLRelatedJoin_ThisTable.%s = %s' % (
+ return '%s.%s = %s' % (
+ self.alias if self.alias else self.table,
self.idName, self.idValue)
@@ -346,23 +357,33 @@ class SOSQLRelatedJoin(SORelatedJoin):
conn = inst._connection
else:
conn = None
- results = sqlbuilder.Alias(
- self.otherClass, '_SO_SQLRelatedJoin_OtherTable'
- ).select(sqlbuilder.AND(
+ needAlias = self.soClass is self.otherClass
+ if needAlias:
+ source = sqlbuilder.Alias(
+ self.otherClass, '_SO_SQLRelatedJoin_OtherTable')
+ else:
+ source = self.otherClass
+ results = source.select(sqlbuilder.AND(
OtherTableToJoin(
self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
- self.intermediateTable, self.otherColumn
+ self.intermediateTable, self.otherColumn,
+ '_SO_SQLRelatedJoin_OtherTable' if needAlias else '',
),
JoinToTable(
self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName,
- self.intermediateTable, self.joinColumn
+ self.intermediateTable, self.joinColumn,
+ '_SO_SQLRelatedJoin_ThisTable' if needAlias else '',
+ ),
+ TableToId(
+ self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName,
+ inst.id, '_SO_SQLRelatedJoin_ThisTable' if needAlias else '',
),
- TableToId(self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName,
- inst.id),
), clauseTables=(
- '%s _SO_SQLRelatedJoin_ThisTable' % self.soClass.sqlmeta.table,
+ '%s _SO_SQLRelatedJoin_ThisTable' % self.soClass.sqlmeta.table
+ if needAlias else self.soClass.sqlmeta.table,
'%s _SO_SQLRelatedJoin_OtherTable' %
- self.otherClass.sqlmeta.table,
+ self.otherClass.sqlmeta.table
+ if needAlias else self.otherClass.sqlmeta.table,
self.intermediateTable),
connection=conn)
return results.orderBy(self.orderBy)
diff --git a/sqlobject/tests/test_SQLRelatedJoin.py b/sqlobject/tests/test_SQLRelatedJoin.py
index 5e235dd..e7d7e41 100644
--- a/sqlobject/tests/test_SQLRelatedJoin.py
+++ b/sqlobject/tests/test_SQLRelatedJoin.py
@@ -1,6 +1,7 @@
import pytest
from sqlobject import RelatedJoin, SQLObject, SQLRelatedJoin, StringCol, \
ForeignKey
+from sqlobject.sqlbuilder import Alias
from sqlobject.tests.dbtest import setupClass, supports
@@ -24,7 +25,7 @@ def createAllTables():
setupClass(Tourtment)
-def test_1():
+def createData():
createAllTables()
# create some tourtments
t1 = Tourtment(name='Tourtment #1')
@@ -44,7 +45,11 @@ def test_1():
t2.addFighter(trunks)
t3.addFighter(gohan)
t3.addFighter(trunks)
- # do some selects
+ return t1, t2, t3, gokou, vegeta, gohan, trunks
+
+
+def test_1():
+ t1, t2, t3, gokou, vegeta, gohan, trunks = createData()
for i, j in zip(t1.fightersAsList, t1.fightersAsSResult):
assert i is j
assert len(t2.fightersAsList) == t2.fightersAsSResult.count()
@@ -65,6 +70,15 @@ def test_related_join_transaction():
Tourtment._connection.autoCommit = True
... 822 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|