{ "info": { "author": "Stefano Fontanelli", "author_email": "s.fontanelli@asidev.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Database" ], "description": "ColanderAlchemy\n===============\n\n.. image:: https://travis-ci.org/stefanofontanelli/ColanderAlchemy.png?branch=master\n :target: https://travis-ci.org/stefanofontanelli/ColanderAlchemy\n\n.. image:: https://readthedocs.org/projects/colanderalchemy/badge/\n :target: http://colanderalchemy.readthedocs.org\n\n`ColanderAlchemy` helps you to auto-generate `Colander\n`_ schemas\nthat are based on `SQLAlchemy `_ mapped\nclasses.\n\nSuch `Colander` schemas can be used with libraries like `Deform\n`_ and helps remove the\nneed for duplication of schema definitions.\n\n\nDocumentation\n-------------\n\nLatest documentation is at: `Read The Docs\n`_.\n\n\nInstallation\n------------\n\nUsing `pip` command::\n\n pip install ColanderAlchemy\n\n\nLicense\n-------\n\nColanderAlchemy is distributed under the `MIT license\n`_.\n\n\nDevelopment version\n-------------------\n\nFork the development version on\n`GitHub `_.\n\nThe branch '0.1' contains the old version of ColanderAlchemy: 0.1x\nThe branch 'master' contains the new version of ColanderAlchemy: 0.3x\n\nSupport\n-------\n\nPlease use `Github Issue System\n`_\nfor support requests (bug report, feature requests, other kind of help\nrequests).\n\n`Follow me on Twitter @stefontanelli\n`_\nto receive notifications about new releases.\n\n\nChange Log\n==========\n\n0.3.3 (2015-07-20)\n------------------\n\n- Allow recursive schema creation (PR `#81 `_).\n [Ademan, offlinehacker]\n- Allow ``includes``, ``excludes`` and ``overrides`` to be specified in\n ``__colanderalchemy_config__`` and applied to the ``SchemaNode``.\n [davidjb]\n- Clarify documentation for quickstart.\n [davidjb]\n\n0.3.2.post1 (2015-03-11)\n------------------------\n\n- Only apply declaratively defined settings to the outer Sequence when\n mapping an SQLAlchemy relationship. Previously, overrides were applied\n to both the Sequence and Mapping nodes, leading to unexpected behaviour.\n [davidjb]\n- The order in which fields are added are now properly maintained\n (`issue #45\n `_)\n [uralbash]\n- Added ability to override fields on their own (PR\n `#69 `_,\n `#70 `_)\n [uralbash]\n- Allow setting ColanderAlchemy options in sqlalchemy type. [pieterproigia]\n- Make it possible to set the ``unknown`` ``colander.Mapping`` option\n using ``__colanderalchemy_config__`` (PR\n `#78 `_)\n [elemoine]\n\n0.3.1 (2014-03-19)\n------------------\n\n- maintain the order of SQLAlchemy object attributes in the\n Colander schema [tisdall]\n- use Colander defaults wherever explicit settings are\n not given [tisdall]\n- added tests for confirming documentation examples [tisdall]\n- added fix and test for `issue #35\n `_\n (thrown exception on encountering synonym() ) [tisdall]\n- made changes to accommodate SQLAlchemy >= 0.9a [tisdall]\n- allows \"children\" override\n (`issue #44\n `_)\n [tisdall]\n- no longer call callable SQLAlchemy defaults to fill in\n colander default values (`issue #43\n `_)\n [tisdall]\n- fixed some minor issues with colander default and missing values\n to ensure transitive relationships (such as dictify/objectify)\n [tisdall]\n- require colander 1.0b1 or greater to support `colander.drop`\n (`issue #52\n `_)\n [tisdall]\n\n0.3 (2013-11-04)\n----------------\n\n- Add ``objectify`` function on ``SQLAlchemySchemaNode`` -- use this to\n recreate SQLAlchemy object instances from the configured mappers.\n This new method is the opposite of ``dictify``.\n [davidjb]\n- Colander's ``DateTime`` now defaults to using a naive ``datetime``\n when no timezone is provided, similar to SQLAlchemy.\n [tisdall]\n- fixed defaults for SchemaNode.default and SchemaNode.missing\n [tisdall]\n\n0.2 (2013-05-16)\n----------------\n\n- No changes.\n\n0.2a1 (2012-04-09)\n------------------\n\n- Ensure relationship mapped schemas have a ``name``. This ensures\n correct usage with ``Deform``.\n- Ensure missing schema node information correctly maps to SQLAlchemy\n structures.\n- Map missing information for \"required\" relationships based upon the\n join condition. This can be further customised by given relationships\n setting ``missing=colander.required`` within their respective\n configurations.\n- Read Colander node init settings for a mapped class using the\n ``__colanderalchemy__`` attribute. This allows for full customisation\n of the resulting ``colander.Mapping`` SchemaNode.\n- Allow non-SQLAlchemy schema nodes within ``SQLAlchemySchemaNode``.\n Previously, the ``dictify`` method would throw an ``AttributeError``.\n- Fix setup.py for python 3k\n\n0.1b7 (Unreleased)\n------------------\n\n- Ensure relationships are mapped recursively and adhere to\n ColanderAlchemy settings for mappings.\n- Remove dictify method in SQLAlchemyMapping.\n\n0.1b6 (2012-10-17)\n------------------\n\n- Fix minor bugs.\n\n0.1b5 (2012-09-19)\n------------------\n\n- Fix bug in MappingRegistry.__init__:\n pkeys is a list of property keys instead of column name\n- Add support to specify schema node ordering.\n\n0.1b4 (2012-08-06)\n------------------\n\n- Fix bug related to 'ca_include=False'.\n- Change tests to cover that bug.\n\n0.1b3 (2012-08-02)\n------------------\n\n- Fix issue related to mapped class inheritance.\n- Fix minor bugs.\n\n0.1b2 (2012-06-14)\n------------------\n\n- Added support to use ColanderAlchemy declaratively.\n\n0.1b (2012-05-19)\n-----------------\n\n- Added SQLAlchemyMapping.dictify method.\n- Updated tests with checks needed to test SQLAlchemyMapping.dictify.\n\n0.1.0a2 (unreleased)\n--------------------\n\n- Mentioned supported Python versions in trove classifiers.\n- Updated tests to run with current `colander` versions.\n- Made compatible with Python 3.2.\n\n0.1.0a (2012-03-24)\n-------------------\n\n- Initial public release.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/stefanofontanelli/ColanderAlchemy", "keywords": "serialize deserialize validate schema validation colander sqlalchemy", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "ColanderAlchemy", "package_url": "https://pypi.org/project/ColanderAlchemy/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/ColanderAlchemy/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/stefanofontanelli/ColanderAlchemy" }, "release_url": "https://pypi.org/project/ColanderAlchemy/0.3.3/", "requires_dist": null, "requires_python": null, "summary": "Autogenerate Colander schemas based on SQLAlchemy models.", "version": "0.3.3" }, "last_serial": 1641598, "releases": { "0.1.0a": [ { "comment_text": "", "digests": { "md5": "4b81c163972d204f3a27c54e7db19576", "sha256": "193df0de5a2b009d4fe16a073bf94d5c8291d6115f9619e9206e7ecf9ab58a07" }, "downloads": -1, "filename": "ColanderAlchemy-0.1.0a.tar.gz", "has_sig": false, "md5_digest": "4b81c163972d204f3a27c54e7db19576", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4348, "upload_time": "2012-03-24T11:44:32", "url": "https://files.pythonhosted.org/packages/fd/73/a5798b5c8f9c1f8eee9b285fb86f8d7ef4713282c7157bdd6ef15a99a0e7/ColanderAlchemy-0.1.0a.tar.gz" } ], "0.1b": [ { "comment_text": "", "digests": { "md5": "a0854c0abc8f4fa1ba5cf7882d32473d", "sha256": "ff63d21b571e57ce0ed9a96dcbd7e29c1190ce852c3bc3b6baa01828ec0434e2" }, "downloads": -1, "filename": "ColanderAlchemy-0.1b.tar.gz", "has_sig": false, "md5_digest": "a0854c0abc8f4fa1ba5cf7882d32473d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3408, "upload_time": "2012-05-19T11:16:31", "url": "https://files.pythonhosted.org/packages/c1/a0/d0dc004aafc26c861da87729f68cad0e636eaa5ed68efdf408368461b8e4/ColanderAlchemy-0.1b.tar.gz" } ], "0.1b2": [ { "comment_text": "", "digests": { "md5": "0d4ad07076835fd43fc6c3ac3280ada8", "sha256": "c8cab93cc83d2ccf239c4fb8d00664b6b7312161e982130912d0a88d7219e905" }, "downloads": -1, "filename": "ColanderAlchemy-0.1b2.tar.gz", "has_sig": false, "md5_digest": "0d4ad07076835fd43fc6c3ac3280ada8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4141, "upload_time": "2012-06-14T16:19:07", "url": "https://files.pythonhosted.org/packages/a9/a9/4303d28e849f6c8a3268e0073fff6293c5c114ef17e88f31be07ae6cd624/ColanderAlchemy-0.1b2.tar.gz" } ], "0.1b3": [ { "comment_text": "", "digests": { "md5": "4137050ac8d1d9ea4c3db171ab64bc00", "sha256": "71f2445f03b27a8a6a81d831645c89e6bf7a1fbd51567d5a4c80400b2d88ad98" }, "downloads": -1, "filename": "ColanderAlchemy-0.1b3.tar.gz", "has_sig": false, "md5_digest": "4137050ac8d1d9ea4c3db171ab64bc00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9789, "upload_time": "2012-08-04T15:40:47", "url": "https://files.pythonhosted.org/packages/3f/3c/d411dd71005f39fab2c9db8e9dfb7148328b6827c1b2a5b08d8579d17a1d/ColanderAlchemy-0.1b3.tar.gz" } ], "0.1b4": [ { "comment_text": "", "digests": { "md5": "f50536e8342ec979c3d59977ea12ae92", "sha256": "d8de000009351abd7a18670996f0913bc1c32a2b7109dd79824528a7e1914d25" }, "downloads": -1, "filename": "ColanderAlchemy-0.1b4.tar.gz", "has_sig": false, "md5_digest": "f50536e8342ec979c3d59977ea12ae92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9811, "upload_time": "2012-08-06T09:36:53", "url": "https://files.pythonhosted.org/packages/86/ea/e3eaa442f32d31afdff349be5a775c06284c797e34c9e714acc121a7a5c6/ColanderAlchemy-0.1b4.tar.gz" } ], "0.1b5": [ { "comment_text": "", "digests": { "md5": "bc0dc7d1a64a7d9e759521f6455cd75f", "sha256": "c0ff73777ea814af453845d786de1eeabe0d5851e1d0ec0b1efe1f03362da18b" }, "downloads": -1, "filename": "ColanderAlchemy-0.1b5.tar.gz", "has_sig": false, "md5_digest": "bc0dc7d1a64a7d9e759521f6455cd75f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9909, "upload_time": "2012-09-19T16:33:47", "url": "https://files.pythonhosted.org/packages/e1/04/cb08e5dbc1b024cc0408046a02e6a5f3a752b81b7ef25090f0c7b2dd25fb/ColanderAlchemy-0.1b5.tar.gz" } ], "0.1b6": [ { "comment_text": "", "digests": { "md5": "0f75e79d0803fe5d542e1faadc05d9df", "sha256": "dcc1fd7c1dcd871df04a29c23b3d475650866894b5f4131a6a461cb76d103631" }, "downloads": -1, "filename": "ColanderAlchemy-0.1b6.tar.gz", "has_sig": false, "md5_digest": "0f75e79d0803fe5d542e1faadc05d9df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9425, "upload_time": "2012-10-17T13:21:53", "url": "https://files.pythonhosted.org/packages/ce/53/8861a8753640b0585d89a6affe8983d364c8dfb709ac0b9ee5ca55479bb1/ColanderAlchemy-0.1b6.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "b054837bd2753cbf15f7d5028cba421b", "sha256": "d10e97b5f4648dcdc38c5e5c9f9b77fe39c8fa7f594d89d558b0d82e5631bfd7" }, "downloads": -1, "filename": "ColanderAlchemy-0.2.0.tar.gz", "has_sig": false, "md5_digest": "b054837bd2753cbf15f7d5028cba421b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10472, "upload_time": "2013-05-16T12:52:44", "url": "https://files.pythonhosted.org/packages/1c/9f/dfea8a11e0e6062217d22a7958f66a7cc9c8f8575ff329b529b717a2cbe2/ColanderAlchemy-0.2.0.tar.gz" } ], "0.2a1": [ { "comment_text": "", "digests": { "md5": "c4dd67b060dc314a4d1824759b014ac1", "sha256": "7e11b6de3eba0078ef1828d0becaec484e7dace43a4688668b1dd4e14ece0768" }, "downloads": -1, "filename": "ColanderAlchemy-0.2a1.tar.gz", "has_sig": false, "md5_digest": "c4dd67b060dc314a4d1824759b014ac1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9124, "upload_time": "2013-04-12T17:06:30", "url": "https://files.pythonhosted.org/packages/72/49/c66c34e0ba73c0f227b3197355522ca5fce0d5e80baca6dfa67f713a9538/ColanderAlchemy-0.2a1.tar.gz" } ], "0.2b1": [ { "comment_text": "", "digests": { "md5": "517eff303b2c478212b6db302ac18df3", "sha256": "94d2f29f47b74d2a141b1acc1d9e38b3355049ebd9a839b049c6b47fc2bcc3a8" }, "downloads": -1, "filename": "ColanderAlchemy-0.2b1.tar.gz", "has_sig": false, "md5_digest": "517eff303b2c478212b6db302ac18df3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10001, "upload_time": "2013-04-30T06:47:08", "url": "https://files.pythonhosted.org/packages/61/d5/d3bc5db7c90ada72cff5aece1b8562dd5c093c66e86b493f1b863dfaddb5/ColanderAlchemy-0.2b1.tar.gz" } ], "0.2b2": [ { "comment_text": "", "digests": { "md5": "a16b01a4e7738cf4c0ffa38f6c5c46e9", "sha256": "7848d8e71299054fc200d2b4b917393ccf9bcced95612ebf254bf0d7b89cb0ae" }, "downloads": -1, "filename": "ColanderAlchemy-0.2b2.tar.gz", "has_sig": false, "md5_digest": "a16b01a4e7738cf4c0ffa38f6c5c46e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10463, "upload_time": "2013-04-30T08:53:18", "url": "https://files.pythonhosted.org/packages/d7/e2/0d4dc9406251ec5941647bc6042ca51d0f9ca61d192d2107902d8b768878/ColanderAlchemy-0.2b2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "fb0c2d05192c0318618ffbda1618c4cd", "sha256": "54df2e21b4235ccb8b6f06379713594a3a7132a9cf0569f4388173c33abb7fab" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.0.tar.gz", "has_sig": false, "md5_digest": "fb0c2d05192c0318618ffbda1618c4cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13992, "upload_time": "2013-11-04T14:45:17", "url": "https://files.pythonhosted.org/packages/51/57/8ffbf496b24d7c086d1a2e5779011e62cdcb3cf6b74b3aff65e71164b85d/ColanderAlchemy-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "99acca67f59cea161a3eded245757d4e", "sha256": "c92c5a024ae9186c82cf17477623ddb000ad8906edee065299f238b34067acc8" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.1.tar.gz", "has_sig": false, "md5_digest": "99acca67f59cea161a3eded245757d4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15912, "upload_time": "2014-03-19T18:42:25", "url": "https://files.pythonhosted.org/packages/11/1e/fc7794fd6518fb93ff495916d5054de936572864a2877c8a052fa2755fd4/ColanderAlchemy-0.3.1.tar.gz" } ], "0.3.2.post1": [ { "comment_text": "", "digests": { "md5": "716f21c319768a812410434310999c72", "sha256": "cd2dc2589499ee05a409f6be7f5b058fa7528387f18792865151fdf26a29ae3c" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.2.post1.tar.gz", "has_sig": false, "md5_digest": "716f21c319768a812410434310999c72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20217, "upload_time": "2015-03-12T14:34:34", "url": "https://files.pythonhosted.org/packages/0f/a7/28f6f27b90722a0d0d70f2f7103a27aa8591dc296211474a02177712432d/ColanderAlchemy-0.3.2.post1.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "4abba5c9041d7cbf3f43be70bc1860c6", "sha256": "367cd10e54a616222b919e89ad5d01d88f7cb53ea9667cc7cddaa02eb7b67937" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4abba5c9041d7cbf3f43be70bc1860c6", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 24836, "upload_time": "2015-07-20T15:12:56", "url": "https://files.pythonhosted.org/packages/dc/28/87a25e5b14370631197382049f1d9d56d35a0062b08c87788375696dd642/ColanderAlchemy-0.3.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a6f1dabbf064bdd4abccd06391c9a87b", "sha256": "dcda9d35ddeb6d4e3f61a5ba3c9fddbb80e1f8155818990300bebada45b48c87" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.3.tar.gz", "has_sig": false, "md5_digest": "a6f1dabbf064bdd4abccd06391c9a87b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21940, "upload_time": "2015-07-20T15:12:38", "url": "https://files.pythonhosted.org/packages/d2/17/68f57b73b7eb28b75e9c31877a0669d989fa21b4a8791125237fc0461eef/ColanderAlchemy-0.3.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4abba5c9041d7cbf3f43be70bc1860c6", "sha256": "367cd10e54a616222b919e89ad5d01d88f7cb53ea9667cc7cddaa02eb7b67937" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4abba5c9041d7cbf3f43be70bc1860c6", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 24836, "upload_time": "2015-07-20T15:12:56", "url": "https://files.pythonhosted.org/packages/dc/28/87a25e5b14370631197382049f1d9d56d35a0062b08c87788375696dd642/ColanderAlchemy-0.3.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a6f1dabbf064bdd4abccd06391c9a87b", "sha256": "dcda9d35ddeb6d4e3f61a5ba3c9fddbb80e1f8155818990300bebada45b48c87" }, "downloads": -1, "filename": "ColanderAlchemy-0.3.3.tar.gz", "has_sig": false, "md5_digest": "a6f1dabbf064bdd4abccd06391c9a87b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21940, "upload_time": "2015-07-20T15:12:38", "url": "https://files.pythonhosted.org/packages/d2/17/68f57b73b7eb28b75e9c31877a0669d989fa21b4a8791125237fc0461eef/ColanderAlchemy-0.3.3.tar.gz" } ] }