{ "info": { "author": "Nothrbridge Development Konrad & Schneider GbR", "author_email": "mail@nb-dev.de", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.10", "Framework :: Django :: 1.11", "Framework :: Django :: 1.6", "Framework :: Django :: 1.7", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "|PyPI version| |Build Status| |Coverage Status| |Downloads| |Supported\nPython versions| |Supported Django versions| |License| |Codacy Badge|\n|Requirements Status|\n\ndjango-pluggableappsettings\n===========================\n\nThis app provides a baseclass to easily realize AppSettings for any\ndjango project. The advantage of using an AppSettings class lies in the\npossibility for the programmer to assign default values for settings if\nthe setting is not present in the main settings.py\n\nRequirements:\n-------------\n\n- Django >= 1.6\n\nQuick start\n-----------\n\n1. Install django-pluggableappsettings\n\n - From the pip repository:\n ``pip install django-pluggableappsettings``\n - or directly from github:\n \\`\\ ``pip install git+git://github.com/NB-Dev/django-pluggableappsettings.git``\n\n2. Create your AppSettings class in any of your project's files. E.g. in\n 'app\\_settings.py'.\n\n3. Define your settings by setting the class attributes as one of the\n provided settings types\n\n ::\n\n from django_pluggableappsettings import AppSettings, Setting\n\n class MyAppSettings(AppSettings):\n MY_SETTING = Setting('DEFAULT_VALUE')\n\n4. Access the setting from anywhere:\n\n ::\n\n from app_settings import MyAppSettings\n setting = MyAppSettings.MY_SETTING\n\nProvided Setting Types\n----------------------\n\nDifferent setting types are provided with the package:\n\nSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nThe most basic setting that looks up the setting's value from the\n``settings.py`` usually the attribute name is used for the detection.\nIf, however, the ``settings_name`` parameter is given, this name is used\ninstead for the lookup in the ``settings.py``. It simply returns the\nvalue from the settings.py or, if that is not set, the default value. If\nno default value is provided and the setting is not set in your\nsettings.py, an ``AttributeError`` is thrown. Also a list of aliases can\nbe passed to allow for multiple names of one setting (e.g. for backwards\ncompatibility)\n\nCalledOnceSetting(default\\_value, setting\\_name, aliases, force\\_callable=False)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nChecks whether the value is callable and calls it once before returning.\nSubsequent accesses to this setting return the cached return value of\nthe first call. If ``force_callable`` is ``True``, the setting throws a\n``ValueError`` if the value of the setting is not callable.\n\nCalledEachTimeSetting(default\\_value, setting\\_name, aliases, force\\_callable=False)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nChecks whether the value is callable. If so, the callable is called each\ntime when the setting is accessed. If ``force_callable`` is ``True``,\nthe setting throws a ``ValueError`` if the value of the setting is not\ncallable.\n\nClassSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nBehaves as a Setting but accepts only Classes or dotted paths to classes\nas values. If the value is a dotted path, the path is translated to a\nclass before returning, so the returned value is always a class.\n\nIntSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nAccepts only values that are of type int or can be casted to type int\n\nFloatSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nAccepts only values of type float of values that can be casted to type\nfloat\n\nStringSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nAccepts only strings as value\n\nIterableSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nMakes sure that the value is an iterable\n\nTypedSetting(default\\_value, setting\\_name, aliases)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nA class that checks whether the given value is of a certain type and\noptionally allows casting the value to that type. Used as a base class\nfor all type checking classes and can be easily subclassed to allow\nchecking of various value types.\n\nTo create your own type checking setting simply subclass this type and\nset the class attributes ``_setting_type`` and ``_cast_value`` according\nto your needs. The ``_setting_type`` attribute specifies the desired\ntype while the ``_cast_value`` attribute specifies whether the value\nshould be casted to the ``_setting_type``. A ``_cast_value`` of ``True``\nessentially results in a call of ``value = _setting_type(value)``.\n\nE.g. The ``IntSetting`` is defined as follows:\n\n::\n\n class IntSetting(TypedSetting):\n \"\"\"\n An integer setting\n \"\"\"\n _setting_type = int\n _cast_value = True\n\nIf you need more elaborate casting functions, you can overwrite the\n``cast_value(self, value)`` function of your type which should return\nthe casted value.\n\nAccessing Values\n----------------\n\nYou can access any setting by simply importing your AppSettings class\nand accessing the corresponding attribute.\n\nTests with AppSettings\n----------------------\n\nThe package provides a convenient ``override_appsettings`` decorator /\ncontext manager to allow for the temporary override of AppSettings\nvalues. It is used just like Django's ``override_settings`` decorator\nbut with an extra argument: The AppSettings-Class that is to be altered\nhas to be passed in as first argument. Following should be keyword,\nvalue arguments where the keyword is the name of the setting to be\noverridden and the value is the desired return value.\n\nE.g.:\n\n::\n\n from django_pluggableappsettings.test.utils import override_appsettings\n from myapp.appsettings import MyAppSettings\n\n class SomeTestCase(TestCase):\n @override_appsettings(MyAppSettings, SETTING='new_value')\n def test_decorated(self):\n MyAppSettings.SETTING # This returns 'new_value'\n \n def test_context_manager(self):\n with override_appsettings(MyAppSettings, SETTING='new_value'):\n MyAppSettings.SETTING # This returns 'new_value'\n\nRunning the tests\n-----------------\n\nThe included tests can be run standalone by running the\n``tests/runtests.py`` script. You need to have Django and mock installed\nfor them to run. If you also want to run coverage, you need to install\nit before running the tests\n\nCHANGELOG\n---------\n\nv. 1.1.6 (2017-05-19)\n~~~~~~~~~~~~~~~~~~~~~\n\n- Fixing the README to be correctly displayed on pypi\n\nv. 1.1.5 (2017-05-19)\n~~~~~~~~~~~~~~~~~~~~~\n\n- Version bump as I forgot to convert the readme. Added a publish.py to\n automate publishing in future.\n\nv. 1.1.4 (2017-05-19)\n~~~~~~~~~~~~~~~~~~~~~\n\n- Adding tests for Django 1.10 and 1.11.\n\nv. 1.1.3 (2016-01-27)\n~~~~~~~~~~~~~~~~~~~~~\n\n- Adding the possibility to look for a settings value under a different\n name in the ``settings.py`` by usage of the ``settings_name``\n parameter\n- Fixing a bug that caused all ``AppSettings`` instances to share the\n same cache of loaded settings. This could cause the settings to be\n overridden by other settings\n\nv. 1.1.2 (2016-01-15)\n~~~~~~~~~~~~~~~~~~~~~\n\n- Adding an ``override_appsettings`` decorator / context manager to\n allow the overriding of AppSettings values in test\n- Added the possibility to retrieve non-\\ ``Setting`` attributes from\n the ``AppSettings`` class to allow for custom attributes or custom\n functions.\n\nv.1.1.1\n~~~~~~~\n\n- I screwed up with pypi and need to bump the version number - Sorry\n\nv.1.1.0\n~~~~~~~\n\n- Changing structure of Setting class to being able to add repeatedly\n called functions as setting.\n\n**Warning**: This breaks compatibility of custom settings classes. To\nfix this, simply rename the ``get`` method of your custom classes to\n``_get`` - Added a ``CalledEachTimeSetting`` that takes a callable that\nis called each time the setting's value is accessed - Renamed the\n``CallableSetting`` to ``CalledOnceSetting`` to make the differentiation\nto the ``CalledEachTimeSetting`` clearer. The old name will stay as an\nalias for now. - The ``CalledEachTimeSetting`` and the\n``CalledOnceSetting`` take an ``force_callable`` kwarg to set whether\nthe value of the setting is enforced to be callable or not.\n\nv.1.0.0\n~~~~~~~\n\n- Releasing first stable version\n\nv.0.2.3\n~~~~~~~\n\n- Added 'aliases' parameter to ``Setting`` to allow multiple names for\n one setting (e.g. for backwards compatibility)\n\nv.0.2.2\n~~~~~~~\n\n- Extended code to also work with Python 3\n\nv.0.2.1\n~~~~~~~\n\n- Added ``TypedSetting`` Setting type which allows for the setting to\n be typechecked\n- Added ``IntSetting``, ``FloatSetting``, ``StringSetting`` and\n ``\u00ccterableSetting``` as subtypes of ```TypedSetting``\n\nv.0.2.0\n~~~~~~~\n\n- Added the changelog\n- Redesign of settings to allow different types of settings that can\n now also provide type checking.\n- Settings are now explicitly defined and no ``_DEFAULT_`` prefix is\n needed anymore\n- Also no staticmethod decorator is needed anymore\n\nToDos:\n------\n\n- Allow the easy definition of multiple allowed setting types so that a\n setting could e.g. accept either string or an Integer\n- Allow the chaining of callables with typed settings to check that the\n return value of a callable is of the correct type\n\nMaintainers\n-----------\n\nThis Project is maintaned by `Northbridge Development Konrad & Schneider\nGbR `__ Softwareentwicklung\n\n.. |PyPI version| image:: https://img.shields.io/pypi/v/django-pluggableappsettings.svg\n :target: http://badge.fury.io/py/django-pluggableappsettings\n.. |Build Status| image:: https://travis-ci.org/NB-Dev/django-pluggableappsettings.svg?branch=master\n :target: https://travis-ci.org/NB-Dev/django-pluggableappsettings\n.. |Coverage Status| image:: https://coveralls.io/repos/NB-Dev/django-pluggableappsettings/badge.svg?branch=master&service=github\n :target: https://coveralls.io/github/NB-Dev/django-pluggableappsettings?branch=master\n.. |Downloads| image:: https://img.shields.io/pypi/dm/django-pluggableappsettings.svg\n :target: https://pypi.python.org/pypi/django-pluggableappsettings/\n.. |Supported Python versions| image:: https://img.shields.io/pypi/pyversions/django-pluggableappsettings.svg\n :target: https://pypi.python.org/pypi/django-pluggableappsettings/\n.. |Supported Django versions| image:: https://img.shields.io/badge/Django-1.6%2C%201.7%2C%201.8%2C%201.9%2C%201.10%2C%201.11-brightgreen.svg\n :target: https://pypi.python.org/pypi/django-pluggableappsettings/\n.. |License| image:: https://img.shields.io/pypi/l/django-pluggableappsettings.svg\n :target: https://pypi.python.org/pypi/django-pluggableappsettings/\n.. |Codacy Badge| image:: https://api.codacy.com/project/badge/grade/79d4fa62bb77478392d9535067d010c6\n :target: https://www.codacy.com/app/tim_11/django-pluggableappsettings\n.. |Requirements Status| image:: https://requires.io/github/NB-Dev/django-pluggableappsettings/requirements.svg?branch=master\n :target: https://requires.io/github/NB-Dev/django-pluggableappsettings/requirements/?branch=master", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/NB-Dev/django-pluggableappsettings", "keywords": "", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "django-pluggableappsettings", "package_url": "https://pypi.org/project/django-pluggableappsettings/", "platform": "", "project_url": "https://pypi.org/project/django-pluggableappsettings/", "project_urls": { "Homepage": "http://github.com/NB-Dev/django-pluggableappsettings" }, "release_url": "https://pypi.org/project/django-pluggableappsettings/1.1.6/", "requires_dist": null, "requires_python": "", "summary": "A convenience class for providing default values for a django app setting.", "version": "1.1.6" }, "last_serial": 2885309, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "45d86c464405144ecd1986d103659d66", "sha256": "b145996b0eb465f5204e7d6fbc785154dbb5d50a9fc31858c192bf1dc8c6372f" }, "downloads": -1, "filename": "django-pluggableappsettings-0.1.1.tar.gz", "has_sig": false, "md5_digest": "45d86c464405144ecd1986d103659d66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4772, "upload_time": "2015-08-17T14:53:28", "url": "https://files.pythonhosted.org/packages/9f/c9/336251aeded0e83f9091264f94c4993f3645345e858607040239088fc9a0/django-pluggableappsettings-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "69562cd9b2fc9e952e4e2f13fa7c2d82", "sha256": "703ad0b12e5a383a4a069073907a62019e47f4a79eeda134b836249f3de1f1fa" }, "downloads": -1, "filename": "django-pluggableappsettings-0.1.2.tar.gz", "has_sig": false, "md5_digest": "69562cd9b2fc9e952e4e2f13fa7c2d82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4435, "upload_time": "2015-08-17T15:00:42", "url": "https://files.pythonhosted.org/packages/0c/1f/7bdeb2190941e6d4c9fb92841ba6251ee1a8eb99a97ea31de63abdc691a6/django-pluggableappsettings-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "e57bd9b252e0e7b0b1e52c01432a946f", "sha256": "e85c68bcd1426341a1f9dbbffcc2c7b7a0b35e37c6e8ed81d490e53defebfe79" }, "downloads": -1, "filename": "django-pluggableappsettings-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e57bd9b252e0e7b0b1e52c01432a946f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4541, "upload_time": "2015-08-18T07:52:07", "url": "https://files.pythonhosted.org/packages/00/91/f2df98a9e8e3d621a1c067cc866ca12af6e1a2f15b89175b91ba91f088cf/django-pluggableappsettings-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "3d3b0909b98caa43e61cb390e09924a5", "sha256": "a3e76ee4c77d7de00be1749b0397c108964a5399ff6011121735bf4994d7e841" }, "downloads": -1, "filename": "django-pluggableappsettings-0.1.4.tar.gz", "has_sig": false, "md5_digest": "3d3b0909b98caa43e61cb390e09924a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4533, "upload_time": "2015-08-18T07:58:00", "url": "https://files.pythonhosted.org/packages/57/38/b4232fa671e3889cf65caf90177821616141870529b2f750dcde8e38f244/django-pluggableappsettings-0.1.4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a658d51b94e97270205841516c4f5fac", "sha256": "0b17973c21460f468decc57ee97d29b5c6070c59f27a32d7fc37b6c858d79611" }, "downloads": -1, "filename": "django-pluggableappsettings-0.2.0.tar.gz", "has_sig": false, "md5_digest": "a658d51b94e97270205841516c4f5fac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5466, "upload_time": "2015-08-28T15:02:01", "url": "https://files.pythonhosted.org/packages/78/61/3a706c2bec15c0c56ab89c3229898bace473b9b1c74bfd91e870f2155962/django-pluggableappsettings-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "5b2ccb61090e6bc2b7fd2bab85fd8707", "sha256": "4b5bb3fbf2e3447691b1a589c94448670c1571bd7f7d41e082b7b2259231edb0" }, "downloads": -1, "filename": "django-pluggableappsettings-0.2.1.tar.gz", "has_sig": false, "md5_digest": "5b2ccb61090e6bc2b7fd2bab85fd8707", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6551, "upload_time": "2015-10-02T04:40:05", "url": "https://files.pythonhosted.org/packages/c1/b7/7e01522aa776b103c5432239f2c5300cb989103793196fbb497a4778de12/django-pluggableappsettings-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "9db9cdcee8aaf4140e0e62b0e5e16099", "sha256": "b8a33803f0178921002cd8499fe8c6b0ab76dce36dd6db77ca042fda921a72e6" }, "downloads": -1, "filename": "django-pluggableappsettings-0.2.2.tar.gz", "has_sig": false, "md5_digest": "9db9cdcee8aaf4140e0e62b0e5e16099", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6621, "upload_time": "2015-10-02T08:08:18", "url": "https://files.pythonhosted.org/packages/34/30/4e0d07ca7c70791899f540df62bdc4d791bf846f40d025c44a232a1d2ba8/django-pluggableappsettings-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "b9114083554a371523046ef4c22723f8", "sha256": "fccdda06b6083574db4c854f2371e4d76652feea5fb857cd448dd88a6401ed0f" }, "downloads": -1, "filename": "django-pluggableappsettings-0.2.3.tar.gz", "has_sig": false, "md5_digest": "b9114083554a371523046ef4c22723f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6917, "upload_time": "2015-11-02T15:57:00", "url": "https://files.pythonhosted.org/packages/84/43/44270beed9128298251383f319776ccdd81bfa2fa1bde4dba6bca0831500/django-pluggableappsettings-0.2.3.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "7bc7112567fcc8b03337fda13cffb61a", "sha256": "32a55358228ccfc086e8fa0ec3bbd7a5bcfec34c2e56ecd2a10c5e02c97f51d1" }, "downloads": -1, "filename": "django-pluggableappsettings-1.0.0.tar.gz", "has_sig": false, "md5_digest": "7bc7112567fcc8b03337fda13cffb61a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6925, "upload_time": "2015-12-08T11:00:22", "url": "https://files.pythonhosted.org/packages/d9/f3/d1b9d71aa37d25b8d2a8453bca9ea2050d3f11cd2e21b2273a2e3cbbca9d/django-pluggableappsettings-1.0.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "aad9a66ecfb6f6cba1bb2b4efeeb2194", "sha256": "78fe5c2b8feab457355202cfd6147ea5526bf752491b99a174a1271370d7c40b" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.1.tar.gz", "has_sig": false, "md5_digest": "aad9a66ecfb6f6cba1bb2b4efeeb2194", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8083, "upload_time": "2016-01-11T09:53:38", "url": "https://files.pythonhosted.org/packages/cf/e0/b8613dcfaaa95f64ae3688bfe13912e7b075b61671be5f2f79e126a553ec/django-pluggableappsettings-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "0ae7a54b865c1e4dd76d8e9f1fc8a3c7", "sha256": "f62f0d51476587ee362a38c814d501895da3cb6930f21f8c320b8770b8314a9f" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.2.tar.gz", "has_sig": false, "md5_digest": "0ae7a54b865c1e4dd76d8e9f1fc8a3c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9480, "upload_time": "2016-01-15T09:35:49", "url": "https://files.pythonhosted.org/packages/dc/92/dd13db9e54dfa2b8e66d7c6b169e0dc9444c745a1581ae4e843600ee8c02/django-pluggableappsettings-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "5c6a32f813c68e77ecf832045be09161", "sha256": "37651ee9fceaad4bf40146b26a43964c6b5d48f39f2b42448b9db4e366dd33cc" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.3.tar.gz", "has_sig": false, "md5_digest": "5c6a32f813c68e77ecf832045be09161", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9755, "upload_time": "2016-01-27T08:58:32", "url": "https://files.pythonhosted.org/packages/21/42/5c4761cdf3f2206b41d120c24683e8d7bdb634c414e3c6909c2da81dc3bc/django-pluggableappsettings-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "f2dc504b17b94235f34125e98346d4c9", "sha256": "4c2fb206d1a211f57a03b05eb0ee38d50cc57952c1faa3fe27a5cfa6010ae4a8" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.4.tar.gz", "has_sig": false, "md5_digest": "f2dc504b17b94235f34125e98346d4c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9986, "upload_time": "2017-05-19T08:12:10", "url": "https://files.pythonhosted.org/packages/df/03/3e07666ec6820001f6fae5233315441c832b3f1fb78ec19d071c6e351fc5/django-pluggableappsettings-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "7531f0d6e7806645eb12d57bfd086fc5", "sha256": "4c68f8a94482838ecf183bff4d4816a2d61946dde5c592bcf25c7da700cf31fa" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.5.tar.gz", "has_sig": false, "md5_digest": "7531f0d6e7806645eb12d57bfd086fc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10190, "upload_time": "2017-05-19T08:34:34", "url": "https://files.pythonhosted.org/packages/74/90/71816fe0527cfd62a1cb52afbdf9944f4a6c65e264abe51050c50d02968e/django-pluggableappsettings-1.1.5.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "8f8da8d21c658043ffd803dd03284c0a", "sha256": "da33a8261cd539b3b26e3750b1aa7cf3508b8ecf1dd7d247c80cd83169eb1291" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.6.tar.gz", "has_sig": false, "md5_digest": "8f8da8d21c658043ffd803dd03284c0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10231, "upload_time": "2017-05-19T10:44:11", "url": "https://files.pythonhosted.org/packages/f5/70/84b730d26f7b379a7db78326ca31bc467aa536849475afb6fee25bd57328/django-pluggableappsettings-1.1.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8f8da8d21c658043ffd803dd03284c0a", "sha256": "da33a8261cd539b3b26e3750b1aa7cf3508b8ecf1dd7d247c80cd83169eb1291" }, "downloads": -1, "filename": "django-pluggableappsettings-1.1.6.tar.gz", "has_sig": false, "md5_digest": "8f8da8d21c658043ffd803dd03284c0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10231, "upload_time": "2017-05-19T10:44:11", "url": "https://files.pythonhosted.org/packages/f5/70/84b730d26f7b379a7db78326ca31bc467aa536849475afb6fee25bd57328/django-pluggableappsettings-1.1.6.tar.gz" } ] }