{ "info": { "author": "Robin Gottfried", "author_email": "google@kebet.cz", "bugtrack_url": null, "classifiers": [], "description": "GAP\n###\n\nGoogle App Engine is excellent technology but there is a gap.\n\nIf you are missing\n\n- use of pip with Google App Engine,\n- cooperation of appengine and virtualenv,\n- possibility to add any module to your python path,\n\nthen this barebone could be at least an inspiration for you.\n\nHow to use (fill) the gap?\n==========================\n\nShort version\n-------------\n\n::\n\n > workon \n > pip install gap\n > gap start-project \n > cd \n > appcfg update src\n\nLong version\n------------\n\n1. Install\n `Google Appengine SDK `__\n2. Create a `virtualenv `__ for you project\n3. if necessary ``easy_install pip``\n4. run ``pip install gap``\n5. Go to directory where you want to create your GAE project.\n6. run ``gap start-project `` # will be used as applicationId\n7. Add your dependencies to requirements.gip (format is the same as pip\n `requirements file `__) and\n run ``bin/gip install -r requirements.gip``\n8. or install any packages using bin/gip same way as you are used to do it\n with pip.\n9. To create a new module in your application run ``gap start-app ``\n10. Libraries installed using gip are accessible in dev_server as well as on GAE servers.\n\nSee `Gap documentation on github `__ for more\ninformations.\n\nAny ideas, thoughts, fixes (specially corrections of my English :) are\nwelcome!\n\nDisclaimer\n==========\n\nOf course ... This code is published in hope that someone will find it\nuseful but it is provided as-is and I can take no responsibility for\nimproper as well as proper use.\n\nSee also\n========\nEnhance GAP with plugins and addons:\n\n- `GAP Resources `__\n- `GAP Angular `__\n- `GAP Datastore Admin `__\n\n\n\nChanges\n=======\nVersion 0.4.9\n-------------\n- gip\n 1. some packages caused gip not to work properly\n 2. ``-v`` option shows a lot of debug informations\n- minor fixes in documentation\n- invalid import in new poject's views.py\n\nVersion 0.4.8\n-------------\n- mainly enhancements in test suite\n 1. executable flag on run_test\n 2. added base class for testing views\n 3. support for rednose in tests (rednose seems not compatible with multiprocess plugin)\n 4. Test* classes not imported in utils.__init__ (forced test requirements even when running gap project)\n 5. test requirements ignored by gip (not usefull on production)\n- fixed link in changelog\n- extended Route class which can better handle ending slash\n\nVersion 0.4.7\n-------------\n- documentation (see `doc/index.rst` or on `github `__)\n\nVersion 0.4.3, 0.4.5\n--------------------\n- fixed missing README.rst in MANIFEST.in (sorry)\n- changes added to package description\n\nVersion 0.4\n-----------\n\n- tests in project template (application tests)\n- bin/ipython in project runs ipython (if installed) with gae testbed\n stubs\n- new apps have model template file now\n- better template loaders to allow install 3rd party modules\n- default 404 page now shows list of routes\n- gap tests can be run from setup.py test\n- settings can have defaults in config.py (refer to project's\n config.py:DEFAULT\\_SETTINGS)\n\nVersion 0.3\n-----------\n\n- added some tests\n- added baseTest classes (many thanks to Lukas Lukovsky)\n- added gap.conf.settings (highly cached db stored settings)\n- minor fixes in setup.py\n\nVersion 0.2\n-----------\n\nMajor rewrite to enable installation using pip and project creation a-la\ndjango.\n\n- first version of setup.py\n\nVersion 0.1\n-----------\n\nNever released", "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/czervenka/gap", "keywords": null, "license": "Apache License 2.0", "maintainer": null, "maintainer_email": null, "name": "gap", "package_url": "https://pypi.org/project/gap/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/gap/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/czervenka/gap" }, "release_url": "https://pypi.org/project/gap/0.4.9.1/", "requires_dist": null, "requires_python": null, "summary": "Google App Engine project bootstrap", "version": "0.4.9.1" }, "last_serial": 887034, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "a0989de43b23be04dfedd0a56043203c", "sha256": "e5c3d1cd19a1f4b49a62ec46a550c44c505501a6d0cd4b89bf8c918fac2778c0" }, "downloads": -1, "filename": "gap-0.2.tar.gz", "has_sig": false, "md5_digest": "a0989de43b23be04dfedd0a56043203c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18330, "upload_time": "2013-09-20T10:02:19", "url": "https://files.pythonhosted.org/packages/b2/1e/8108f79e8fc84f07dfda4b6caa3b41c1da499abc3ac75d007cfd3adf02c5/gap-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "b173d7a14927ebb8d0093c3be16533a6", "sha256": "509236f066aade8487f8ce3da6e93a867f9b996034bd1a500fd70907ac4d57eb" }, "downloads": -1, "filename": "gap-0.3.tar.gz", "has_sig": false, "md5_digest": "b173d7a14927ebb8d0093c3be16533a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17724, "upload_time": "2013-09-21T16:10:56", "url": "https://files.pythonhosted.org/packages/8e/30/455059293fab749c38f8e976c22d9baa531e9989c966231685f555ef014f/gap-0.3.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "5f8fc42b2877f9a4f1cfa44497405f9d", "sha256": "7c7652d50453bb70bddcc5a11f6ec2b57738b98360f95d13d2b297b084159d57" }, "downloads": -1, "filename": "gap-0.4.0.tar.gz", "has_sig": false, "md5_digest": "5f8fc42b2877f9a4f1cfa44497405f9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20839, "upload_time": "2013-09-22T16:09:12", "url": "https://files.pythonhosted.org/packages/cd/72/5d8cba83f0cf2986d1998f2cda309ceb9c36e08f88d00393057ea7b6207a/gap-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "71bf176205ca0ef8fb1bc707b2bc561d", "sha256": "9dbce3ac69f3ee8ac0d88afeb8d08d89fd9a2a5c47b614724222880336195fa3" }, "downloads": -1, "filename": "gap-0.4.1.tar.gz", "has_sig": false, "md5_digest": "71bf176205ca0ef8fb1bc707b2bc561d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21735, "upload_time": "2013-09-22T18:01:30", "url": "https://files.pythonhosted.org/packages/47/26/e59e05e1ddf3fdd75a21e444d442c226fd9ce25fa6be19ec63dd48da2a04/gap-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "280b80bd1d8b1d25b78b59e1a41e4058", "sha256": "15ee2f02b6a07e3a5a3beda0cb5c5d0a3dff5db2088171c51d814373bf06ebcc" }, "downloads": -1, "filename": "gap-0.4.2.tar.gz", "has_sig": false, "md5_digest": "280b80bd1d8b1d25b78b59e1a41e4058", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21744, "upload_time": "2013-09-23T07:16:35", "url": "https://files.pythonhosted.org/packages/96/ea/b4a2dfc8436ced8c5365df7b8dd559a0496060558a62ec3808fd7a6619dd/gap-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "5239346678c112e7c75259b6e8bff67c", "sha256": "2f1d23dc7a218d3ab36417510c70ac76241ed9d88e8f4a07e5010ebdb7a36a64" }, "downloads": -1, "filename": "gap-0.4.3.tar.gz", "has_sig": false, "md5_digest": "5239346678c112e7c75259b6e8bff67c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21890, "upload_time": "2013-09-23T15:49:41", "url": "https://files.pythonhosted.org/packages/fc/f7/28cc226b7aa8cda02a576974a3e977618a81b4d53607392f60f2ad033e31/gap-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "b39d11df88b493ba5276aab36504eefd", "sha256": "1111897b4f521b7ff67a08d7ce0b2466b007f2ede6c6a9ed9866e7924884ef0d" }, "downloads": -1, "filename": "gap-0.4.4.tar.gz", "has_sig": false, "md5_digest": "b39d11df88b493ba5276aab36504eefd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22661, "upload_time": "2013-09-23T16:23:45", "url": "https://files.pythonhosted.org/packages/10/31/d8661b42c0044c7c38c1ed6832cd81f540c8c369f8ab4195c76bd2c2e53f/gap-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "4d6f83351a2f52c5d1e25ef5d87e1ad0", "sha256": "d3f5685dad7f221383181d724e30c4991e6068b5c0bb35d3e9e7099eff61be32" }, "downloads": -1, "filename": "gap-0.4.5.tar.gz", "has_sig": false, "md5_digest": "4d6f83351a2f52c5d1e25ef5d87e1ad0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22697, "upload_time": "2013-09-23T16:28:18", "url": "https://files.pythonhosted.org/packages/aa/32/9abcba3adeb6c2f772d616e9db6b186e4f45bc72f473918a980459f7c28f/gap-0.4.5.tar.gz" } ], "0.4.6": [ { "comment_text": "", "digests": { "md5": "278bfd9e96b34423de0772de551b19d7", "sha256": "789041004212a5731ebc17d1c81982052850be6b9a01c60b10826085f7a45c03" }, "downloads": -1, "filename": "gap-0.4.6.tar.gz", "has_sig": false, "md5_digest": "278bfd9e96b34423de0772de551b19d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23134, "upload_time": "2013-09-23T16:39:32", "url": "https://files.pythonhosted.org/packages/08/cf/f3e15fbb417e81e44aadcd973830c411e50ec6948734197629271f499843/gap-0.4.6.tar.gz" } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "5cde4637aad5e0484309a97ba295bfe6", "sha256": "84cc584d08477374dc4c27589baf0971ea104dd682e50bfe81eededb2d1a64c1" }, "downloads": -1, "filename": "gap-0.4.7.tar.gz", "has_sig": false, "md5_digest": "5cde4637aad5e0484309a97ba295bfe6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23304, "upload_time": "2013-09-24T20:36:16", "url": "https://files.pythonhosted.org/packages/2a/17/85c8e033f40d7c0cfa8fb0b0a464b43e0b5e770403e82dd9a91ef575c207/gap-0.4.7.tar.gz" } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "7558fb2a23a0ef0f60a411593466da98", "sha256": "6703f26c3467b3f8a09fe807a900dd79c3800917094be4543413d577953a0ee6" }, "downloads": -1, "filename": "gap-0.4.8.tar.gz", "has_sig": false, "md5_digest": "7558fb2a23a0ef0f60a411593466da98", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25756, "upload_time": "2013-09-29T20:16:27", "url": "https://files.pythonhosted.org/packages/5d/9e/aaf39e3c611e10769fb2308b31a4bff0863ae84869a05ce0631536d7ff13/gap-0.4.8.tar.gz" } ], "0.4.8.1": [ { "comment_text": "", "digests": { "md5": "2d01495f96d11bc20a252d1fdd9acf32", "sha256": "5c27aad9887fce5863b45bc7adf817b0232ec533dc34d48097433232434abdff" }, "downloads": -1, "filename": "gap-0.4.8.1.tar.gz", "has_sig": false, "md5_digest": "2d01495f96d11bc20a252d1fdd9acf32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26293, "upload_time": "2013-09-30T15:02:18", "url": "https://files.pythonhosted.org/packages/3d/0d/6ab170404bcbcd13a969c83fe2effe56005c3c187ca03ba2e1259977c608/gap-0.4.8.1.tar.gz" } ], "0.4.8.2": [ { "comment_text": "", "digests": { "md5": "f5ea1f1fd8fdd73ab3a7fd17cd00f56f", "sha256": "c4c4bec226187a8693eca11d59bf8473bd844b83e7e3339b7660f6ffe70a8370" }, "downloads": -1, "filename": "gap-0.4.8.2.tar.gz", "has_sig": false, "md5_digest": "f5ea1f1fd8fdd73ab3a7fd17cd00f56f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26357, "upload_time": "2013-09-30T15:22:11", "url": "https://files.pythonhosted.org/packages/0d/1e/d037572a766f4fc8dae8b2523e02f06606dc7d807610f2c3992520cc55f9/gap-0.4.8.2.tar.gz" } ], "0.4.9": [ { "comment_text": "", "digests": { "md5": "899522b88d090d6d6a1c791eaec4551d", "sha256": "b38e8a77fb94dfd192a1b0663281e59d2282e6e94b0c9dcfafd5a2c997a2de4d" }, "downloads": -1, "filename": "gap-0.4.9.tar.gz", "has_sig": false, "md5_digest": "899522b88d090d6d6a1c791eaec4551d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27074, "upload_time": "2013-10-08T10:39:15", "url": "https://files.pythonhosted.org/packages/80/d9/9b8063cb4b0f782adf4f683a734a13e7fa6541ea96c7799c68d00c27428f/gap-0.4.9.tar.gz" } ], "0.4.9.1": [ { "comment_text": "", "digests": { "md5": "7edb5fc91c7cef2745d79a3bdfbc1426", "sha256": "b50bd7870648b1bc86a34ef2f4e8d43772cbf79104ac222492b599d8fdb3cf17" }, "downloads": -1, "filename": "gap-0.4.9.1.tar.gz", "has_sig": false, "md5_digest": "7edb5fc91c7cef2745d79a3bdfbc1426", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30829, "upload_time": "2013-10-11T09:46:58", "url": "https://files.pythonhosted.org/packages/b7/d7/c88ab2d1968ae65e9e37670dab11999dcb301bc8548354d40b9609308d25/gap-0.4.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7edb5fc91c7cef2745d79a3bdfbc1426", "sha256": "b50bd7870648b1bc86a34ef2f4e8d43772cbf79104ac222492b599d8fdb3cf17" }, "downloads": -1, "filename": "gap-0.4.9.1.tar.gz", "has_sig": false, "md5_digest": "7edb5fc91c7cef2745d79a3bdfbc1426", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30829, "upload_time": "2013-10-11T09:46:58", "url": "https://files.pythonhosted.org/packages/b7/d7/c88ab2d1968ae65e9e37670dab11999dcb301bc8548354d40b9609308d25/gap-0.4.9.1.tar.gz" } ] }