[Python-modules-commits] [sqlobject] 01/20: Import sqlobject_3.1.0+dfsg.orig.tar.gz
Neil Muller
drnlmza-guest at moszumanska.debian.org
Thu Sep 1 20:31:39 UTC 2016
This is an automated email from the git hooks/post-receive script.
drnlmza-guest pushed a commit to branch master
in repository sqlobject.
commit d2df5da8629c9934b60ab99d1632f0494c56e00a
Author: Neil Muller <drnlmuller+debian at gmail.com>
Date: Thu Sep 1 10:55:54 2016 +0200
Import sqlobject_3.1.0+dfsg.orig.tar.gz
---
.travis.yml | 19 +-
MANIFEST.in | 13 +-
PKG-INFO | 6 +-
README.txt => README.rst | 4 +-
SQLObject.egg-info/PKG-INFO | 6 +-
SQLObject.egg-info/SOURCES.txt | 113 +-
SQLObject.egg-info/requires.txt | 2 +-
circle.yml | 9 +
debian/docs | 2 +-
docs/.gitignore | 1 +
docs/{Authors.txt => Authors.rst} | 1 +
docs/DeveloperGuide.rst | 298 ++
docs/DeveloperGuide.txt | 206 --
docs/{FAQ.txt => FAQ.rst} | 0
docs/{Inheritance.txt => Inheritance.rst} | 10 +-
docs/News.rst | 92 +
docs/{News1.txt => News1.rst} | 0
docs/{News2.txt => News2.rst} | 18 +-
docs/{News3.txt => News3.rst} | 2 +-
docs/{News4.txt => News4.rst} | 0
docs/{News.txt => News5.rst} | 27 -
docs/{Python3.txt => Python3.rst} | 9 +-
docs/{SQLBuilder.txt => SQLBuilder.rst} | 0
docs/{SQLObject.txt => SQLObject.rst} | 61 +-
docs/{SelectResults.txt => SelectResults.rst} | 0
docs/{TODO.txt => TODO.rst} | 9 +-
docs/{Versioning.txt => Versioning.rst} | 2 +
docs/{Views.txt => Views.rst} | 0
docs/{community.txt => community.rst} | 0
docs/{download.txt => download.rst} | 15 +-
docs/html/Authors.html | 1 +
docs/html/DeveloperGuide.html | 118 +-
docs/html/Inheritance.html | 27 +-
docs/html/News.html | 740 +---
docs/html/News2.html | 17 +-
docs/html/News3.html | 2 +-
docs/html/{News.html => News5.html} | 237 +-
docs/html/Python3.html | 1 +
docs/html/SQLObject.html | 296 +-
docs/html/TODO.html | 9 +-
docs/html/Versioning.html | 24 +-
docs/html/class-sqlobject.col.BLOBCol.html | 10 +-
docs/html/class-sqlobject.col.BigIntCol.html | 10 +-
docs/html/class-sqlobject.col.BoolCol.html | 10 +-
docs/html/class-sqlobject.col.Col.html | 10 +-
docs/html/class-sqlobject.col.CurrencyCol.html | 10 +-
docs/html/class-sqlobject.col.DateCol.html | 10 +-
docs/html/class-sqlobject.col.DateTimeCol.html | 12 +-
docs/html/class-sqlobject.col.DecimalCol.html | 10 +-
.../html/class-sqlobject.col.DecimalStringCol.html | 10 +-
docs/html/class-sqlobject.col.EnumCol.html | 10 +-
docs/html/class-sqlobject.col.FloatCol.html | 10 +-
docs/html/class-sqlobject.col.ForeignKey.html | 10 +-
docs/html/class-sqlobject.col.IntCol.html | 10 +-
...umCol.html => class-sqlobject.col.JSONCol.html} | 26 +-
...tCol.html => class-sqlobject.col.JsonbCol.html} | 26 +-
docs/html/class-sqlobject.col.KeyCol.html | 10 +-
docs/html/class-sqlobject.col.MediumIntCol.html | 10 +-
docs/html/class-sqlobject.col.PickleCol.html | 10 +-
docs/html/class-sqlobject.col.SOBLOBCol.html | 40 +-
docs/html/class-sqlobject.col.SOBigIntCol.html | 42 +-
docs/html/class-sqlobject.col.SOBoolCol.html | 42 +-
docs/html/class-sqlobject.col.SOCol.html | 42 +-
docs/html/class-sqlobject.col.SOCurrencyCol.html | 40 +-
docs/html/class-sqlobject.col.SODateCol.html | 40 +-
docs/html/class-sqlobject.col.SODateTimeCol.html | 40 +-
docs/html/class-sqlobject.col.SODecimalCol.html | 40 +-
.../class-sqlobject.col.SODecimalStringCol.html | 40 +-
docs/html/class-sqlobject.col.SOEnumCol.html | 40 +-
docs/html/class-sqlobject.col.SOFloatCol.html | 42 +-
docs/html/class-sqlobject.col.SOForeignKey.html | 50 +-
docs/html/class-sqlobject.col.SOIntCol.html | 42 +-
...Col.html => class-sqlobject.col.SOJSONCol.html} | 90 +-
...ol.html => class-sqlobject.col.SOJsonbCol.html} | 98 +-
docs/html/class-sqlobject.col.SOKeyCol.html | 40 +-
docs/html/class-sqlobject.col.SOMediumIntCol.html | 42 +-
docs/html/class-sqlobject.col.SOPickleCol.html | 40 +-
docs/html/class-sqlobject.col.SOSetCol.html | 40 +-
docs/html/class-sqlobject.col.SOSmallIntCol.html | 42 +-
docs/html/class-sqlobject.col.SOStringCol.html | 40 +-
docs/html/class-sqlobject.col.SOStringLikeCol.html | 40 +-
docs/html/class-sqlobject.col.SOTimeCol.html | 40 +-
docs/html/class-sqlobject.col.SOTimedeltaCol.html | 42 +-
docs/html/class-sqlobject.col.SOTimestampCol.html | 40 +-
docs/html/class-sqlobject.col.SOTinyIntCol.html | 42 +-
docs/html/class-sqlobject.col.SOUnicodeCol.html | 40 +-
...Col.html => class-sqlobject.col.SOUuidCol.html} | 98 +-
docs/html/class-sqlobject.col.SetCol.html | 10 +-
docs/html/class-sqlobject.col.SmallIntCol.html | 10 +-
docs/html/class-sqlobject.col.StringCol.html | 10 +-
docs/html/class-sqlobject.col.TimeCol.html | 10 +-
docs/html/class-sqlobject.col.TimedeltaCol.html | 10 +-
docs/html/class-sqlobject.col.TimestampCol.html | 10 +-
docs/html/class-sqlobject.col.TinyIntCol.html | 10 +-
docs/html/class-sqlobject.col.UnicodeCol.html | 10 +-
...umCol.html => class-sqlobject.col.UuidCol.html} | 26 +-
...class-sqlobject.dbconnection.ConnectionHub.html | 2 +-
docs/html/class-sqlobject.dberrors.DataError.html | 4 +-
.../class-sqlobject.dberrors.DatabaseError.html | 4 +-
...ass-sqlobject.dberrors.DuplicateEntryError.html | 4 +-
docs/html/class-sqlobject.dberrors.Error.html | 4 +-
.../class-sqlobject.dberrors.IntegrityError.html | 4 +-
.../class-sqlobject.dberrors.InterfaceError.html | 4 +-
.../class-sqlobject.dberrors.InternalError.html | 4 +-
...class-sqlobject.dberrors.NotSupportedError.html | 4 +-
.../class-sqlobject.dberrors.OperationalError.html | 4 +-
.../class-sqlobject.dberrors.ProgrammingError.html | 4 +-
docs/html/class-sqlobject.dberrors.Warning.html | 4 +-
...bird.firebirdconnection.FirebirdConnection.html | 2 +-
.../class-sqlobject.include.hashcol.HashCol.html | 4 +-
...object.include.tests.test_hashcol.HashTest.html | 6 +-
docs/html/class-sqlobject.index.DatabaseIndex.html | 2 +-
docs/html/class-sqlobject.joins.MultipleJoin.html | 4 +-
docs/html/class-sqlobject.joins.RelatedJoin.html | 4 +-
.../class-sqlobject.joins.SQLMultipleJoin.html | 4 +-
.../html/class-sqlobject.joins.SQLRelatedJoin.html | 4 +-
docs/html/class-sqlobject.joins.SingleJoin.html | 4 +-
docs/html/class-sqlobject.main.SQLObject.html | 4 +-
.../class-sqlobject.manager.command.Command.html | 2 +-
...ss-sqlobject.manager.command.CommandCreate.html | 4 +-
...lass-sqlobject.manager.command.CommandDrop.html | 4 +-
...s-sqlobject.manager.command.CommandExecute.html | 4 +-
...lass-sqlobject.manager.command.CommandHelp.html | 4 +-
...lass-sqlobject.manager.command.CommandList.html | 4 +-
...ss-sqlobject.manager.command.CommandRecord.html | 6 +-
...class-sqlobject.manager.command.CommandSQL.html | 4 +-
...ss-sqlobject.manager.command.CommandStatus.html | 4 +-
...s-sqlobject.manager.command.CommandUpgrade.html | 8 +-
...ject.manager.command.SQLObjectVersionTable.html | 4 +-
...ject.mssql.mssqlconnection.MSSQLConnection.html | 2 +-
docs/html/class-sqlobject.sqlbuilder.Delete.html | 2 +-
docs/html/class-sqlobject.sqlbuilder.Insert.html | 2 +-
docs/html/class-sqlobject.sqlbuilder.Replace.html | 2 +-
...ss-sqlobject.sqlbuilder.SQLJoinConditional.html | 9 +-
docs/html/class-sqlobject.sqlbuilder.Select.html | 2 +-
docs/html/class-sqlobject.sqlbuilder.Update.html | 2 +-
.../class-sqlobject.sresults.SelectResults.html | 4 +-
docs/html/class-sqlobject.views.ViewSQLObject.html | 6 +-
.../class-sqlobject.views.ViewSQLObjectField.html | 10 +-
.../class-sqlobject.views.ViewSQLObjectTable.html | 4 +-
docs/html/download.html | 13 +-
docs/html/index.html | 11 +-
docs/html/links.html | 31 +-
docs/html/module-index.html | 12 +-
docs/html/module-sqlobject-index.html | 2882 +++++++---------
docs/html/module-sqlobject.__version__-index.html | 7 +
docs/html/module-sqlobject.__version__.html | 6 +-
docs/html/module-sqlobject.classregistry.html | 2 +-
docs/html/module-sqlobject.col-index.html | 1083 +++---
docs/html/module-sqlobject.col.html | 174 +-
docs/html/module-sqlobject.converters.html | 2 +-
docs/html/module-sqlobject.dbconnection.html | 2 +-
docs/html/module-sqlobject.dberrors-index.html | 22 +-
docs/html/module-sqlobject.dberrors.html | 26 +-
docs/html/module-sqlobject.html | 10 +-
docs/html/module-sqlobject.include-index.html | 72 +-
.../html/module-sqlobject.include.tests-index.html | 72 +-
...sqlobject.include.tests.test_hashcol-index.html | 72 +-
...odule-sqlobject.include.tests.test_hashcol.html | 78 +-
docs/html/module-sqlobject.joins-index.html | 21 -
docs/html/module-sqlobject.main.html | 6 +-
docs/html/module-sqlobject.manager-index.html | 31 +
.../module-sqlobject.manager.command-index.html | 35 -
docs/html/module-sqlobject.manager.command.html | 2 +-
docs/html/module-sqlobject.sqlbuilder-index.html | 536 ++-
docs/html/module-sqlobject.sqlbuilder.html | 8 +-
docs/html/module-sqlobject.views-index.html | 74 +-
docs/html/module-sqlobject.views.html | 70 +-
docs/html/sqlobject/__version__.py.html | 4 +-
docs/html/sqlobject/col.py.html | 3628 ++++++++++----------
docs/html/sqlobject/compat.py.html | 2 +-
docs/html/sqlobject/dberrors.py.html | 83 +-
docs/html/sqlobject/main.py.html | 4 +-
docs/html/sqlobject/sqlbuilder.py.html | 8 +-
docs/html/sqlobject/views.py.html | 288 +-
docs/{index.txt => index.rst} | 11 +-
docs/{links.txt => links.rst} | 32 +-
docs/rebuild | 6 +-
docs/{sqlobject-admin.txt => sqlobject-admin.rst} | 0
docs/test.py | 3 +-
ez_setup.py | 400 ++-
requirements.txt | 5 +
requirements_dev.txt | 5 +
requirements_docs.txt | 5 +
setup.cfg | 15 +-
setup.py | 16 +-
sqlobject/.coveragerc | 11 +
sqlobject/.gitignore | 2 +
sqlobject/__version__.py | 4 +-
sqlobject/col.py | 115 +-
sqlobject/compat.py | 2 +-
sqlobject/dberrors.py | 5 +-
sqlobject/include/tests/__init__.py | 1 +
sqlobject/include/tests/test_hashcol.py | 84 +
sqlobject/inheritance/tests/testDestroyCascade.py | 6 +-
sqlobject/inheritance/tests/test_aggregates.py | 6 +-
sqlobject/inheritance/tests/test_asdict.py | 6 +-
.../inheritance/tests/test_deep_inheritance.py | 4 +-
sqlobject/inheritance/tests/test_foreignKey.py | 4 +-
sqlobject/inheritance/tests/test_indexes.py | 4 +-
sqlobject/inheritance/tests/test_inheritance.py | 4 +-
.../inheritance/tests/test_inheritance_tree.py | 6 +-
sqlobject/main.py | 4 +-
sqlobject/sqlbuilder.py | 8 +-
sqlobject/tests/dbtest.py | 4 +-
sqlobject/tests/test_ForeignKey.py | 6 +-
sqlobject/tests/test_NoneValuedResultItem.py | 4 +-
sqlobject/tests/test_SQLMultipleJoin.py | 5 +-
sqlobject/tests/test_SQLRelatedJoin.py | 4 +-
sqlobject/tests/test_SingleJoin.py | 4 +-
sqlobject/tests/test_aggregates.py | 4 +-
sqlobject/tests/test_aliases.py | 6 +-
sqlobject/tests/test_asdict.py | 4 +-
sqlobject/tests/test_auto.py | 6 +-
sqlobject/tests/test_basic.py | 7 +-
sqlobject/tests/test_blob.py | 4 +-
sqlobject/tests/test_cache.py | 4 +-
sqlobject/tests/test_class_hash.py | 4 +-
sqlobject/tests/test_columns_order.py | 2 +-
sqlobject/tests/test_combining_joins.py | 4 +-
sqlobject/tests/test_comparison.py | 4 +-
sqlobject/tests/test_complex_sorting.py | 4 +-
sqlobject/tests/test_constraints.py | 5 +-
sqlobject/tests/test_create_drop.py | 5 +-
sqlobject/tests/test_csvexport.py | 6 +-
sqlobject/tests/test_cyclic_reference.py | 5 +-
sqlobject/tests/test_datetime.py | 22 +-
sqlobject/tests/test_decimal.py | 15 +-
sqlobject/tests/test_declarative.py | 2 +-
sqlobject/tests/test_default_style.py | 5 +-
sqlobject/tests/test_delete.py | 4 +-
sqlobject/tests/test_distinct.py | 4 +-
sqlobject/tests/test_empty.py | 4 +-
sqlobject/tests/test_enum.py | 4 +-
sqlobject/tests/test_events.py | 5 +-
sqlobject/tests/test_exceptions.py | 6 +-
sqlobject/tests/test_expire.py | 4 +-
sqlobject/tests/test_groupBy.py | 4 +-
sqlobject/tests/test_identity.py | 4 +-
sqlobject/tests/test_indexes.py | 8 +-
sqlobject/tests/test_inheritance.py | 4 +-
sqlobject/tests/test_joins.py | 5 +-
sqlobject/tests/test_joins_conditional.py | 7 +-
sqlobject/tests/test_jsonbcol.py | 53 +
sqlobject/tests/test_jsoncol.py | 34 +
sqlobject/tests/test_lazy.py | 4 +-
sqlobject/tests/test_mysql.py | 4 +-
sqlobject/tests/test_new_joins.py | 4 +-
sqlobject/tests/test_paste.py | 4 +-
sqlobject/tests/test_perConnection.py | 4 +-
sqlobject/tests/test_pickle.py | 4 +-
sqlobject/tests/test_picklecol.py | 4 +-
sqlobject/tests/test_postgres.py | 4 +-
sqlobject/tests/test_reparent_sqlmeta.py | 4 +-
sqlobject/tests/test_schema.py | 4 +-
sqlobject/tests/test_select.py | 7 +-
sqlobject/tests/test_select_through.py | 18 +-
sqlobject/tests/test_setters.py | 4 +-
sqlobject/tests/test_slice.py | 4 +-
sqlobject/tests/test_sorting.py | 4 +-
sqlobject/tests/test_sqlbuilder.py | 7 +-
sqlobject/tests/test_sqlbuilder_dbspecific.py | 7 +-
sqlobject/tests/test_sqlbuilder_importproxy.py | 7 +-
sqlobject/tests/test_sqlbuilder_joins_instances.py | 25 +-
sqlobject/tests/test_sqlite.py | 4 +-
sqlobject/tests/test_sqlmeta_idName.py | 4 +-
sqlobject/tests/test_sqlobject_admin.py | 2 +-
sqlobject/tests/test_string_id.py | 4 +-
sqlobject/tests/test_style.py | 5 +-
sqlobject/tests/test_subqueries.py | 7 +-
sqlobject/tests/test_transactions.py | 4 +-
sqlobject/tests/test_unicode.py | 4 +-
sqlobject/tests/test_uuidcol.py | 28 +
sqlobject/tests/test_validation.py | 5 +-
sqlobject/tests/test_views.py | 31 +-
sqlobject/versioning/test/test_version.py | 4 +-
sqlobject/views.py | 4 +-
sqlobject/wsgi_middleware.py | 10 +-
tox.ini | 63 +-
279 files changed, 7544 insertions(+), 7412 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 9b7db21..174ee10 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,5 +1,13 @@
+# Prefer docker container with setuid/sudo
+sudo: required
+
language: python
+cache: pip
+
+addons:
+ postgresql: "9.4"
+
env:
- TOXENV=py26-mysql
- TOXENV=py27-mysql
@@ -13,9 +21,18 @@ env:
- TOXENV=py27-flake8
- TOXENV=py34-flake8
-install: pip install tox
+before_install:
+ - sudo apt-get -qq update
+ - sudo apt-get install -y python-egenix-mxdatetime python-mysqldb python-psycopg2
+
+install: pip install tox coveralls codecov
matrix:
fast_finish: true
script: tox -e ${TOXENV}
+
+after_success:
+ - cd sqlobject
+ - coveralls
+ - codecov
diff --git a/MANIFEST.in b/MANIFEST.in
index 3c13468..a0e2614 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,11 +1,14 @@
-include .gitignore docs/.gitignore
+global-include .gitignore
include MANIFEST.in ez_setup.py
-include .travis.yml tox.ini
-include *.txt docs/LICENSE docs/*.txt docs/rebuild
+include .travis.yml circle.yml tox.ini
+include *.rst *.txt docs/LICENSE docs/*.rst
+include docs/rebuild
+include sqlobject/.coveragerc
include sqlobject/maxdb/readme.txt
recursive-include debian *
-recursive-include docs *.css *.html *.js *.gif *.py
+recursive-include docs *.css *.html *.js *.gif *.png *.py *.txt
recursive-include sqlobject/tests *.py
+recursive-include sqlobject/include/tests *.py
recursive-include sqlobject/inheritance/tests *.py
recursive-include sqlobject/versioning/test *.py
-
+prune docs/_build
diff --git a/PKG-INFO b/PKG-INFO
index ac5c4af..2575463 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
Metadata-Version: 1.1
Name: SQLObject
-Version: 3.0.0
+Version: 3.1.0
Summary: Object-Relational Manager, aka database wrapper
Home-page: http://sqlobject.org/devel/
Author: Oleg Broytman
Author-email: phd at phdru.name
License: LGPL
-Download-URL: https://pypi.python.org/pypi/SQLObject/3.0.0
+Download-URL: https://pypi.python.org/pypi/SQLObject/3.1.0
Description: SQLObject is a popular *Object Relational Manager* for providing an
object interface to your database, with tables as classes, rows as
instances, and columns as attributes.
@@ -38,3 +38,5 @@ Classifier: Programming Language :: Python :: 3.4
Classifier: Topic :: Database
Classifier: Topic :: Database :: Front-Ends
Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Requires: FormEncode
+Requires: PyDispatcher
diff --git a/README.txt b/README.rst
similarity index 85%
rename from README.txt
rename to README.rst
index 2fb247d..86633a5 100644
--- a/README.txt
+++ b/README.rst
@@ -1,4 +1,4 @@
-SQLObject 3.0.0
+SQLObject 3.1.0
===============
Thanks for looking at SQLObject. SQLObject is an object-relational
@@ -10,4 +10,4 @@ through the `psycopg` package, SQLite, Firebird, MaxDB (SAP DB), MS SQL
Sybase and Rdbhost. Python 2.6, 2.7 or 3.4+ is required.
For more information please see the documentation in
-docs/SQLObject.txt, or online at http://sqlobject.org/
+`<docs/SQLObject.rst>`_, or online at http://sqlobject.org/
diff --git a/SQLObject.egg-info/PKG-INFO b/SQLObject.egg-info/PKG-INFO
index ac5c4af..2575463 100644
--- a/SQLObject.egg-info/PKG-INFO
+++ b/SQLObject.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
Metadata-Version: 1.1
Name: SQLObject
-Version: 3.0.0
+Version: 3.1.0
Summary: Object-Relational Manager, aka database wrapper
Home-page: http://sqlobject.org/devel/
Author: Oleg Broytman
Author-email: phd at phdru.name
License: LGPL
-Download-URL: https://pypi.python.org/pypi/SQLObject/3.0.0
+Download-URL: https://pypi.python.org/pypi/SQLObject/3.1.0
Description: SQLObject is a popular *Object Relational Manager* for providing an
object interface to your database, with tables as classes, rows as
instances, and columns as attributes.
@@ -38,3 +38,5 @@ Classifier: Programming Language :: Python :: 3.4
Classifier: Topic :: Database
Classifier: Topic :: Database :: Front-Ends
Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Requires: FormEncode
+Requires: PyDispatcher
diff --git a/SQLObject.egg-info/SOURCES.txt b/SQLObject.egg-info/SOURCES.txt
index 82f2cb3..2c9f813 100644
--- a/SQLObject.egg-info/SOURCES.txt
+++ b/SQLObject.egg-info/SOURCES.txt
@@ -1,8 +1,12 @@
.gitignore
.travis.yml
MANIFEST.in
-README.txt
+README.rst
+circle.yml
ez_setup.py
+requirements.txt
+requirements_dev.txt
+requirements_docs.txt
setup.cfg
setup.py
tox.ini
@@ -19,31 +23,32 @@ debian/docs
debian/examples
debian/rules
docs/.gitignore
-docs/Authors.txt
-docs/DeveloperGuide.txt
-docs/FAQ.txt
-docs/Inheritance.txt
+docs/Authors.rst
+docs/DeveloperGuide.rst
+docs/FAQ.rst
+docs/Inheritance.rst
docs/LICENSE
-docs/News.txt
-docs/News1.txt
-docs/News2.txt
-docs/News3.txt
-docs/News4.txt
-docs/Python3.txt
-docs/SQLBuilder.txt
-docs/SQLObject.txt
-docs/SelectResults.txt
-docs/TODO.txt
-docs/Versioning.txt
-docs/Views.txt
-docs/community.txt
+docs/News.rst
+docs/News1.rst
+docs/News2.rst
+docs/News3.rst
+docs/News4.rst
+docs/News5.rst
+docs/Python3.rst
+docs/SQLBuilder.rst
+docs/SQLObject.rst
+docs/SelectResults.rst
+docs/TODO.rst
+docs/Versioning.rst
+docs/Views.rst
+docs/community.rst
docs/default.css
-docs/download.txt
-docs/index.txt
+docs/download.rst
+docs/index.rst
docs/interface.py
-docs/links.txt
+docs/links.rst
docs/rebuild
-docs/sqlobject-admin.txt
+docs/sqlobject-admin.rst
docs/test.py
docs/europython/europython_sqlobj.py
docs/europython/main.css
@@ -57,6 +62,7 @@ docs/html/News1.html
docs/html/News2.html
docs/html/News3.html
docs/html/News4.html
+docs/html/News5.html
docs/html/Python3.html
docs/html/SQLBuilder.html
docs/html/SQLObject.html
@@ -82,6 +88,8 @@ docs/html/class-sqlobject.col.EnumCol.html
docs/html/class-sqlobject.col.FloatCol.html
docs/html/class-sqlobject.col.ForeignKey.html
docs/html/class-sqlobject.col.IntCol.html
+docs/html/class-sqlobject.col.JSONCol.html
+docs/html/class-sqlobject.col.JsonbCol.html
docs/html/class-sqlobject.col.KeyCol.html
docs/html/class-sqlobject.col.MediumIntCol.html
docs/html/class-sqlobject.col.PickleCol.html
@@ -98,6 +106,8 @@ docs/html/class-sqlobject.col.SOEnumCol.html
docs/html/class-sqlobject.col.SOFloatCol.html
docs/html/class-sqlobject.col.SOForeignKey.html
docs/html/class-sqlobject.col.SOIntCol.html
+docs/html/class-sqlobject.col.SOJSONCol.html
+docs/html/class-sqlobject.col.SOJsonbCol.html
docs/html/class-sqlobject.col.SOKeyCol.html
docs/html/class-sqlobject.col.SOMediumIntCol.html
docs/html/class-sqlobject.col.SOPickleCol.html
@@ -110,6 +120,7 @@ docs/html/class-sqlobject.col.SOTimedeltaCol.html
docs/html/class-sqlobject.col.SOTimestampCol.html
docs/html/class-sqlobject.col.SOTinyIntCol.html
docs/html/class-sqlobject.col.SOUnicodeCol.html
+docs/html/class-sqlobject.col.SOUuidCol.html
docs/html/class-sqlobject.col.SetCol.html
docs/html/class-sqlobject.col.SmallIntCol.html
docs/html/class-sqlobject.col.StringCol.html
@@ -118,6 +129,7 @@ docs/html/class-sqlobject.col.TimedeltaCol.html
docs/html/class-sqlobject.col.TimestampCol.html
docs/html/class-sqlobject.col.TinyIntCol.html
docs/html/class-sqlobject.col.UnicodeCol.html
+docs/html/class-sqlobject.col.UuidCol.html
docs/html/class-sqlobject.constraints.BadValue.html
docs/html/class-sqlobject.constraints.InList.html
docs/html/class-sqlobject.constraints.MaxLength.html
@@ -409,6 +421,8 @@ docs/presentation-2004-11/ui/slides.css
docs/presentation-2004-11/ui/slides.js
scripts/sqlobject-admin
scripts/sqlobject-convertOldURI
+sqlobject/.coveragerc
+sqlobject/.gitignore
sqlobject/__init__.py
sqlobject/__version__.py
sqlobject/boundattributes.py
@@ -431,29 +445,30 @@ sqlobject/sresults.py
sqlobject/styles.py
sqlobject/views.py
sqlobject/wsgi_middleware.py
-sqlobject/../docs/Authors.txt
-sqlobject/../docs/DeveloperGuide.txt
-sqlobject/../docs/FAQ.txt
-sqlobject/../docs/Inheritance.txt
+sqlobject/../docs/Authors.rst
+sqlobject/../docs/DeveloperGuide.rst
+sqlobject/../docs/FAQ.rst
+sqlobject/../docs/Inheritance.rst
sqlobject/../docs/LICENSE
-sqlobject/../docs/News.txt
-sqlobject/../docs/News1.txt
-sqlobject/../docs/News2.txt
-sqlobject/../docs/News3.txt
-sqlobject/../docs/News4.txt
-sqlobject/../docs/Python3.txt
-sqlobject/../docs/SQLBuilder.txt
-sqlobject/../docs/SQLObject.txt
-sqlobject/../docs/SelectResults.txt
-sqlobject/../docs/TODO.txt
-sqlobject/../docs/Versioning.txt
-sqlobject/../docs/Views.txt
-sqlobject/../docs/community.txt
+sqlobject/../docs/News.rst
+sqlobject/../docs/News1.rst
+sqlobject/../docs/News2.rst
+sqlobject/../docs/News3.rst
+sqlobject/../docs/News4.rst
+sqlobject/../docs/News5.rst
+sqlobject/../docs/Python3.rst
+sqlobject/../docs/SQLBuilder.rst
+sqlobject/../docs/SQLObject.rst
+sqlobject/../docs/SelectResults.rst
+sqlobject/../docs/TODO.rst
+sqlobject/../docs/Versioning.rst
+sqlobject/../docs/Views.rst
+sqlobject/../docs/community.rst
sqlobject/../docs/default.css
-sqlobject/../docs/download.txt
-sqlobject/../docs/index.txt
-sqlobject/../docs/links.txt
-sqlobject/../docs/sqlobject-admin.txt
+sqlobject/../docs/download.rst
+sqlobject/../docs/index.rst
+sqlobject/../docs/links.rst
+sqlobject/../docs/sqlobject-admin.rst
sqlobject/../docs/html/Authors.html
sqlobject/../docs/html/DeveloperGuide.html
sqlobject/../docs/html/FAQ.html
@@ -463,6 +478,7 @@ sqlobject/../docs/html/News1.html
sqlobject/../docs/html/News2.html
sqlobject/../docs/html/News3.html
sqlobject/../docs/html/News4.html
+sqlobject/../docs/html/News5.html
sqlobject/../docs/html/Python3.html
sqlobject/../docs/html/SQLBuilder.html
sqlobject/../docs/html/SQLObject.html
@@ -488,6 +504,8 @@ sqlobject/../docs/html/class-sqlobject.col.EnumCol.html
sqlobject/../docs/html/class-sqlobject.col.FloatCol.html
sqlobject/../docs/html/class-sqlobject.col.ForeignKey.html
sqlobject/../docs/html/class-sqlobject.col.IntCol.html
+sqlobject/../docs/html/class-sqlobject.col.JSONCol.html
+sqlobject/../docs/html/class-sqlobject.col.JsonbCol.html
sqlobject/../docs/html/class-sqlobject.col.KeyCol.html
sqlobject/../docs/html/class-sqlobject.col.MediumIntCol.html
sqlobject/../docs/html/class-sqlobject.col.PickleCol.html
@@ -504,6 +522,8 @@ sqlobject/../docs/html/class-sqlobject.col.SOEnumCol.html
sqlobject/../docs/html/class-sqlobject.col.SOFloatCol.html
sqlobject/../docs/html/class-sqlobject.col.SOForeignKey.html
sqlobject/../docs/html/class-sqlobject.col.SOIntCol.html
+sqlobject/../docs/html/class-sqlobject.col.SOJSONCol.html
+sqlobject/../docs/html/class-sqlobject.col.SOJsonbCol.html
sqlobject/../docs/html/class-sqlobject.col.SOKeyCol.html
sqlobject/../docs/html/class-sqlobject.col.SOMediumIntCol.html
sqlobject/../docs/html/class-sqlobject.col.SOPickleCol.html
@@ -516,6 +536,7 @@ sqlobject/../docs/html/class-sqlobject.col.SOTimedeltaCol.html
sqlobject/../docs/html/class-sqlobject.col.SOTimestampCol.html
sqlobject/../docs/html/class-sqlobject.col.SOTinyIntCol.html
sqlobject/../docs/html/class-sqlobject.col.SOUnicodeCol.html
+sqlobject/../docs/html/class-sqlobject.col.SOUuidCol.html
sqlobject/../docs/html/class-sqlobject.col.SetCol.html
sqlobject/../docs/html/class-sqlobject.col.SmallIntCol.html
sqlobject/../docs/html/class-sqlobject.col.StringCol.html
@@ -524,6 +545,7 @@ sqlobject/../docs/html/class-sqlobject.col.TimedeltaCol.html
sqlobject/../docs/html/class-sqlobject.col.TimestampCol.html
sqlobject/../docs/html/class-sqlobject.col.TinyIntCol.html
sqlobject/../docs/html/class-sqlobject.col.UnicodeCol.html
+sqlobject/../docs/html/class-sqlobject.col.UuidCol.html
sqlobject/../docs/html/class-sqlobject.constraints.BadValue.html
sqlobject/../docs/html/class-sqlobject.constraints.InList.html
sqlobject/../docs/html/class-sqlobject.constraints.MaxLength.html
@@ -807,6 +829,8 @@ sqlobject/firebird/__init__.py
sqlobject/firebird/firebirdconnection.py
sqlobject/include/__init__.py
sqlobject/include/hashcol.py
+sqlobject/include/tests/__init__.py
+sqlobject/include/tests/test_hashcol.py
sqlobject/inheritance/__init__.py
sqlobject/inheritance/iteration.py
sqlobject/inheritance/tests/__init__.py
@@ -877,6 +901,8 @@ sqlobject/tests/test_indexes.py
sqlobject/tests/test_inheritance.py
sqlobject/tests/test_joins.py
sqlobject/tests/test_joins_conditional.py
+sqlobject/tests/test_jsonbcol.py
+sqlobject/tests/test_jsoncol.py
sqlobject/tests/test_lazy.py
sqlobject/tests/test_md5.py
sqlobject/tests/test_mysql.py
@@ -906,6 +932,7 @@ sqlobject/tests/test_style.py
sqlobject/tests/test_subqueries.py
sqlobject/tests/test_transactions.py
sqlobject/tests/test_unicode.py
+sqlobject/tests/test_uuidcol.py
sqlobject/tests/test_validation.py
sqlobject/tests/test_views.py
sqlobject/util/__init__.py
diff --git a/SQLObject.egg-info/requires.txt b/SQLObject.egg-info/requires.txt
index 31733c8..424b6c5 100644
--- a/SQLObject.egg-info/requires.txt
+++ b/SQLObject.egg-info/requires.txt
@@ -1,4 +1,4 @@
-FormEncode>=1.1.1
+FormEncode>=1.1.1,!=1.3.0
PyDispatcher>=2.0.4
[firebird]
diff --git a/circle.yml b/circle.yml
new file mode 100644
index 0000000..3400eee
--- /dev/null
+++ b/circle.yml
@@ -0,0 +1,9 @@
+dependencies:
+ cache_directories:
+ - ~/.cache/pip
+ override:
+ - sudo apt-get -qq update
+ - sudo apt-get install -y python-egenix-mxdatetime python-mysqldb python-psycopg2
+ - pip install -U pip
+ - pip install -U tox tox-pyenv
+ - pyenv local 2.6.8 2.7.10 3.4.3
diff --git a/debian/docs b/debian/docs
index 09b66e4..1a04c5f 100644
--- a/debian/docs
+++ b/debian/docs
@@ -1,2 +1,2 @@
-README.txt
+README.rst
docs/
diff --git a/docs/.gitignore b/docs/.gitignore
index 5937020..cf1f956 100644
--- a/docs/.gitignore
+++ b/docs/.gitignore
@@ -1,3 +1,4 @@
/*.html
+/_build/
/data.db
/html
diff --git a/docs/Authors.txt b/docs/Authors.rst
similarity index 97%
rename from docs/Authors.txt
rename to docs/Authors.rst
index 5dbc625..cf35dfc 100644
--- a/docs/Authors.txt
+++ b/docs/Authors.rst
@@ -33,6 +33,7 @@ Contributions have been made by:
* Lukasz Dobrzanski <lukasz.m.dobrzanski at gmail.com>
* Gregor Horvath <gh at gregor-horvath.com>
* Nathan Edwards <nje5 at georgetown.edu>
+* Lutz Steinborn <l.steinborn at 4c-gmbh.de>
* Oleg Broytman <phd at phdru.name>
.. image:: https://sourceforge.net/sflogo.php?group_id=74338&type=10
diff --git a/docs/DeveloperGuide.rst b/docs/DeveloperGuide.rst
new file mode 100644
index 0000000..588c781
--- /dev/null
+++ b/docs/DeveloperGuide.rst
@@ -0,0 +1,298 @@
++++++++++++++++++++++++++
+SQLObject Developer Guide
++++++++++++++++++++++++++
+
+.. contents::
+ :backlinks: none
+
+.. _start:
+
+These are some notes on developing SQLObject.
+
+Development Installation
+========================
+
+First install `FormEncode <http://www.formencode.org/en/latest/download.html>`_::
+
+ $ git clone git://github.com/formencode/formencode.git
+ $ cd formencode
+ $ sudo python setup.py develop
+
+Then do the same for SQLObject::
+
+ $ git clone git clone git://github.com/sqlobject/sqlobject
+ $ cd sqlobject
+ $ sudo python setup.py develop
+
+Or rather fork it and clone your fork. To develop a feature or a bugfix
+create a separate branch, push it to your fork and create a pull request
+to the original repo. That way CI will be triggered to test your code.
+
+Voila! The packages are globally installed, but the files from the
+checkout were not copied into ``site-packages``. See `setuptools
+<https://setuptools.readthedocs.io/en/latest/index.html>`_ for more.
+
+Architecture
+============
+
+There are three main kinds of objects in SQLObject: tables, columns and
+connections.
+
+Tables-related objects are in `sqlobject/main.py`_ module. There are two
+main classes: ``SQLObject`` and ``sqlmeta``; the latter is not a
+metaclass but a parent class for ``sqlmeta`` attribute in every class -
+the authors tried to move there all attributes and methods not directly
+related to columns to avoid cluttering table namespace.
+
+.. _`sqlobject/main.py`: sqlobject/main.py.html
+
+Connections are instances of ``DBConnection`` class (from
+`sqlobject/dbconnection.py`_) and its concrete descendants.
+``DBConnection`` contains generic code for generating SQL, working with
+transactions and so on. Concrete connection classes (like
+``PostgresConnection`` and ``SQLiteConnection``) provide
+backend-specific functionality.
+
+.. _`sqlobject/dbconnection.py`: sqlobject/dbconnection.py.html
+
+Columns, validators and converters
+----------------------------------
+
+Columns are instances of classes from `sqlobject/col.py`_. There are two
+classes for every column: one is for user to include into an instance of
+SQLObject, an instance of the other is automatically created by
+SQLObject's metaclass. The two classes are usually named ``Col`` and
+``SOCol``; for example, ``BoolCol`` and ``SOBoolCol``. User-visible
+classes, descendants of ``Col``, seldom contain any code; the main code
+for a column is in ``SOCol`` descendants and in validators.
+
+.. _`sqlobject/col.py`: sqlobject/col.py.html
+
+Every column has a list of validators. Validators validate input data
+and convert input data to python data and back. Every validator must
+have methods ``from_python`` and ``to_python``. The former converts data
+from python to internal representation that will be converted by
+converters to SQL strings. The latter converts data from SQL data to
+python. Also please bear in mind that validators can receive ``None``
+(for SQL ``NULL``) and ``SQLExpression`` (an object that represents
+SQLObject expressions); both objects must be passed unchanged by
+validators.
+
+Converters from `sqlobject/converters.py`_ aren't visible to users. They
+are used behind the scene to convert objects returned by validators to
+backend-specific SQL strings. The most elaborated converter is
+``StringLikeConverter``. Yes, it converts strings to strings. It
+converts python strings to SQL strings using backend-specific quoting
+rules.
+
+.. _`sqlobject/converters.py`: sqlobject/converters.py.html
+
+Let look into ``BoolCol`` as an example. The very ``BoolCol`` doesn't
+have any code. ``SOBoolCol`` has a method to create ``BoolValidator``
+and methods to create backend-specific column type. ``BoolValidator``
+has identical methods ``from_python`` and ``to_python``; the method
+passes ``None``, ``SQLExpression`` and bool values unchanged; int and
+objects that have method ``__nonzero__`` are converted to bool; other
+objects trigger validation error. Bool values that are returned by call
+to ``from_python`` will be converted to SQL strings by
+``BoolConverter``; bool values from ``to_python`` (is is supposed they
+are originated from the backend via DB API driver) are passed to the
+application.
+
+Objects that are returned from ``from_python`` must be registered with
+converters. Another approach for ``from_python`` is to return an object
+that has ``__sqlrepr__`` method. Such objects convert to SQL strings
+themselves, converters are not used.
+
+Style Guide
+===========
+
+Generally you should follow the recommendations in `PEP 8`_, the
+Python Style Guide. Some things to take particular note of:
+
+.. _PEP 8: http://www.python.org/dev/peps/pep-0008/
+
+* With a few exceptions sources must be `flake8`_-clean (and hence
+ pep8-clean). Please consider using pre-commit hook installed by
+ running ``flake8 --install-hook``.
+
+.. _flake8: https://gitlab.com/pycqa/flake8
+
+* **No tabs**. Not anywhere. Always indent with 4 spaces.
+
+* We don't stress too much on line length. But try to break lines up
+ by grouping with parenthesis instead of with backslashes (if you
+ can). Do asserts like::
+
+ assert some_condition(a, b), (
+ "Some condition failed, %r isn't right!" % a)
+
+* But if you are having problems with line length, maybe you should
+ just break the expression up into multiple statements.
+
+* Blank lines between methods, unless they are very small and closely
+ bound to each other.
+
+* *Never* use the form ``condition and trueValue or falseValue``.
+ Break it out and use a variable.
+
+* Careful of namespace pollution. SQLObject does allow for ``from
+ sqlobject import *`` so names should be fairly distinct, or they
+ shouldn't be exported in ``sqlobject.__init__``.
+
+* We're very picky about whitespace. There's one and only one right way
+ to do it. Good examples::
+
+ short = 3
+ longerVar = 4
+
+ if x == 4:
+ do stuff
+
+ func(arg1='a', arg2='b')
+ func((a + b)*10)
+
+ **Bad** examples::
+
+ short =3
+ longerVar=4
+
+ if x==4: do stuff
+
+ func(arg1 = 'a', arg2 = 'b')
+ func(a,b)
+ func( a, b )
+ [ 1, 2, 3 ]
+
+ To us, the poor use of whitespace seems lazy. We'll think less of
+ your code (justified or not) for this very trivial reason. We will
+ fix all your code for you if you don't do it yourself, because we
+ can't bear to look at sloppy whitespace.
+
+* Use ``@@`` to mark something that is suboptimal, or where you have a
+ concern that it's not right. Try to also date it and put your
+ username there.
+
+* Docstrings are good. They should look like::
+
+ class AClass(object):
+ """
+ doc string...
+ """
+
+ Don't use single quotes ('''). Don't bother trying make the string
+ less vertically compact.
+
+* Comments go right before the thing they are commenting on.
+
+* Methods never, ever, ever start with capital letters. Generally
+ only classes are capitalized. But definitely never methods.
+
+* mixedCase is preferred.
+
+* Use ``cls`` to refer to a class. Use ``meta`` to refer to a
+ metaclass (which also happens to be a class, but calling a metaclass
+ ``cls`` will be confusing).
+
+* Use ``isinstance`` instead of comparing types. E.g.::
+
+ if isinstance(var, str): ...
+ # Bad:
+ if type(var) is StringType: ...
+
+* Never, ever use two leading underscores. This is annoyingly
+ private. If name clashes are a concern, use name mangling instead
+ (e.g., ``_SO_blahblah``). This is essentially the same thing as
+ double-underscore, only it's transparent where double underscore
+ obscures.
+
+* Module names should be unique in the package. Subpackages shouldn't
+ share module names with sibling or parent packages. Sadly this
+ isn't possible for ``__init__``, but it's otherwise easy enough.
+
+* Module names should be all lower case, and probably have no
+ underscores (smushedwords).
+
+
+Testing
+=======
+
+Tests are important. Tests keep everything from falling apart. All
+new additions should have tests.
+
+Testing uses py.test, an alternative to ``unittest``. It is available
+at http://pytest.org/ and https://pypi.python.org/pypi/pytest. Read its
+`getting started`_ document for more.
+
+.. _getting started: http://docs.pytest.org/en/latest/getting-started.html
+
+To actually run the test, you have to give it a database to connect to.
+You do so with the option ``-D``. You can either give a complete URI or
+one of several shortcuts like ``mysql`` (these shortcuts are defined in
+the top of ``tests/dbtest.py``).
+
+All the tests are modules in ``sqlobject/tests``. Each module tests
+one kind of feature, more or less. If you are testing a module, call
+the test module ``tests/test_modulename.py`` -- only modules that
+start with ``test_`` will be picked up by py.test.
+
+The "framework" for testing is in ``tests/dbtest``. There's a couple of
+important functions:
+
+``setupClass(soClass)`` creates the tables for the class. It tries to
+avoid recreating tables if not necessary.
+
+``supports(featureName)`` checks if the database backend supports the
+named feature. What backends support what is defined at the top of
+``dbtest``.
+
+If you ``import *`` you'll also get py.test's version of raises_, an
+``inserts`` function that can create instances for you, and a couple
+miscellaneous functions.
+
+.. _raises: http://docs.pytest.org/en/latest/assert.html#assertions-about-expected-exceptions
+
+If you submit a patch or implement a feature without a test, we'll be
+forced to write the test. That's no fun for us, to just be writing
+tests. So please, write tests; everything at least needs to be
+exercised, even if the tests are absolutely complete.
+
+We now use Travis CI and Circle CI to run tests. See the statuses:
+
+.. image:: https://travis-ci.org/sqlobject/sqlobject.svg?branch=master
+ :target: https://travis-ci.org/sqlobject/sqlobject
+
+.. image:: https://circleci.com/gh/sqlobject/sqlobject.svg?style=shield
+ :target: https://circleci.com/gh/sqlobject/sqlobject
+
+To avoid triggering unnecessary test run at CI services add text `[skip ci]
+<https://docs.travis-ci.com/user/customizing-the-build/#skipping-a-build>`_ or
+`[ci skip] <https://circleci.com/docs/skip-a-build/>`_ anywhere in your commit
+messages for commits that don't change code (documentation updates and such).
+
+We use `coverage.py <https://pypi.python.org/pypi/coverage>`_
+to measures code coverage by tests and upload the result for analyzis to
+`Coveralls <https://coveralls.io/github/sqlobject/sqlobject>`_ and
+`Codecov <https://codecov.io/gh/sqlobject/sqlobject>`_:
... 28336 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/sqlobject.git
More information about the Python-modules-commits
mailing list