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 859dbffe446aaef2a408066d28ad959f9c20e17a (commit)
via 0c1368bb74070570d1f775fd4452189c9f59717a (commit)
via 6e31c371db753b199a4ddc2f720cb2d1a2b53e42 (commit)
via 6113e3abe33afb39d702001fc36d228ec955dcf1 (commit)
via ae47156624f77e329d0b5a1f6a6fcdbde2d0e6b8 (commit)
via 0b512866eb3f8f2babacea1a907d78e83b06fedb (commit)
from 8aaccf7e191f5a9e15e63b15fb252db83357cbbf (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/859dbffe446aaef2a408066d28ad959f9c20e17a
commit 859dbffe446aaef2a408066d28ad959f9c20e17a
Author: Oleg Broytman <ph...@ph...>
Date: Wed Nov 23 18:04:44 2016 +0300
Add support for pyfirebirdsql driver
diff --git a/docs/News.rst b/docs/News.rst
index f292559..f3bff9b 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -22,14 +22,14 @@ Minor features
* Add ``driver`` keyword for FirebirdConnection. Allowed values are 'fdb'
or 'kinterbasdb'. Default is to test 'fdb' and 'kinterbasdb' in that
- order.
+ order. pyfirebirdsql is supported but untested.
* Add ``driver`` keyword for MySQLConnection. Allowed value are 'mysqldb',
'connector', 'oursql' and 'pymysql'. Default is to test for mysqldb only;
(connector, oursql and pymysql drivers still cause problems).
-Work in progress
-----------------
+Drivers (work in progress)
+--------------------------
* Add support for `MySQL Connector
<https://pypi.python.org/pypi/mysql-connector>`_ (pure python; `binary
@@ -54,6 +54,9 @@ Work in progress
* Add support for `pg8000 <https://pypi.python.org/pypi/pg8000>`_
PostgreSQL driver. There are still some problems.
+* Add support for `pyfirebirdsql
+ <https://pypi.python.org/pypi/firebirdsql>`_ (untested).
+
Documentation
-------------
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index 324c116..e9e4bc4 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -47,10 +47,13 @@ Requirements
============
Currently SQLObject supports MySQL_ via MySQLdb_ aka MySQL-python (called
-mysqlclient_ for Python 3) or `MySQL Connector`_ or oursql_ or PyMySQL_,
-PostgreSQL_ via psycopg2_ or psycopg1 or PyGreSQL_ or py-postgresql_ or
-pg8000_, SQLite_ via PySQLite_, Firebird_ via fdb_ or kinterbasdb_, `MAX
-DB`_ (also known as SAP DB) via sapdb_, Sybase via Sybase_, and `MSSQL
+mysqlclient_ for Python 3); `MySQL Connector`_, oursql_ and PyMySQL_ are
+supported but have problems (not all tests passed). For PostgreSQL_
+psycopg2_ or psycopg1 are recommended; PyGreSQL_, py-postgresql_ and
+pg8000_ are supported but have problems (not all tests passed). SQLite_ has
+a built-in driver or PySQLite_. Firebird_ is supported via fdb_ or
+kinterbasdb_; pyfirebirdsql_ is supported but untested. `MAX DB`_ (also
+known as SAP DB) is supported via sapdb_. Sybase via Sybase_. `MSSQL
Server`_ via pymssql_ (+ FreeTDS_) or adodbapi_ (Win32).
.. _MySQL: https://www.mysql.com/
@@ -69,6 +72,7 @@ Server`_ via pymssql_ (+ FreeTDS_) or adodbapi_ (Win32).
.. _Firebird: http://www.firebirdsql.org/en/python-driver/
.. _fdb: http://www.firebirdsql.org/en/devel-python-driver/
.. _kinterbasdb: http://kinterbasdb.sourceforge.net/
+.. _pyfirebirdsql: https://pypi.python.org/pypi/firebirdsql
.. _`MAX DB`: http://maxdb.sap.com/
.. _sapdb: http://maxdb.sap.com/doc/7_8/50/01923f25b842438a408805774f6989/frameset.htm
.. _Sybase: http://www.object-craft.com.au/projects/sybase/
diff --git a/docs/TODO.rst b/docs/TODO.rst
index 047aee1..9c31d87 100644
--- a/docs/TODO.rst
+++ b/docs/TODO.rst
@@ -71,8 +71,6 @@ TODO
* Switch from setuptools to distribute.
-* `pyfirebirdsql <https://pypi.python.org/pypi/firebirdsql>`_.
-
* `dbms <https://pypi.python.org/pypi/dbms>`_ is a DB API wrapper for DB
API drivers for IBM DB2, Firebird, MSSQL Server, MySQL, Oracle,
PostgreSQL, SQLite and ODBC.
diff --git a/sqlobject/firebird/firebirdconnection.py b/sqlobject/firebird/firebirdconnection.py
index cf4aed3..ba60123 100644
--- a/sqlobject/firebird/firebirdconnection.py
+++ b/sqlobject/firebird/firebirdconnection.py
@@ -33,10 +33,13 @@ class FirebirdConnection(DBAPI):
# unicode.
kinterbasdb.init(type_conv=200)
self.module = kinterbasdb
+ elif driver in ('firebirdsql', 'pyfirebirdsql'):
+ import firebirdsql
+ self.module = firebirdsql
else:
raise ValueError(
'Unknown FireBird driver "%s", '
- 'expected fdb or kinterbasdb' % driver)
+ 'expected fdb, kinterbasdb or firebirdsql' % driver)
except ImportError:
pass
else:
http://sourceforge.net/p/sqlobject/sqlobject/ci/0c1368bb74070570d1f775fd4452189c9f59717a
commit 0c1368bb74070570d1f775fd4452189c9f59717a
Author: Oleg Broytman <ph...@ph...>
Date: Wed Nov 23 17:10:51 2016 +0300
Add support for py-postgresql driver
diff --git a/.travis.yml b/.travis.yml
index ce66e2e..36d6f85 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,6 +37,8 @@ env:
- TOXENV=py27-pygresql
- TOXENV=py34-pygresql
- TOXENV=py35-pygresql
+ - TOXENV=py34-pypostgresql
+ - TOXENV=py35-pypostgresql
- TOXENV=py26-pg8000
- TOXENV=py27-pg8000
- TOXENV=py34-pg8000
@@ -66,6 +68,8 @@ matrix:
- env: TOXENV=py27-pygresql
- env: TOXENV=py34-pygresql
- env: TOXENV=py35-pygresql
+ - env: TOXENV=py34-pypostgresql
+ - env: TOXENV=py35-pypostgresql
- env: TOXENV=py26-pg8000
- env: TOXENV=py27-pg8000
- env: TOXENV=py34-pg8000
diff --git a/docs/News.rst b/docs/News.rst
index 40d4ac5..f292559 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -47,6 +47,10 @@ Work in progress
* Extend support for PyGreSQL driver. There are still some problems.
+* Add support for `py-postgresql
+ <https://pypi.python.org/pypi/py-postgresql>`_ PostgreSQL driver. There
+ are major problems with the driver.
+
* Add support for `pg8000 <https://pypi.python.org/pypi/pg8000>`_
PostgreSQL driver. There are still some problems.
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index eab3759..324c116 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -48,10 +48,10 @@ Requirements
Currently SQLObject supports MySQL_ via MySQLdb_ aka MySQL-python (called
mysqlclient_ for Python 3) or `MySQL Connector`_ or oursql_ or PyMySQL_,
-PostgreSQL_ via psycopg2_ or psycopg1 or PyGreSQL_ or pg8000_, SQLite_ via
-PySQLite_, Firebird_ via fdb_ or kinterbasdb_, `MAX DB`_ (also known as SAP
-DB) via sapdb_, Sybase via Sybase_, and `MSSQL Server`_ via pymssql_ (+
-FreeTDS_) or adodbapi_ (Win32).
+PostgreSQL_ via psycopg2_ or psycopg1 or PyGreSQL_ or py-postgresql_ or
+pg8000_, SQLite_ via PySQLite_, Firebird_ via fdb_ or kinterbasdb_, `MAX
+DB`_ (also known as SAP DB) via sapdb_, Sybase via Sybase_, and `MSSQL
+Server`_ via pymssql_ (+ FreeTDS_) or adodbapi_ (Win32).
.. _MySQL: https://www.mysql.com/
.. _MySQLdb: https://sourceforge.net/projects/mysql-python/
@@ -62,6 +62,7 @@ FreeTDS_) or adodbapi_ (Win32).
.. _PostgreSQL: https://postgresql.org
.. _psycopg2: http://initd.org/psycopg/
.. _PyGreSQL: http://www.pygresql.org/
+.. _py-postgresql: https://pypi.python.org/pypi/py-postgresql
.. _pg8000: https://pypi.python.org/pypi/pg8000
.. _SQLite: https://sqlite.org/
.. _PySQLite: https://github.com/ghaering/pysqlite
diff --git a/docs/TODO.rst b/docs/TODO.rst
index 3f343be..047aee1 100644
--- a/docs/TODO.rst
+++ b/docs/TODO.rst
@@ -71,8 +71,6 @@ TODO
* Switch from setuptools to distribute.
-* `py-postgresql driver <https://pypi.python.org/pypi/py-postgresql>`_.
-
* `pyfirebirdsql <https://pypi.python.org/pypi/firebirdsql>`_.
* `dbms <https://pypi.python.org/pypi/dbms>`_ is a DB API wrapper for DB
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index e3e14eb..0ae219e 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -49,6 +49,9 @@ class PostgresConnection(DBAPI):
elif driver == 'pygresql':
import pgdb
self.module = pgdb
+ elif driver in ('py-postgresql', 'pypostgresql'):
+ from postgresql.driver import dbapi20
+ self.module = dbapi20
elif driver == 'pg8000':
import pg8000
self.module = pg8000
@@ -56,7 +59,7 @@ class PostgresConnection(DBAPI):
raise ValueError(
'Unknown PostgreSQL driver "%s", '
'expected psycopg2, psycopg1, '
- 'pygresql or pg8000' % driver)
+ 'pygresql, pg8000 or pypostgresql' % driver)
except ImportError:
pass
else:
@@ -129,6 +132,12 @@ class PostgresConnection(DBAPI):
if sslmode:
dsn.append('sslmode=%s' % sslmode)
dsn = ' '.join(dsn)
+ if driver == 'pypostgresql':
+ if host.startswith('/'):
+ dsn_dict["host"] = dsn_dict["port"] = None
+ dsn_dict["unix"] = host
+ else:
+ dsn_dict["unix"] = None
if driver == 'pg8000':
if host.startswith('/'):
dsn_dict["host"] = None
diff --git a/tox.ini b/tox.ini
index 77d6291..4b545c8 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 1.8
-envlist = {py26,py27}-{mysqldb,oursql},{py34,py35}-mysqlclient,{py26,py27,py34,py35}-{mysql-connector,pymysql,psycopg,pygresql,pg8000,sqlite},{py27,py34}-flake8
+envlist = {py26,py27}-{mysqldb,oursql},{py34,py35}-{mysqlclient,pypostgresql},{py26,py27,py34,py35}-{mysql-connector,pymysql,psycopg,pygresql,pg8000,sqlite},{py27,py34}-flake8
# Base test environment settings
[testenv]
@@ -20,6 +20,7 @@ deps =
pymysql: pymysql
psycopg: psycopg2
pygresql: pygresql
+ pypostgresql: py-postgresql
pg8000: pg8000
passenv = CI TRAVIS TRAVIS_*
# Don't fail or warn on uninstalled commands
@@ -138,6 +139,18 @@ commands = {[pygresql]commands}
[testenv:py35-pygresql]
commands = {[pygresql]commands}
+[pypostgresql]
+commands =
+ createdb -U postgres sqlobject_test
+ pytest --cov=sqlobject -D postgres://postgres:@localhost/sqlobject_test?driver=pypostgresql tests include/tests inheritance/tests versioning/test
+ dropdb -U postgres sqlobject_test
+
+[testenv:py34-pypostgresql]
+commands = {[pypostgresql]commands}
+
+[testenv:py35-pypostgresql]
+commands = {[pypostgresql]commands}
+
[pg8000]
commands =
createdb -U postgres sqlobject_test
http://sourceforge.net/p/sqlobject/sqlobject/ci/6e31c371db753b199a4ddc2f720cb2d1a2b53e42
commit 6e31c371db753b199a4ddc2f720cb2d1a2b53e42
Author: Oleg Broytman <ph...@ph...>
Date: Tue Nov 22 18:44:26 2016 +0300
Add support for pg8000 PostgreSQL driver
diff --git a/.travis.yml b/.travis.yml
index a46110b..ce66e2e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,6 +37,10 @@ env:
- TOXENV=py27-pygresql
- TOXENV=py34-pygresql
- TOXENV=py35-pygresql
+ - TOXENV=py26-pg8000
+ - TOXENV=py27-pg8000
+ - TOXENV=py34-pg8000
+ - TOXENV=py35-pg8000
- TOXENV=py26-sqlite
- TOXENV=py27-sqlite
- TOXENV=py34-sqlite
@@ -62,6 +66,10 @@ matrix:
- env: TOXENV=py27-pygresql
- env: TOXENV=py34-pygresql
- env: TOXENV=py35-pygresql
+ - env: TOXENV=py26-pg8000
+ - env: TOXENV=py27-pg8000
+ - env: TOXENV=py34-pg8000
+ - env: TOXENV=py35-pg8000
fast_finish: true
script: tox -e ${TOXENV}
diff --git a/docs/News.rst b/docs/News.rst
index 1054ffb..40d4ac5 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -47,6 +47,9 @@ Work in progress
* Extend support for PyGreSQL driver. There are still some problems.
+* Add support for `pg8000 <https://pypi.python.org/pypi/pg8000>`_
+ PostgreSQL driver. There are still some problems.
+
Documentation
-------------
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index 73cc0bc..eab3759 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -48,10 +48,10 @@ Requirements
Currently SQLObject supports MySQL_ via MySQLdb_ aka MySQL-python (called
mysqlclient_ for Python 3) or `MySQL Connector`_ or oursql_ or PyMySQL_,
-PostgreSQL_ via psycopg2_ or psycopg1 or PyGreSQL_, SQLite_ via PySQLite_,
-Firebird_ via fdb_ or kinterbasdb_, `MAX DB`_ (also known as SAP DB) via
-sapdb_, Sybase via Sybase_, and `MSSQL Server`_ via pymssql_ (+ FreeTDS_)
-or adodbapi_ (Win32).
+PostgreSQL_ via psycopg2_ or psycopg1 or PyGreSQL_ or pg8000_, SQLite_ via
+PySQLite_, Firebird_ via fdb_ or kinterbasdb_, `MAX DB`_ (also known as SAP
+DB) via sapdb_, Sybase via Sybase_, and `MSSQL Server`_ via pymssql_ (+
+FreeTDS_) or adodbapi_ (Win32).
.. _MySQL: https://www.mysql.com/
.. _MySQLdb: https://sourceforge.net/projects/mysql-python/
@@ -62,6 +62,7 @@ or adodbapi_ (Win32).
.. _PostgreSQL: https://postgresql.org
.. _psycopg2: http://initd.org/psycopg/
.. _PyGreSQL: http://www.pygresql.org/
+.. _pg8000: https://pypi.python.org/pypi/pg8000
.. _SQLite: https://sqlite.org/
.. _PySQLite: https://github.com/ghaering/pysqlite
.. _Firebird: http://www.firebirdsql.org/en/python-driver/
diff --git a/docs/TODO.rst b/docs/TODO.rst
index ca28588..3f343be 100644
--- a/docs/TODO.rst
+++ b/docs/TODO.rst
@@ -71,8 +71,6 @@ TODO
* Switch from setuptools to distribute.
-* `pg8000 driver <https://pypi.python.org/pypi/pg8000>`_.
-
* `py-postgresql driver <https://pypi.python.org/pypi/py-postgresql>`_.
* `pyfirebirdsql <https://pypi.python.org/pypi/firebirdsql>`_.
diff --git a/sqlobject/postgres/pgconnection.py b/sqlobject/postgres/pgconnection.py
index 28b50ac..e3e14eb 100644
--- a/sqlobject/postgres/pgconnection.py
+++ b/sqlobject/postgres/pgconnection.py
@@ -49,10 +49,14 @@ class PostgresConnection(DBAPI):
elif driver == 'pygresql':
import pgdb
self.module = pgdb
+ elif driver == 'pg8000':
+ import pg8000
+ self.module = pg8000
else:
raise ValueError(
'Unknown PostgreSQL driver "%s", '
- 'expected psycopg2, psycopg1 or pygresql' % driver)
+ 'expected psycopg2, psycopg1, '
+ 'pygresql or pg8000' % driver)
except ImportError:
pass
else:
@@ -125,6 +129,14 @@ class PostgresConnection(DBAPI):
if sslmode:
dsn.append('sslmode=%s' % sslmode)
dsn = ' '.join(dsn)
+ if driver == 'pg8000':
+ if host.startswith('/'):
+ dsn_dict["host"] = None
+ dsn_dict["unix_sock"] = host
+ if user is None:
+ dsn_dict["user"] = ''
+ if password is None:
+ dsn_dict["password"] = ''
self.driver = driver
self.dsn = dsn
self.unicodeCols = kw.pop('unicodeCols', False)
diff --git a/tox.ini b/tox.ini
index b466378..77d6291 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 1.8
-envlist = {py26,py27}-{mysqldb,oursql},{py34,py35}-mysqlclient,{py26,py27,py34,py35}-{mysql-connector,pymysql,psycopg,pygresql,sqlite},{py27,py34}-flake8
+envlist = {py26,py27}-{mysqldb,oursql},{py34,py35}-mysqlclient,{py26,py27,py34,py35}-{mysql-connector,pymysql,psycopg,pygresql,pg8000,sqlite},{py27,py34}-flake8
# Base test environment settings
[testenv]
@@ -20,6 +20,7 @@ deps =
pymysql: pymysql
psycopg: psycopg2
pygresql: pygresql
+ pg8000: pg8000
passenv = CI TRAVIS TRAVIS_*
# Don't fail or warn on uninstalled commands
whitelist_externals =
@@ -137,6 +138,24 @@ commands = {[pygresql]commands}
[testenv:py35-pygresql]
commands = {[pygresql]commands}
+[pg8000]
+commands =
+ createdb -U postgres sqlobject_test
+ pytest --cov=sqlobject -D postgres://postgres:@localhost/sqlobject_test?driver=pg8000 tests include/tests inheritance/tests versioning/test
+ dropdb -U postgres sqlobject_test
+
+[testenv:py26-pg8000]
+commands = {[pg8000]commands}
+
+[testenv:py27-pg8000]
+commands = {[pg8000]commands}
+
+[testenv:py34-pg8000]
+commands = {[pg8000]commands}
+
+[testenv:py35-pg8000]
+commands = {[pg8000]commands}
+
# SQLite test environments
[sqlite]
commands =
http://sourceforge.net/p/sqlobject/sqlobject/ci/6113e3abe33afb39d702001fc36d228ec955dcf1
commit 6113e3abe33afb39d702001fc36d228ec955dcf1
Author: Oleg Broytman <ph...@ph...>
Date: Wed Nov 23 06:18:54 2016 +0300
Extend support for PyGreSQL driver
diff --git a/.travis.yml b/.travis.yml
index 79c956b..a46110b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -33,6 +33,10 @@ env:
- TOXENV=py27-psycopg
- TOXENV=py34-psycopg
- TOXENV=py35-psycopg
+ - TOXENV=py26-pygresql
+ - TOXENV=py27-pygresql
+ - TOXENV=py34-pygresql
+ - TOXENV=py35-pygresql
- TOXENV=py26-sqlite
- TOXENV=py27-sqlite
- TOXENV=py34-sqlite
@@ -54,6 +58,10 @@ matrix:
- env: TOXENV=py27-pymysql
- env: TOXENV=py34-pymysql
- env: TOXENV=py35-pymysql
+ - env: TOXENV=py26-pygresql
+ - env: TOXENV=py27-pygresql
+ - env: TOXENV=py34-pygresql
+ - env: TOXENV=py35-pygresql
fast_finish: true
script: tox -e ${TOXENV}
diff --git a/docs/News.rst b/docs/News.rst
index 7c5ab0e..1054ffb 100644
--- a/docs/News.rst
+++ b/docs/News.rst
@@ -45,6 +45,8 @@ Work in progress
python mysql interface; most tests are passed, but there are still
problems).
+* Extend support for PyGreSQL driver. There are still some problems.
+
Documentation
-------------
diff --git a/docs/SQLObject.rst b/docs/SQLObject.rst
index d86305c..73cc0bc 100644
--- a/docs/SQLObject.rst
+++ b/docs/SQLObject.rst
@@ -47,11 +47,11 @@ Requirements
============
... 331 lines suppressed ...
hooks/post-receive
--
SQLObject development repository
|