{ "info": { "author": "DISQUS", "author_email": "opensource@disqus.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 7 - Inactive", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only", "Topic :: Software Development" ], "description": "========\nGargoyle\n========\n\n.. image:: https://img.shields.io/pypi/v/gargoyle-yplan.svg\n :target: https://pypi.python.org/pypi/gargoyle-yplan\n\n.. image:: https://travis-ci.org/adamchainz/gargoyle.svg?branch=master\n :target: https://travis-ci.org/adamchainz/gargoyle\n\n.. image:: https://readthedocs.org/projects/gargoyle-yplan/badge/?version=latest\n :target: https://gargoyle-yplan.readthedocs.io/en/latest/\n\n**Retired: this project is no longer maintained.** I (Adam Johnson) no longer\nhave time to continue maintaining this. I was doing so since I took on this\nproject, and its related packages\n`django-modeldict `__ and\n`nexus `__, for my ex-employer YPlan. If\nyou'd like to sponsor ongoing maintenance or take it over yourself, please\ncontact me@adamj.eu.\n\nGargoyle is a platform built on top of Django which allows you to switch functionality of your application on and off\nbased on conditions.\n\nIt was originally created by `Disqus `_, but due to the inactivity we at YPlan have\ntaken over maintenance on this fork.\n\nRequirements\n------------\n\nTested with all combinations of:\n\n* Python: 3.6\n* Django: 1.11, 2.0, 2.1, 2.2\n\nPython 3.4+ supported.\n\nInstall\n-------\n\nInstall it with **pip**:\n\n.. code-block:: bash\n\n pip install gargoyle-yplan\n\nIf you are upgrading from the original to this fork, you will need to run the following first, since the packages clash:\n\n.. code-block:: bash\n\n pip uninstall django-modeldict gargoyle\n\nFailing to do this will mean that ``pip uninstall gargoyle`` will also erase the files for ``gargoyle-yplan``, and\nsimilarly for our ``django-modeldict`` fork.\n\nDocumentation\n-------------\n\nThe documentation is available at `Read The Docs `_.\n\n\n\n\n=======\nHistory\n=======\n\nPending Release\n---------------\n\n.. Add new release notes below this line.\n\n2.1.1 (2019-05-17)\n------------------\n\n* **Retired: this project is no longer maintained.** I (Adam Johnson) no longer\n have time to continue maintaining this. I was doing so since I took on this\n project, and its related packages\n `django-modeldict `__ and\n `nexus `__, for my ex-employer YPlan. If\n you'd like to sponsor ongoing maintenance or take it over yourself, please\n contact me@adamj.eu.\n\n2.1.0 (2019-04-28)\n------------------\n\n* Drop Django 1.8, 1.9, and 1.10 support. Only Django 1.11+ is supported now.\n* Depend on `nexus-yplan >= 2.1.0` which also dropped old Django support.\n* Tested on Django 2.2. No changes were needed for compatibility.\n\n2.0.0 (2019-03-03)\n------------------\n\n* Drop Python 2 support, only Python 3.4+ is supported now.\n\n1.5.0 (2018-12-29)\n------------------\n\n* Added protection against conflicting conditions being added to a switch.\n\n1.4.0 (2018-08-05)\n------------------\n\n* Added ``initial_status`` option to ``GARGOYLE_SWITCH_DEFAULTS``\n\n1.3.0 (2017-10-28)\n------------------\n\n* Added missing argument message and documents for management commands\n* Django 2.0b1 support\n\n1.2.7 (2016-12-01)\n------------------\n\n* Added three built-in condition sets for checking if today is before or after\n a date - ``UTCTodayConditionSet``, ``AppTodayConditionSet``, and\n ``ActiveTimezoneTodayConditionSet``.\n\n1.2.6 (2016-08-03)\n------------------\n\n* Set requirements to exclude ``django-jsonfield==1.0.0`` which is broken for\n PostgreSQL - use ``1.0.1+`` instead.\n* Made ``gargoyle.register()`` usable as a decorator\n* Made ``gargoyle.unregister()`` return the boolean value of whether something\n was unregistered.\n* Fixed removing conditions where the value is the empty string.\n\n1.2.5 (2016-05-09)\n------------------\n\n* Removed debug prints from ``conditions.py`` which spammed your WSGI logs.\n\n1.2.4 (2016-05-02)\n------------------\n\n* Added a migration to tidy up ``bytes`` versus ``str`` for ``choices`` on\n ``Switch.status``. It's no-op as ``choices`` is in-memory only.\n\n1.2.3 (2016-04-11)\n------------------\n\n* Bugfix for ``@switches`` which didn't work on ``TestCase`` classes properly\n in 1.2.2.\n\n1.2.2 (2016-04-11)\n------------------\n\n* Removed the South Migrations, since South doesn't support Django 1.7+, and\n Gargoyle only supports Django 1.8+.\n* Added all ``__future__`` imports to all files for Python 2.7/3\n compatibility.\n* Made ``@switches`` usable as a class decorator for ``unittest.TestCase``\n classes as well, where it applies from ``setUpClass`` through all tests to\n ``tearDownClass``. This adds a dependency on ``contextdecorator`` on Python\n 2.7.\n\n1.2.1 (2016-02-25)\n------------------\n\n* Simplified autodiscovery code to use ``AppConfig.ready()``. It's no longer\n necessary to add a call to ``gargoyle.autodiscover()`` in your ``urls.py``,\n when not using Nexus.\n* Fixed url ``patterns`` warnings that appear on Django 1.9\n\n1.2.0 (2016-02-12)\n------------------\n\n* Fixed the splitting of ``Range`` conditions, a merge of disqus/gargoyle#55,\n thanks @matclayton.\n* Fixed the parsing of ``Range`` conditions for the Nexus admin interface.\n* Fixed the Nexus interface to work with Switches that contain dots in their\n names, a merge of disqus/gargoyle#73, thanks @Raekkeri.\n* Removed all inline javascript.\n* Added ``ifnotswitch`` template tag, a merge of disqus/gargoyle#92, thanks\n @mrfuxi.\n* Fixed Nexus admin interface for Switches with spaces in their keys, an issue\n reported in disqus/gargoyle#98, thanks @arnaudlimbourg.\n\n1.1.1 (2016-01-15)\n------------------\n\n* Fix jQuery Templates\n\n1.1.0 (2016-01-14)\n------------------\n\n*This version has a broken UI, please upgrade*\n\n* Support for Django 1.9\n* Use the YPlan fork of ``django-modeldict``\n* Removed support for Django 1.7\n* Added support for Python 3.4 and 3.5\n\n1.0.1 (2015-12-09)\n------------------\n\n* Fix requirements to use ``nexus-yplan``\u00a0not ``nexus``\n\n1.0.0 (2015-12-09)\n------------------\n\n* Forked by YPlan\n* Django 1.8 compatibility - use Django migrations\n\n0.11.0 (2015-02-03)\n-------------------\n\n* Better support for Django 1.6 and Django 1.7\n* Dropped support for Django 1.2 and Django 1.3\n* Use ``model_name`` in favour of ``module_name`` if available (deprecation in Django 1.6)\n* DateTimeFields now utilize the auto_now=True kwarg\n* Travis now tests on Django 1.6/Django 1.7\n\n0.7.3 (2012-01-31)\n------------------\n\n* Bump ModelDict version to handle expiration in Celery tasks.\n\n0.7.2 (2012-01-31)\n------------------\n\n* Correct issue with trying to serialize datetime objects.\n\n0.7.1 (2012-01-31)\n------------------\n\n* Changed the behavior of gargoyle.testutils.switches to monkey patch\n the is_active method which should solve scenarios where switches\n are reloaded during the context.\n\n0.7.0 (2012-01-27)\n------------------\n\n* Added confirmation message for enabling switches globally.\n* Added date modified and sorts for switches on index view.\n\n0.6.1 (2011-12-19)\n------------------\n\n* Require Nexus >= 0.2.0\n\n0.6.0 (2011-12-16)\n------------------\n\n* Added basic switch inheritance.\n* Added auto collapsing of switch details in interface.\n* Added simple search filtering of switches in interface.\n\n0.5.2 (2011-12-06)\n------------------\n\n* Improved display of Gargoyle dashboard widget.\n\n0.5.1 (2011-12-06)\n------------------\n\n* Fixed switch_condition_removed signal to pass ``switch`` instance.\n\n0.5.0 (2011-12-06)\n------------------\n\n* Updated signals to pass more useful information in each one (including the switch).\n\n0.4.0\n-----\n\n* The percent field is now available on all ModelConditionSet's by default.\n* Fixed a CSRF conflict issue with Nexus.\n\n0.3.0 (2011-08-15)\n------------------\n\n- Added gargoyle.testutils.with_switches decorator\n- Added gargoyle.testutils.SwitchContextManager\n\n0.2.4\n-----\n\n- Updated autodiscovery code to resemble Django's newer example\n- Updated django-modeldict to 1.1.6 to solve a threading issue with registration\n- Added GARGOYLE_AUTO_CREATE setting to disable auto creation of new switches\n- Added the ability to pass arbitrary objects to the ifswitch template tag.\n\n0.2.3 (2011-07-12)\n------------------\n\n- Ensure HostConditionSet is registered\n\n0.2.2 (2011-07-06)\n------------------\n\n- Moved tests outside of gargoyle namespace\n\n0.2.1\n-----\n\n- UI tweaks\n\n0.2.0\n-----\n\n- [Backwards Incompatible] SELECTIVE switches without conditions are now inactive\n- Added ConditionSet.has_active_condition, and support for default NoneType instances\n for global / environment checks.\n- Added HostConditionSet which allows you to specify a switch for a single\n server hostname\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/adamchainz/gargoyle", "keywords": "", "license": "Apache License 2.0", "maintainer": "Adam Johnson", "maintainer_email": "me@adamj.eu", "name": "gargoyle-yplan", "package_url": "https://pypi.org/project/gargoyle-yplan/", "platform": "", "project_url": "https://pypi.org/project/gargoyle-yplan/", "project_urls": { "Homepage": "https://github.com/adamchainz/gargoyle" }, "release_url": "https://pypi.org/project/gargoyle-yplan/2.1.1/", "requires_dist": [ "Django (>=1.11)", "django-modeldict-yplan (>=2.0.0)", "nexus-yplan (>=2.1.0)", "django-jsonfield (>=1.2.0)" ], "requires_python": ">=3.4", "summary": "Gargoyle is a platform built on top of Django which allows you to switch functionality of your application on and off based on conditions.", "version": "2.1.1" }, "last_serial": 5283971, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "7b8f5b4bcfa822e3fd773c772048c6c9", "sha256": "adbe667e41b681d2321e068eb79598fdf9e47a9564d3d7f1a40d4ac36f3e2d31" }, "downloads": -1, "filename": "gargoyle_yplan-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7b8f5b4bcfa822e3fd773c772048c6c9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 42735, "upload_time": "2015-12-09T17:52:47", "url": "https://files.pythonhosted.org/packages/de/a9/127e8b4fb23f225631ca9197dbc958cc2fa3b9c227b02f92afaf7979d531/gargoyle_yplan-1.0.0-py2.py3-none-any.whl" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "91fd52dd63911bf5423ec50630e074eb", "sha256": "a0b1b85eaa988c5da0f22e511f7e88d6e23e700505f8e3227b6d71a3bf55cd89" }, "downloads": -1, "filename": "gargoyle_yplan-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "91fd52dd63911bf5423ec50630e074eb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 42743, "upload_time": "2015-12-09T18:04:25", "url": "https://files.pythonhosted.org/packages/aa/49/01c214ede428724185b3672affc2b1243a2d5e23952a406ea5ab8a49d4ed/gargoyle_yplan-1.0.1-py2.py3-none-any.whl" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "c85845dac767d45a0d1ff7dd46937aa7", "sha256": "70b83d2f96c9928c8a94e22e616e7153e0c06718d99d6b8b80541a9cf00e5317" }, "downloads": -1, "filename": "gargoyle_yplan-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c85845dac767d45a0d1ff7dd46937aa7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 46195, "upload_time": "2016-01-14T10:51:09", "url": "https://files.pythonhosted.org/packages/d2/89/88c294de548abbefabd98a957d93f73b0a6f7712083e95a0300455baeb6c/gargoyle_yplan-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "573388c41baf10d9aa1acd24f85dceb0", "sha256": "4467fd8c7add981ca6f446f12ba3828253bed9736887aa9e3b9f5f624df0bf66" }, "downloads": -1, "filename": "gargoyle-yplan-1.1.0.tar.gz", "has_sig": false, "md5_digest": "573388c41baf10d9aa1acd24f85dceb0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34827, "upload_time": "2016-01-14T10:50:58", "url": "https://files.pythonhosted.org/packages/fc/4f/319e2395ef307f8c7b0d500180891bed7d359517ff66c489f4acb10c5955/gargoyle-yplan-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "1143111a855a16fb0f512eb37ff05a70", "sha256": "669ac876c495de362ea7ebd6f43aab370b33f8f56a8523eccf719b0921d402eb" }, "downloads": -1, "filename": "gargoyle_yplan-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1143111a855a16fb0f512eb37ff05a70", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 46006, "upload_time": "2016-01-15T10:50:55", "url": "https://files.pythonhosted.org/packages/d2/c0/090b7d060c9a7ef7d3460c785d09910e61c3fc649af14d508b98adb184a9/gargoyle_yplan-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3b0095fcced9dc6091bfc7dd9ed1446d", "sha256": "940aae3fce5e7cad5ce922164d2c9a71b83d6ca7f48e3d4b17c3b5b3107ece0f" }, "downloads": -1, "filename": "gargoyle-yplan-1.1.1.tar.gz", "has_sig": false, "md5_digest": "3b0095fcced9dc6091bfc7dd9ed1446d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34716, "upload_time": "2016-01-15T10:50:39", "url": "https://files.pythonhosted.org/packages/a9/a2/27bda23d2fcbd3b5d522ea7ec84fea0c3e394b7a7bfbf79ebf5f303578ba/gargoyle-yplan-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "c7b0cecc1d785076ad4881530da077e4", "sha256": "94bbab30b2728a80b19785c048c077bf81543626628e282dcb31000181c123e4" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c7b0cecc1d785076ad4881530da077e4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 50458, "upload_time": "2016-02-12T16:04:49", "url": "https://files.pythonhosted.org/packages/c0/98/f06ecccda5fe44d141a59a115d0b9f45a133bc428fa00f7928b356eaa387/gargoyle_yplan-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8861f0b064d854f6218bc77e1e9658e4", "sha256": "705c4d2634674c81553a6e530fcfb5d4527664ed91cc177e580262127c363433" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.0.tar.gz", "has_sig": false, "md5_digest": "8861f0b064d854f6218bc77e1e9658e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37397, "upload_time": "2016-02-12T16:02:59", "url": "https://files.pythonhosted.org/packages/8a/0b/e6c8a07b0143bd13f936bf2b8003ee3ba1a23fd062044966ab52ddc06fb7/gargoyle-yplan-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "4020325b79212dfe629d76364321bf52", "sha256": "6a18f4a3754262a587ff9193d26115b2cf954b118e65623af34bd77902f84b31" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4020325b79212dfe629d76364321bf52", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 38432, "upload_time": "2016-02-25T13:39:24", "url": "https://files.pythonhosted.org/packages/b0/bf/692ec7b0d23cd0175df1fa98406153c6cca6539b310cc7c6f6fbf33b4b84/gargoyle_yplan-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e660c2b78cc5808e40c9c12f5dd7b32d", "sha256": "ca512de9b5a371da0efaca26c234a7e660c998f50491a95c25c7c8b6f1ee41bb" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.1.tar.gz", "has_sig": false, "md5_digest": "e660c2b78cc5808e40c9c12f5dd7b32d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37303, "upload_time": "2016-02-25T13:39:30", "url": "https://files.pythonhosted.org/packages/c1/93/bdcadbb88bc45887245e8452678c9c1ba815cc4a3f9aa4304063fc22e6e7/gargoyle-yplan-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "017b260397d318f06c5b4c6cc24aca76", "sha256": "faff8e389de774234448788b35706138f5177bdc42d0f5d28553fe91c7b97954" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "017b260397d318f06c5b4c6cc24aca76", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 46436, "upload_time": "2016-04-11T13:28:23", "url": "https://files.pythonhosted.org/packages/c7/68/34f3792a1bd820b89001676466c08fbe330f78d587a426e2777e616a7c9b/gargoyle_yplan-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e5d633b8d2ee8a06eb976e3ee2322c2a", "sha256": "c0120d5bcf0f1172171b8a1cd7e629d45089c645bc521a6cdc6f7e76d72dfb9b" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.2.tar.gz", "has_sig": false, "md5_digest": "e5d633b8d2ee8a06eb976e3ee2322c2a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39320, "upload_time": "2016-04-11T13:28:33", "url": "https://files.pythonhosted.org/packages/0d/f1/c987122b7b2d75836e461bd4e3ae5801986a9c26d6134eb04c52d3c07759/gargoyle-yplan-1.2.2.tar.gz" } ], "1.2.3": [ { "comment_text": "", "digests": { "md5": "051a21b42af3935115345284b2903ba8", "sha256": "9abb7b8684a9b4da93f385882b82f1e97f10d57c634376d538e7209554fa421f" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "051a21b42af3935115345284b2903ba8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 46452, "upload_time": "2016-04-11T13:49:40", "url": "https://files.pythonhosted.org/packages/95/14/9fc58369b5062ddc85bcc009c851286fc26e686c1f7d5d7b1a26519d8e0f/gargoyle_yplan-1.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6eede4d55108857f132d1f38ea603e30", "sha256": "80fbfe569a187dda6c429e71fc4668d2f2cb67969895782a58ab1e41fb38e3b5" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.3.tar.gz", "has_sig": false, "md5_digest": "6eede4d55108857f132d1f38ea603e30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39401, "upload_time": "2016-04-11T13:51:20", "url": "https://files.pythonhosted.org/packages/0e/8b/e68a394a0174304b0559a8e2070dcdbd41f72ea07b308edc6b231497c5ee/gargoyle-yplan-1.2.3.tar.gz" } ], "1.2.4": [ { "comment_text": "", "digests": { "md5": "c19b2485e61652f6d6d105e485f9f1f6", "sha256": "b1e47824f2c5f19375af02e921371e811c1255eb00d53ac0ceac5933e808f71c" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c19b2485e61652f6d6d105e485f9f1f6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 47116, "upload_time": "2016-05-02T22:26:50", "url": "https://files.pythonhosted.org/packages/24/0b/ecde0a68283a646cefc02015bfa6b9cfffb5f34dfbd98cddbd3f8283811b/gargoyle_yplan-1.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cc184e86a443b3654bffab20811fe18e", "sha256": "226dbcd38566c9b8fd61fcc6163b0df14115ede7805e4fdebf7d5432a84897c2" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.4.tar.gz", "has_sig": false, "md5_digest": "cc184e86a443b3654bffab20811fe18e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45677, "upload_time": "2016-05-02T22:27:04", "url": "https://files.pythonhosted.org/packages/ba/78/52fa9001a6083cb778d5803d22e021d5766c9abce04af9fa51f50336a9e1/gargoyle-yplan-1.2.4.tar.gz" } ], "1.2.5": [ { "comment_text": "", "digests": { "md5": "6af2a919bd5c2c8f709053f08c25676b", "sha256": "5d74e482ce730ca2c44b31f815b44ef1cd37bd07060eee34ac19230e66b14e57" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6af2a919bd5c2c8f709053f08c25676b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 47170, "upload_time": "2016-05-09T21:50:07", "url": "https://files.pythonhosted.org/packages/06/2d/e364916dbbfbf30c1f89be575e10de8e271fd9187f4d7cdcd427cac41ebb/gargoyle_yplan-1.2.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0623318b46261a5923ebddc0a0de7110", "sha256": "6b54d5423834f39577d5e821e95eb51069cc82b04f5da670e43ff3ce1b775672" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.5.tar.gz", "has_sig": false, "md5_digest": "0623318b46261a5923ebddc0a0de7110", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39645, "upload_time": "2016-05-09T21:50:25", "url": "https://files.pythonhosted.org/packages/47/a6/682bd592892cf9cbc84a28b3a29ddbbff78c1ae6876549fe1656cf553b34/gargoyle-yplan-1.2.5.tar.gz" } ], "1.2.6": [ { "comment_text": "", "digests": { "md5": "f5316b52dccfbb58a8155ccaffbf9038", "sha256": "0c22d55654e45c3df2a9e1dc62c64a7a8e298276416c6ac97132d9a4f9d26805" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f5316b52dccfbb58a8155ccaffbf9038", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 47522, "upload_time": "2016-08-03T20:16:30", "url": "https://files.pythonhosted.org/packages/d0/aa/65f6ca1872a5e41aef04bce9117aab37dfd5e38676fcae513e97696826d5/gargoyle_yplan-1.2.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7d6cb7a80d701cb563ae5e8b43ecc012", "sha256": "16adbb4fd30670e9a32d63da5f73c37e56757b0cc6b1eb62b60db101cd670e59" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.6.tar.gz", "has_sig": false, "md5_digest": "7d6cb7a80d701cb563ae5e8b43ecc012", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41167, "upload_time": "2016-08-03T20:16:27", "url": "https://files.pythonhosted.org/packages/58/a2/dab4a264b3e1eccbe058c151100c715721ed1c7249eed686b2e36aa24835/gargoyle-yplan-1.2.6.tar.gz" } ], "1.2.7": [ { "comment_text": "", "digests": { "md5": "c3f72314d81c4de07985dd1f34af1a12", "sha256": "8129c36485252d7ccf21580ffedd509a8b20bb8446bce70b2ac2e36398a3aa4b" }, "downloads": -1, "filename": "gargoyle_yplan-1.2.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c3f72314d81c4de07985dd1f34af1a12", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 48082, "upload_time": "2016-12-01T08:51:55", "url": "https://files.pythonhosted.org/packages/88/dd/4c43630353b62ccf35450b54d513d831de3a558ef8e4eb874c7adf42c870/gargoyle_yplan-1.2.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "90ce7a0c304d1237e04353501e6584bf", "sha256": "36d1a96a55c19489991c112e1ce44ea71dd97c452178a3614749507008483b85" }, "downloads": -1, "filename": "gargoyle-yplan-1.2.7.tar.gz", "has_sig": false, "md5_digest": "90ce7a0c304d1237e04353501e6584bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41690, "upload_time": "2016-12-01T08:51:53", "url": "https://files.pythonhosted.org/packages/7a/f9/85eb64b57b1b0544fbd0899149a05bd21d73672047c4e9c05e82ab0860e3/gargoyle-yplan-1.2.7.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "792666086d9a2f6c6516de8394d2308c", "sha256": "9e81eb139d581da601dd6a8139a110770b1961701796e57af1d4d1e53fab0c5d" }, "downloads": -1, "filename": "gargoyle_yplan-1.3.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "792666086d9a2f6c6516de8394d2308c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 52500, "upload_time": "2017-10-28T22:00:46", "url": "https://files.pythonhosted.org/packages/4e/93/e8edf2619013c53e83ba79d8e85daa49c948356daaf1f8e3c08e434a3379/gargoyle_yplan-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17a162c932f078805c519c7e629692ed", "sha256": "2188562bff29c485627bf9b4ca24cdd69ce35fab6deddf1eab8eeac1fa589a52" }, "downloads": -1, "filename": "gargoyle-yplan-1.3.0.tar.gz", "has_sig": true, "md5_digest": "17a162c932f078805c519c7e629692ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41577, "upload_time": "2017-10-28T22:00:43", "url": "https://files.pythonhosted.org/packages/6d/20/c945da66890c9ffb59776692eb99b14bbdd97631885e0fe87610a1f26767/gargoyle-yplan-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "f75f31475936df4043a6c5d27028e72e", "sha256": "dda4498420d73536268523b89662af27d030e52eda08ee1ab72b85ba108ff2ac" }, "downloads": -1, "filename": "gargoyle_yplan-1.4.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "f75f31475936df4043a6c5d27028e72e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 49168, "upload_time": "2018-08-04T22:42:22", "url": "https://files.pythonhosted.org/packages/15/a7/264eaf8d0ec7ed74a51a7713940c93d11fb25e83450ab09b60fd02821e80/gargoyle_yplan-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6fceef63886728ccac00672211ed8f86", "sha256": "c6b1f5280c7eab20136900009683eea8c3d36d9e4367b4871d10e6650d64f139" }, "downloads": -1, "filename": "gargoyle-yplan-1.4.0.tar.gz", "has_sig": true, "md5_digest": "6fceef63886728ccac00672211ed8f86", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43762, "upload_time": "2018-08-04T22:42:18", "url": "https://files.pythonhosted.org/packages/80/dc/4c85cddf135a133d666234e97b833d9432d2fd8499b4adc5fa221c8bc833/gargoyle-yplan-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "7991f1f15690397fb21438c3da190033", "sha256": "93e2e3d2767aceb18fcf3fffd5b7a54f7310356ef02e0681e0f2d1db59758666" }, "downloads": -1, "filename": "gargoyle_yplan-1.5.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "7991f1f15690397fb21438c3da190033", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 49312, "upload_time": "2018-12-29T18:47:33", "url": "https://files.pythonhosted.org/packages/47/ea/830610da86a4cd6970ba39dfea15aa5c18dd7cfbf1a28c32ed7d8e5973c0/gargoyle_yplan-1.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "db8a3f7a4c3b7203cf4c8f211c3c2bbd", "sha256": "d16f8d4a6d15c6218120922166bcbd6b8fc5e8c399d19902e8e222facda9919e" }, "downloads": -1, "filename": "gargoyle-yplan-1.5.0.tar.gz", "has_sig": true, "md5_digest": "db8a3f7a4c3b7203cf4c8f211c3c2bbd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43966, "upload_time": "2018-12-29T18:47:30", "url": "https://files.pythonhosted.org/packages/34/b6/f0a0c01da28fc150f12682b62a914b5e7c6589bd6d38784d95ec0ff6b9ed/gargoyle-yplan-1.5.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "f299fb9ad695ae0e425f25784c2048bc", "sha256": "c3190e3708ecc9491fabb6ecf1b17f36788bdfce1b89a0d1d2449f35c08e3944" }, "downloads": -1, "filename": "gargoyle_yplan-2.0.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "f299fb9ad695ae0e425f25784c2048bc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.4", "size": 48902, "upload_time": "2019-03-03T19:01:56", "url": "https://files.pythonhosted.org/packages/a6/42/be05cdd28997df4057c152dde8594275860b15df8eb69a3dd70f21e7bceb/gargoyle_yplan-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "61e341c8288467caaed84ec18d715efc", "sha256": "d9763c4a6e192fd43868536f3fc89ec9834f4ae944874fa3d695a99cde968d5b" }, "downloads": -1, "filename": "gargoyle-yplan-2.0.0.tar.gz", "has_sig": true, "md5_digest": "61e341c8288467caaed84ec18d715efc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 43667, "upload_time": "2019-03-03T19:01:59", "url": "https://files.pythonhosted.org/packages/71/de/8c080ce2fbd722b6465520ee8cd0cea3780edf84a5227d0586ec7b6717ac/gargoyle-yplan-2.0.0.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "9806c5e91e81b4aa55b29845cd76c888", "sha256": "8b7e9ed9697b07150be2ffbf41a534ac542607d28e493675f7324c4cc98fa7a4" }, "downloads": -1, "filename": "gargoyle_yplan-2.1.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "9806c5e91e81b4aa55b29845cd76c888", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.4", "size": 48845, "upload_time": "2019-04-28T22:24:39", "url": "https://files.pythonhosted.org/packages/2a/e2/57b4a1d9f6f4376ba6f9fefb663e9926749dbdb15f87b7ff78797279f531/gargoyle_yplan-2.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "df60a08c13735abfd8fdb21c9f8d59ec", "sha256": "daf63d500714c4639226829c1cd6b30899586b826c0555508f1e26305cc33fe9" }, "downloads": -1, "filename": "gargoyle-yplan-2.1.0.tar.gz", "has_sig": true, "md5_digest": "df60a08c13735abfd8fdb21c9f8d59ec", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 43772, "upload_time": "2019-04-28T22:24:42", "url": "https://files.pythonhosted.org/packages/53/d1/b0a5579170863da4c118b4745c00c65c168a7a80d7f20439d01b7f51a68c/gargoyle-yplan-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "d6408da1862d43d9372b2f1f1259b6c2", "sha256": "af79aca452277b99a15d6a4c6ac5857f61a40ba75663934fbdc6732fa6f4ad27" }, "downloads": -1, "filename": "gargoyle_yplan-2.1.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "d6408da1862d43d9372b2f1f1259b6c2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.4", "size": 49061, "upload_time": "2019-05-17T20:49:41", "url": "https://files.pythonhosted.org/packages/6d/0b/4949850cd1e9e463b5dc09e953e991ed94e87b130e909863705ad3457f69/gargoyle_yplan-2.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "972c1f6b5f2b21300fd25cc1519ed3a6", "sha256": "578708be36e1a1657802b34ef6146d6d1bfd66b99ab21cc686d270e856c3fc24" }, "downloads": -1, "filename": "gargoyle-yplan-2.1.1.tar.gz", "has_sig": true, "md5_digest": "972c1f6b5f2b21300fd25cc1519ed3a6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 44325, "upload_time": "2019-05-17T20:49:43", "url": "https://files.pythonhosted.org/packages/f2/fb/de0d2a8e570e86b1f6efacd0185ab3f45cda74f6df50689dd489d79d8be0/gargoyle-yplan-2.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d6408da1862d43d9372b2f1f1259b6c2", "sha256": "af79aca452277b99a15d6a4c6ac5857f61a40ba75663934fbdc6732fa6f4ad27" }, "downloads": -1, "filename": "gargoyle_yplan-2.1.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "d6408da1862d43d9372b2f1f1259b6c2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.4", "size": 49061, "upload_time": "2019-05-17T20:49:41", "url": "https://files.pythonhosted.org/packages/6d/0b/4949850cd1e9e463b5dc09e953e991ed94e87b130e909863705ad3457f69/gargoyle_yplan-2.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "972c1f6b5f2b21300fd25cc1519ed3a6", "sha256": "578708be36e1a1657802b34ef6146d6d1bfd66b99ab21cc686d270e856c3fc24" }, "downloads": -1, "filename": "gargoyle-yplan-2.1.1.tar.gz", "has_sig": true, "md5_digest": "972c1f6b5f2b21300fd25cc1519ed3a6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 44325, "upload_time": "2019-05-17T20:49:43", "url": "https://files.pythonhosted.org/packages/f2/fb/de0d2a8e570e86b1f6efacd0185ab3f45cda74f6df50689dd489d79d8be0/gargoyle-yplan-2.1.1.tar.gz" } ] }