{ "info": { "author": "Anton Gritsay", "author_email": "anton@angri.ru", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Plugins", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Database" ], "description": "`sqlamp` -- Materialized Path for SQLAlchemy\n============================================\n\n`sqlamp` is an implementation of an efficient algorithm for working\nwith hierarchical data structures -- `Materialized Path`. `sqlamp`\nuses (and depends of) `SQLAlchemy `_.\n\n`Materialized Path` is a way to store (and fetch) a trees in a relational\ndatabases. It is the compromise between `Nested Sets` and `Adjacency\nRelations` in respect to simplicity and efficiency. Method was promoted\nby `Vadim Tropashko`_ in his book `SQL Design Patterns`_. Vadim's\ndescription of the method can be read in his article `Trees in SQL:\nNested Sets and Materialized Path (by Vadim Tropashko)`_.\n\nImplemented features:\n\n * Setting up with ``declarative.ext`` or without it.\n * Saving node roots -- if no parent set for node.\n * Saving child nodes -- if node has some parent. The whole dirty job\n of setting values in utility fields is done by `sqlamp`.\n * Fetching node's descendants, ancestors and children using the most\n efficient way available.\n * Autochecking exhaustion of tree size limits (maximum number of\n children and maximum nesting level) is done during session flush.\n * Rebuilding all trees and any subtree on the basis of Adjacency\n Relations.\n * Collapsing flat tree returned from query to recursive structure.\n * Node classes may use polymorphic inheritance.\n * Nodes and whole trees/subtrees can be moved around or removed\n entirely.\n\nKnown-to-work supported DBMS include `sqlite`_ (tested with 3.6.14),\n`MySQL`_ (tested using both MyISAM and InnoDB with server version 5.1.34)\nand `PostgreSQL`_ (tested with 8.3.7), but sqlamp should work with any\nother DBMS supported by SQLAlchemy.\n\nSupported versions of SQLAlchemy include current minor versions\nof branches 0.5 and 0.6 as well as 0.7 since 0.7.2.\n\n.. _`Vadim Tropashko`: http://vadimtropashko.wordpress.com\n.. _`Sql Design Patterns`:\n http://www.rampant-books.com/book_2006_1_sql_coding_styles.htm\n.. _`Trees in SQL: Nested Sets and Materialized Path (by Vadim Tropashko)`:\n https://communities.bmc.com/communities/docs/DOC-9902\n.. _`sqlite`: http://sqlite.org\n.. _`MySQL`: http://mysql.com\n.. _`PostgreSQL`: http://postgresql.org", "description_content_type": null, "docs_url": null, "download_url": "http://sqlamp.angri.ru/sqlamp-0.6.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://sqlamp.angri.ru", "keywords": null, "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "sqlamp", "package_url": "https://pypi.org/project/sqlamp/", "platform": "any", "project_url": "https://pypi.org/project/sqlamp/", "project_urls": { "Download": "http://sqlamp.angri.ru/sqlamp-0.6.tar.gz", "Homepage": "http://sqlamp.angri.ru" }, "release_url": "https://pypi.org/project/sqlamp/0.6/", "requires_dist": null, "requires_python": null, "summary": "sqlamp is an implementation of Materialized Path for SQLAlchemy.", "version": "0.6" }, "last_serial": 363483, "releases": { "0.3": [ { "comment_text": "", "digests": { "md5": "bfdbef68e4f0ea1d5efb3fbcc118502f", "sha256": "f6f5bc81d695ad4b89ccc6420a5809f0669defc9d104e44da0d02dd30c75a96b" }, "downloads": -1, "filename": "sqlamp-0.3.tar.gz", "has_sig": false, "md5_digest": "bfdbef68e4f0ea1d5efb3fbcc118502f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20832, "upload_time": "2009-05-23T10:48:49", "url": "https://files.pythonhosted.org/packages/9d/aa/959a3c68ac3a96a4367300233dd904c832d04a1e23d691b8ddbd0124ea4c/sqlamp-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "ff98d3ad2ceddac4132440bc8412c351", "sha256": "2d1f8f56c090bb0814c90141ee3dae61b55d54e404462ac1a2b1757e5560d851" }, "downloads": -1, "filename": "sqlamp-0.4.tar.gz", "has_sig": false, "md5_digest": "ff98d3ad2ceddac4132440bc8412c351", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22976, "upload_time": "2009-06-10T22:32:24", "url": "https://files.pythonhosted.org/packages/bd/9b/67a9305ec94fac20dc83a4d1d70e72d826ad22c35ca3ba0f6c774097bae9/sqlamp-0.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "c0d98c2716cfb888d6624eff34d827e5", "sha256": "00cca7aaf8567559bbc882a7394190810bb0524523ab1289ed0517a79bd23b4c" }, "downloads": -1, "filename": "sqlamp-0.4.1.tar.gz", "has_sig": false, "md5_digest": "c0d98c2716cfb888d6624eff34d827e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23578, "upload_time": "2009-07-16T19:17:09", "url": "https://files.pythonhosted.org/packages/49/bc/f9679457a99d0bef77315ba6c11508fdd86953c28276fd04403259a0cfa5/sqlamp-0.4.1.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "bc80447071bea572fd4b6c84b2e604e2", "sha256": "f18fb2ba1fe3050f50bf4c67314b21c348813e3a6c7ef616df67b72c588cea9d" }, "downloads": -1, "filename": "sqlamp-0.5.tar.gz", "has_sig": false, "md5_digest": "bc80447071bea572fd4b6c84b2e604e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25447, "upload_time": "2009-09-05T10:55:20", "url": "https://files.pythonhosted.org/packages/18/6d/5d4ae45acfa4862c6f29322beb312ac243f5e2a94b4e9e810ee4b423956f/sqlamp-0.5.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "5af903fac2deffeece43f0949bcbf9ed", "sha256": "4f7e97a2886f230428d2a57e527607418c2b6a0317b20cd38b53b747178d1378" }, "downloads": -1, "filename": "sqlamp-0.5.1.tar.gz", "has_sig": false, "md5_digest": "5af903fac2deffeece43f0949bcbf9ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26742, "upload_time": "2009-11-29T18:00:07", "url": "https://files.pythonhosted.org/packages/7b/f3/d79caa692905b0a13805650159c3a5c1371820e571133ae448ce184ff693/sqlamp-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "8707f7c809e7d1efbc17b102459d36ab", "sha256": "682d46c38d63b77c6d9eaac2dddb9333a21dc3669bb13e16c5e746ea88637d40" }, "downloads": -1, "filename": "sqlamp-0.5.2.tar.gz", "has_sig": false, "md5_digest": "8707f7c809e7d1efbc17b102459d36ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26922, "upload_time": "2010-09-19T16:32:10", "url": "https://files.pythonhosted.org/packages/b6/70/dd5ec059b8bb988dcc2bf410650cfef00562dd8636c3cb5a4fb51dc0d12d/sqlamp-0.5.2.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "eab44f7df39193f77ddc70ddd2124020", "sha256": "11e85f64e86f8e44f6b4ca13981a35a4b96e8decf79c418b409405b4f139150f" }, "downloads": -1, "filename": "sqlamp-0.6.tar.gz", "has_sig": false, "md5_digest": "eab44f7df39193f77ddc70ddd2124020", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38673, "upload_time": "2012-01-12T22:41:43", "url": "https://files.pythonhosted.org/packages/9b/3b/b0aea8ab8a42d0113728b8d7eb21fad32fe1a93714fd302b81eb927de189/sqlamp-0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "eab44f7df39193f77ddc70ddd2124020", "sha256": "11e85f64e86f8e44f6b4ca13981a35a4b96e8decf79c418b409405b4f139150f" }, "downloads": -1, "filename": "sqlamp-0.6.tar.gz", "has_sig": false, "md5_digest": "eab44f7df39193f77ddc70ddd2124020", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38673, "upload_time": "2012-01-12T22:41:43", "url": "https://files.pythonhosted.org/packages/9b/3b/b0aea8ab8a42d0113728b8d7eb21fad32fe1a93714fd302b81eb927de189/sqlamp-0.6.tar.gz" } ] }