{ "info": { "author": "Matan Noam Shavit", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# SimpleQuery\nquery from containers of objects, in Python\n\n## Query pattern\n\nThe Query pattern uses criteria on classes and fields to retrieve\nvalue objects from a dataset. Those criteria are a field, an operator,\nand a value. For example, ('last_name', =, 'Fowler') or ('price', <, 100.00).\n\n## Installation\n\n```\npip install simple-query\n```\n\n## Usage\n`all() ` returns the matching objects for a query, and `filter(*criteria)` returns a new, filtered query, where `criteria = field, operator, value`.\n\nFor example:\n```Python\nfrom simple_query.query import Query\nfrom operator import eq, gt, lt\n\npeople = [\n Person('Ada Lovelace'),\n Person('Grace Hopper'),\n Person('Jean Bartik')]\n\nQuery(people).all()\n# [Person('Ada Lovelace'), Person('Grace Hopper'), Person('Jean Bartik')]\n\nQuery(people).filter('last_name', eq, 'Lovelace').all()\n# [Person('Ada Lovelace')]\n\nQuery(people) \\\n .filter('first_name', gt, 'B') \\\n .filter('last_name', lt, 'C').all()\n# [Person('Jean Bartik')]\n```\n\n## Setting up development environment\nIt is always recommended to use a virtual environment for each\nPython appplication. Create the environment once, after cloning\nthis repository to your machine.\n```\npython3 -m venv .env\n```\n\nFor each terminal session going forward, work on the virtual\nenvironment and use its copy of python.\n```\nsource .env/bin/activate\n```\n\nUpgrade pip\n```\npip install -U pip\n```\n\nInstall developer requirements for a nicer test runner (see Running Tests)\n```\npip install -r requirements/dev.txt\n```\n\n## Running tests\nTests are written in unittest syntax, so no additional package are needed\nto run them\n```\npython -m unittest discover\n```\nFor a more informative output, as well as plugins for\ncolor and watch mode, use nose test runner. You can also use the test runner\nof your choice.\n```\nnosetests --rednose --with-watch\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/matannoam/SimpleQuery", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "simple-query", "package_url": "https://pypi.org/project/simple-query/", "platform": "", "project_url": "https://pypi.org/project/simple-query/", "project_urls": { "Homepage": "https://github.com/matannoam/SimpleQuery" }, "release_url": "https://pypi.org/project/simple-query/0.0.2/", "requires_dist": null, "requires_python": "", "summary": "Query pattern of containers of objects", "version": "0.0.2" }, "last_serial": 4325149, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "31e320fa8c6bb307f922244b31c258d7", "sha256": "e7ee076142b3335e34e510a4c79d070d674be04f2ca8e90c47b16070ea386458" }, "downloads": -1, "filename": "simple_query-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "31e320fa8c6bb307f922244b31c258d7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4062, "upload_time": "2018-09-30T14:35:34", "url": "https://files.pythonhosted.org/packages/6d/d9/84e236424875d28fadf219e1e70a716c02e9b2cf7271234d513434766e08/simple_query-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb2d2ab1cacb8137717e612c4cb427db", "sha256": "1585b890af1201661c083a28c0c13da1f35203d0f2d5c321434f89e4f36ca07f" }, "downloads": -1, "filename": "simple_query-0.0.1.tar.gz", "has_sig": false, "md5_digest": "cb2d2ab1cacb8137717e612c4cb427db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2565, "upload_time": "2018-09-30T14:35:35", "url": "https://files.pythonhosted.org/packages/3c/74/465dac5ab4bfa771f3f09e9e8a363b6a7fabb16afeb5b6968703aaeba545/simple_query-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "88d6fa4775c8581dd8712edcbe8cc5ab", "sha256": "1a32c683fbc95f850dcbe5302dffdf9c8f287c84ca1ec35b49800237a2a6bae8" }, "downloads": -1, "filename": "simple_query-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "88d6fa4775c8581dd8712edcbe8cc5ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4308, "upload_time": "2018-09-30T14:52:05", "url": "https://files.pythonhosted.org/packages/81/b1/0a63261ef432cf890756596acdc3a4eac4cd787b76e5ba7d73034d1c8107/simple_query-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2e502288016309dc024feb0509b1cec", "sha256": "95f262f24ddebdc7c186275be831c829d78fb2ba1e11d45a7f6535aea655842b" }, "downloads": -1, "filename": "simple_query-0.0.2.tar.gz", "has_sig": false, "md5_digest": "c2e502288016309dc024feb0509b1cec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2834, "upload_time": "2018-09-30T14:52:07", "url": "https://files.pythonhosted.org/packages/48/e7/1c9f37231d34cf628a2ed889af675e53928d6b0203e4495d58cdfffc5bf9/simple_query-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "88d6fa4775c8581dd8712edcbe8cc5ab", "sha256": "1a32c683fbc95f850dcbe5302dffdf9c8f287c84ca1ec35b49800237a2a6bae8" }, "downloads": -1, "filename": "simple_query-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "88d6fa4775c8581dd8712edcbe8cc5ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4308, "upload_time": "2018-09-30T14:52:05", "url": "https://files.pythonhosted.org/packages/81/b1/0a63261ef432cf890756596acdc3a4eac4cd787b76e5ba7d73034d1c8107/simple_query-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2e502288016309dc024feb0509b1cec", "sha256": "95f262f24ddebdc7c186275be831c829d78fb2ba1e11d45a7f6535aea655842b" }, "downloads": -1, "filename": "simple_query-0.0.2.tar.gz", "has_sig": false, "md5_digest": "c2e502288016309dc024feb0509b1cec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2834, "upload_time": "2018-09-30T14:52:07", "url": "https://files.pythonhosted.org/packages/48/e7/1c9f37231d34cf628a2ed889af675e53928d6b0203e4495d58cdfffc5bf9/simple_query-0.0.2.tar.gz" } ] }