{ "info": { "author": "Phil Gyford", "author_email": "phil@gyford.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "==================\n Django Spectator\n==================\n\n.. image:: https://travis-ci.org/philgyford/django-spectator.svg?branch=master\n :target: https://travis-ci.org/philgyford/django-spectator?branch=master\n\n.. image:: https://coveralls.io/repos/github/philgyford/django-spectator/badge.svg?branch=master\n :target: https://coveralls.io/github/philgyford/django-spectator?branch=master\n\nTwo Django apps:\n\n* One to track book and periodical reading, including start and end dates, authors.\n* One to track events attended (movie, plays, gigs, exhibitions, comedy, dance,\n classical), including date, venue, and people/organisations involved.\n\nFor Django 1.11 to Django 2.2, running on Python 3.5 to 3.7.\n\nIt has URLs, views and templates to create a site displaying all the data, and\nDjango admin screens to add and edit them. The templates use `Bootstrap v4.3 `_.\n\nThere are also template tags for displaying data in your own templates (see\nbelow).\n\nThis is used on my personal website (with custom templates): `reading `_ and `events `_.\n\n\n************\nInstallation\n************\n\nInstall `Pillow `_ or `PIL `_ (used by `ImageKit `_ to create thumbnail images).\n\nInstall with pip::\n\n pip install django-spectator\n\nAdd these apps to your project's ``INSTALLED_APPS`` in ``settings.py``::\n\n INSTALLED_APPS = [\n ...\n 'imagekit',\n 'spectator.core',\n 'spectator.events',\n 'spectator.reading',\n ]\n\nWhile ``spectator.core`` is required, you can omit either ``spectator.events``\nor ``spectator.reading`` if you only want to use one of them.\n\n``imagekit`` is required to handle uploaded publication cover and event\nticket images.\n\nRun migrations::\n\n ./manage.py migrate\n\nAdd to your project's ``urls.py``::\n\n urlpatterns = [\n # ...\n\n url(r'^spectator/', include('spectator.core.urls')),\n ]\n\nYou can change the initial path (``r'^spectator/'``) to whatever suits you. e.g.\nuse ``r'^'`` to have Spectator's home page be the front page of your site.\n\nThen, go to Django Admin to add your data.\n\n\nSettings\n========\n\nThere are a few optional settings that can be used in your project's\n``settings.py`` file. This is the full list, with their defaults. Descriptions\nof each are below::\n\n SPECTATOR_GOOGLE_MAPS_API_KEY = \"\"\n\n SPECTATOR_SLUG_ALPHABET = \"abcdefghijkmnopqrstuvwxyz23456789\"\n\n SPECTATOR_SLUG_SALT = \"Django Spectator\"\n\n SPECTATOR_DATE_FORMAT = \"%-d %b %Y\"\n\n SPECTATOR_THUMBNAIL_DETAIL_SIZE = (320, 320)\n\n SPECTATOR_THUMBNAIL_LIST_SIZE = (80, 160)\n\n SPECTATOR_EVENTS_DIR_BASE = \"events\"\n\n SPECTATOR_READING_DIR_BASE = \"reading\"\n\nIf you get a `Google Maps JavaScript API key `_ and\nadd it to the settings, it will enable using a map in the Django Admin to set\nthe location of Venues, and the displaying of Venues' maps in the public\ntemplates::\n\n SPECTATOR_GOOGLE_MAPS_API_KEY = \"YOUR-API-KEY\"\n\nURLs for all objects include automatically-generated slugs, which are based on\n[Hashids](http://hashids.org) of the object's ID. You can change which\ncharacters are used in these slugs with this setting. e.g.::\n\n SPECTATOR_SLUG_ALPHABET = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890\"\n\nYou can also change the salt value used to encode the slugs. While the slugs\ndon't provide complete security (i.e. it's not impossible to determine the ID on\nwhich a slug is based), using your own salt value can't hurt. e.g.::\n\n SPECTATOR_SLUG_SALT = \"My special salt value is here\"\n\nYou can change the format used for the dates of Events and for the titles of\nsome sidebar cards in templates, using `strftime `_ formatting::\n\n SPECTATOR_DATE_FORMAT = \"%Y-%m-%d\"\n\nThere are two sizes of thumbnail images used throughout the site and admin\npages: those used on \"detail\" pages (e.g. showing information about a single\npublication) and those used on \"list\" pages (e.g. listing many Publications).\nEach thumbnail's maximum size is defined as a tuple of width and height. The\noriginal image will be resized to fit within these limits, without being\ncropped. To make them both bigger than the default you might use::\n\n SPECTATOR_THUMBNAIL_DETAIL_SIZE = (400, 400)\n\n SPECTATOR_THUMBNAIL_LIST_SIZE = (150, 200)\n\nWhen images are uploaded for Publications and Events (see below), they are\nstored within named directories within your Django project's `MEDIA_ROOT`. e.g.\na Publication with a ``slug`` of ``pzov6`` would have its cover uploaded to\na path like ``/media/reading/publications/pzov6/my_cover.jpg``. The ``reading``\npart is defined by the ``SPECTATOR_READING_DIR_BASE`` setting. You could change\nthe defaults like this::\n\n SPECTATOR_EVENTS_DIR_BASE = \"my-events\"\n\n SPECTATOR_READING_DIR_BASE = \"my-reading\"\n\n\n********\nOverview\n********\n\nThere are two main parts to Spectator: Reading and Events (movies, gigs, etc). They both share Creators.\n\nCreators\n========\n\nCreators are the authors of books, directors of movies, actors in plays, groups who perfom at gigs, etc.\n\nA Creator has a name and a ``kind``, of either \"individual\" (e.g. \"Anthony Sher\") or \"group\" (e.g. \"Royal Shakespeare Company\").\n\nA Creator is associated with books, movies, events, etc. through roles, which\ninclude an optional ``role_name`` such as \"Author\", \"Illustrator\", \"Director\",\n\"Playwright\", \"Company\", etc. The roles can be given an order so that the\ncreators of a thing will be listed in the appropriate order (such as the\ndirector before a movie's actors).\n\nSee ``spectator/models/core.py`` for these models.\n\nReading\n=======\n\nA Publication is a thing that's been read, and has a ``kind`` of either \"book\"\nor \"periodical\". A Publication can optionally be part of a PublicationSeries.\ne.g. a Publication \"Vol. 3 No. 7 September 2005\" could be part of the \"The\nBeliever\" PublicationSeries.\n\nA Publication can have zero or more Readings. A Reading can have\na ``start_date`` and ``end_date``. If the ``start_date`` is set but the\n``end_date`` isn't, the Publication is currently being read. When a Reading has\nbeen completed, and an ``end_date`` added, it can be marked as ``is_finished``\nor not. If not, it's because you gave up on the Publication before getting to\nthe end.\n\nBoth ``start_date`` and ``end_date`` indicates a specific day by default. If\nyou don't know the day, or the month, a granularity can be specified indicating\nwhether the reading started/ended sometime during the month or year.\n\nSee ``spectator/models/reading.py`` for these models.\n\nEvents\n======\n\nAn Event specifies a date on which you saw a thing at a particular Venue.\n\nA Venue has a name and, optionally, location details.\n\nEach Event can have zero or more Creators associated directly with it. e.g. the\nperformers at a gig, the comedians at a comedy event. These can be in a specific\norder, and each with an optional role. e.g:\n\n* The Wedding Present\n * Role: Headliner\n * Order: 1\n* Buffalo Tom\n * Role: Support\n * Order: 2\n\nEvents can be different kinds, e.g. \"gig\", \"cinema\", \"theatre\". This is only used for categorising Events into different lists - it doesn't restrict the kinds of Works that can be associated with it. You could have a \"cinema\" Event that has a movie, play and dance piece associated with it.\n\nEach Event can have zero or more Works associated with it: movies, plays, classical works or dance pieces. Each Work can have zero or more Creators, each with optional roles, associated directly with it. e.g. \"Wolfgang Amadeus Mozart (Composer)\",\n\"William Shakespeare (Playwright)\" or \"Steven Spielberg (Director)\":\n\nEvents can be given an optional title (e.g. \"Glastonbury Festival\"). If a title\nisn't specified one is created automatically when needed, based on any Works\nassociated with it, or else any Creators associated with it.\n\n\n*************\nTemplate tags\n*************\n\nEach app, `core`, `events` and `reading`, has some template tags.\n\nCore template tags\n==================\n\nTo use any of these in a template, first::\n\n {% load spectator_core %}\n\nMost Read Creators\n------------------\n\nTo get a QuerySet of Creators with the most Readings associated with them::\n\n {% most_read_creators num=10 %}\n\nEach Creator will have a ``num_readings`` attribute. It will only include\nCreators whose role on a publication was \"Author\" or was left blank. i.e.\nCreators who were \"Illustrator\" or \"Translator\" would not be counted.\n\nTo display this as a chart in a Bootstrap card::\n\n {% most_read_creators_card num=10 %}\n\nThis will exclude any Creators with only 1 Reading.\n\nMost Visited Venues\n-------------------\n\nTo get a QuerySet of Venues with the most Events associated with them::\n\n {% most_visited_venues num=10 %}\n\nEach Venue will have a ``num_visits`` attribute.\n\nTo display this as a chart in a Bootstrap card::\n\n {% most_visited_venues_card num=10 %}\n\nThis will exclude any Venues with only 1 Event.\n\n\nReading template tags\n=====================\n\nTo use any of these in a template, first::\n\n {% load spectator_reading %}\n\nIn-progress Publications\n------------------------\n\nTo get a QuerySet of Publications currently being read use\n``in_progress_publications``::\n\n {% in_progress_publications as publications %}\n\n {% for pub in publications %}\n

{{ pub }}
\n {% for role in pub.roles.all %}\n {{ role.creator.name }}\n {% if role.role_name %}({{ role.role_name }}){% endif %}\n
\n {% endfor %}\n

\n {% endfor %}\n\nOr to display as a Bootstrap card::\n\n {% in_progress_publications_card %}\n\nPublications being read on a day\n--------------------------------\n\nTo get a QuerySet of Publications that were being read on a particular day use\n``day_publications``. If ``my_date`` is a python ``date`` object::\n\n {% day_publications date=my_date as publications %}\n\nAnd display the results as in the above example.\n\nOr to display as a Bootstrap card::\n\n {% day_publications_card date=my_date %}\n\nYears of reading\n----------------\n\nTo get a QuerySet of the years in which Publications were being read::\n\n {% reading_years as years %}\n\n {% for year in years %}\n {{ year|date:\"Y\" }}
\n {% endfor %}\n\nOr to display as a Bootstrap card, with each year linking to the\n``ReadingYearArchiveView``::\n\n {% reading_years_card current_year=year %}\n\nHere, ``year`` is a date object indicating a year which shouldn't be linked.\n\nAnnual reading counts\n---------------------\n\nFor more detail than the ``reading_years`` tag, use this to get the number of\nBooks, and Periodicals (and the total) finished per year::\n\n {% annual_reading_counts as years %}\n\n {% for year_data in years %}\n {{ year_data.year }}:\n {{ year_data.book }} book(s),\n {{ year_data.periodical }} periodical(s),\n {{ year_data.total }} total.
\n {% endfor %}\n\nOr to display as a Bootstrap card, with each year linking to ``ReadingYearArchiveView``::\n\n {% annual_reading_counts_card current_year=year kind='all' %}\n\nHere, ``year`` is a date object indicating a year which shouldn't be linked.\n\nAnd ``kind`` can be one of \"all\" (default), \"book\" or \"periodical\". If it's \"all\",\nthen the result is rendered as a table, with a column each for year, book count,\nperiodical count and total count. Otherwise it's a list of years with the\nbook/periodical counts in parentheses.\n\n\nEvents template tags\n====================\n\nTo use any of these in a template, first::\n\n {% load spectator_events %}\n\nRecent Events\n-------------\n\nTo get a QuerySet of Events that happened recently::\n\n {% recent_events num=3 as events %}\n\n {% for event in events %}\n

\n {{ event }}
\n {{ event.venue.name }}\n

\n {% endfor %}\n\nIf ``num`` is not specified, 10 are returned by default.\n\nOr to display as a Boostrap card::\n\n {% recent_events_card num=3 %}\n\nEvents on a day\n---------------\n\nTo get a QuerySet of Events that happened on a particular day, use\n``day_events``. If ``my_date`` is a python ``date`` object::\n\n {% day_events date=my_date as events %}\n\nAnd display the results as in the above example.\n\nOr to display as a Bootstrap card::\n\n {% day_events_card date=my_date %}\n\nYears of Events\n---------------\n\nTo get a QuerySet of the years in which Events happened::\n\n {% events_years as years %}\n\n {% for year in years %}\n {{ year|date:\"Y\" }}
\n {% endfor %}\n\nOr to display as a Bootstrap card, with each year linking to the\n``EventYearArchiveView``::\n\n {% events_years_card current_year=year %}\n\nHere, ``year`` is a date object indicating a year which shouldn't be linked.\n\nAnnual Event Counts\n-------------------\n\nTo include counts of Events per year::\n\n {% annual_event_counts as years %}\n\n {% for year_data in years %}\n {{ year_data.year|date:\"Y\" }}: {{ year_data.total }} event(s)
\n {% endfor %}\n\nRestrict to one kind of Event::\n\n {% annual_event_counts kind='cinema' as years %}\n\nOr to display as a Bootstrap card, with each year linking to ``EventYearArchiveView``::\n\n {% annual_event_counts_card current_year=year kind='all' %}\n\nHere, ``year`` is a date object indicating a year which shouldn't be linked.\n\nMost Seen Creators\n------------------\n\nTo get a QuerySet of Creators involved with the most Events::\n\n {% most_seen_creators num=10 event_kind='gig' %}\n\nEach Creator will have a ``num_events`` attribute.\n\n``event_kind`` can be omitted, or be ``None`` to include all kinds of Event.\n\nTo display this as a chart in a Bootstrap card::\n\n {% most_seen_creators_card num=10 event_kind='gig' %}\n\nThis will exclude any Creators with only 1 Event.\n\nCreators With Most Works\n------------------------\n\nTo get a QuerySet of Creators that have the most Works (e.g, movies, plays, etc)::\n\n {% most_seen_creators_by_works num=10 work_kind='movie', role_name='Director' %}\n\nEach Creator will have a ``num_works`` attribute.\n\n``work_kind`` can be omitted and all kinds of Work will be counted.\n\n``role_name`` can be omitted and all roles will be counted.\n\nThe above example would, for each Creator, only count movie Works on which their\nrole was 'Director'.\n\nTo display this as a chart in a Bootstrap card::\n\n {% most_seen_creators_by_works_card num=10 work_kind='movie', role_name='Director' %}\n\nThis will exclude any Creators with only 1 Work.\n\n\nMost Seen Works\n---------------\n\nTo get a QuerySet of Works involved with the most Events::\n\n {% most_seen_works num=10 kind='movie' %}\n\nEach Work will have a ``num_views`` attribute.\n\n``kind`` can be omitted, or be ``None`` to include all kinds of Work.\n\nTo display this as a chart in a Bootstrap card::\n\n {% most_seen_works_card num=10 kind='movie' %}\n\nThis will exclude any Works with only 1 Event.\n\n\n*****************\nLocal development\n*****************\n\n``devproject/`` is a basic Django project to use the app locally. Use it like this, installing requirements with pipenv::\n\n$ cd devproject\n$ pipenv install\n$ pipenv run ./manage.py migrate\n$ pipenv run ./manage.py runserver\n\nRun tests with tox, from the top-level directory (containing setup.py). Install it with::\n\n$ pip install tox\n\nRun all tests in all environments like::\n\n$ tox\n\nTo run tests in only one environment, specify it. In this case, Python 3.6 and Django 2.0::\n\n$ tox -e py36-django20\n\nTo run a specific test, add its path after ``--``, eg::\n\n$ tox -e py36-django20 -- tests.core.test_models.CreatorTestCase.test_ordering\n\nRunning the tests in all environments will generate coverage output. There will also be an ``htmlcov/`` directory containing an HTML report. You can also generate these reports without running all the other tests::\n\n$ tox -e coverage\n\nMaking a new release\n====================\n\nSo I don't forget...\n\n1. Put new changes on ``master``.\n2. Update the ``__version__`` in ``spectator.__init__.py``.\n3. Update ``CHANGES.rst``.\n4. Do ``python setup.py tag``.\n5. Do ``python setup.py publish``.\n\n\nAdding a new Event kind\n=======================\n\nIf it's simple (like, Gigs, Comedy, etc.) and doesn't require any specific kind of Works, then:\n\n* In ``spectator.events.models.Event`` add it in ``KIND_CHOICES`` and ``KIND_SLUGS``.\n* Possibly add a special case for it in ``Event.get_kind_name_plural()``.\n* Add a simple factory for it in ``spectator.events.factories``.\n* In ``tests.events.test_models.EventTestCase``:\n * Add it to:\n * ``test_get_kind()``\n * ``test_valid_kind_slugs()``\n * ``test_kind_slug()``\n * ``test_kind_name()``\n * ``test_kind_name_plural()``\n * ``test_get_kinds_data()``\n * Add a ``test_absolute_url_*()`` test for this kind.\n\n\nAdding a new Work kind\n======================\n\n* In ``spectator.events.models.Work`` add it in ``KIND_CHOICES`` and ``KIND_SLUGS``.\n* On the ``Event`` model add a new method similar to ``get_classical_works()`` for this new kind of ``Work``.\n* On the ``spectator.core.models.Creator`` model add a new method similar to ``get_classical_works()`` for this new kind of ``Work``.\n* Add a simple factory for it in ``spectator.events.factories``.\n* In ``spectator/events/templates/spectator_events/event_detail.html`` add an include to list the\n works.\n* In ``spectator/core/templates/spectator_core/creator_detail.html`` add an include to\n list the works.\n* In ``tests/`` add equivalents of:\n * ``core.test_models.CreatorTestCase.test.get_classical_works()``\n * ``events.test_models.EventTestCase.test_get_classical_works()``\n * ``events.test_models.WorkTestCase.test_absolute_url_classicalwork()``\n * ``events.test_models.WorkTestCase.test_get_list_url_classicalwork()``\n\n\n*******\nContact\n*******\n\n* Phil Gyford\n* phil@gyford.com\n* @philgyford on Twitter\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/philgyford/django-spectator", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-spectator", "package_url": "https://pypi.org/project/django-spectator/", "platform": "", "project_url": "https://pypi.org/project/django-spectator/", "project_urls": { "Homepage": "https://github.com/philgyford/django-spectator" }, "release_url": "https://pypi.org/project/django-spectator/9.1.0/", "requires_dist": null, "requires_python": "", "summary": "A Django app to track book reading, movie viewing, gig going, play watching, etc.", "version": "9.1.0" }, "last_serial": 6000383, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "4a08e80ff0594aeed1cfd9dbd6cce30d", "sha256": "ba705bfc97bca42a3df79e85b27c65a302ea394d58b17e561c7942b055c28b6a" }, "downloads": -1, "filename": "django-spectator-1.0.1.tar.gz", "has_sig": false, "md5_digest": "4a08e80ff0594aeed1cfd9dbd6cce30d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12951, "upload_time": "2017-03-28T14:28:01", "url": "https://files.pythonhosted.org/packages/d9/39/7347a80bbad02ac8a23641d4fd874ac0428c4a7bfe797f67f477461d45ed/django-spectator-1.0.1.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "c33d568f81bbf970de1c10fbe333f146", "sha256": "55dc739fde310b0de5c3e4cfe9e753765c1f6b9e9b3f156a0a48d9d9a0ccfae5" }, "downloads": -1, "filename": "django-spectator-2.0.0.tar.gz", "has_sig": false, "md5_digest": "c33d568f81bbf970de1c10fbe333f146", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7140, "upload_time": "2017-04-17T13:05:09", "url": "https://files.pythonhosted.org/packages/9b/6a/d47543cf4060150059e0fc2a68f779a67f40a6a4cfc2b9c3039eb8f1c2f6/django-spectator-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "c6dec7cdc583dd5e515750d166dad0e1", "sha256": "dc694cc0072b0a9660fd55caabdaa0b1ba1ce0595b541005ecb735f247dbe19d" }, "downloads": -1, "filename": "django-spectator-2.0.1.tar.gz", "has_sig": false, "md5_digest": "c6dec7cdc583dd5e515750d166dad0e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11237, "upload_time": "2017-04-17T15:50:12", "url": "https://files.pythonhosted.org/packages/89/51/397d404c9ce038b8954efe4615d3827d011c11158a1c1aeccc05b33f5c68/django-spectator-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "fa2785ce90be28372cc819c08d2f6d8d", "sha256": "4a4dc574aaf960a1be8c49719a735717f0106d9b863baea446f855e0913457f2" }, "downloads": -1, "filename": "django-spectator-2.0.2.tar.gz", "has_sig": false, "md5_digest": "fa2785ce90be28372cc819c08d2f6d8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106373, "upload_time": "2017-04-17T15:52:49", "url": "https://files.pythonhosted.org/packages/ac/df/35f8828a74c7fdf429d63507beee18cc970a716c972b3a9bde6a0c40d0d4/django-spectator-2.0.2.tar.gz" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "2450bfa1463bcd4550cda3397b54dd9d", "sha256": "44a4a58b45803c093bcd89594595ef1b7af4f0ea6e31329f863d15e4f47d9fe8" }, "downloads": -1, "filename": "django-spectator-3.0.0.tar.gz", "has_sig": false, "md5_digest": "2450bfa1463bcd4550cda3397b54dd9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 105364, "upload_time": "2017-04-17T17:44:17", "url": "https://files.pythonhosted.org/packages/d9/ef/d0ac7698b1a812f9976eda74cc7424713c7f8ce1c412421fbf768812aad7/django-spectator-3.0.0.tar.gz" } ], "3.1.0": [ { "comment_text": "", "digests": { "md5": "f08faac1c2fcc0ab3b451e384756e108", "sha256": "69948fbce6b8e81768b26a2d51a5de18b743430aecee94d79526f8f06a7f3955" }, "downloads": -1, "filename": "django-spectator-3.1.0.tar.gz", "has_sig": false, "md5_digest": "f08faac1c2fcc0ab3b451e384756e108", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106071, "upload_time": "2017-04-17T20:24:15", "url": "https://files.pythonhosted.org/packages/fa/25/cad74d942956bcbc8d337a9c0d8a72b6d0c9b5f3a9e9cd68fca4a2bb9741/django-spectator-3.1.0.tar.gz" } ], "3.2.1": [ { "comment_text": "", "digests": { "md5": "06295e5a164c98c883c2d9c16627d73a", "sha256": "f95d3568a99a6145f44dc66d1577c14ba248536daebfb052afa94910c419253b" }, "downloads": -1, "filename": "django-spectator-3.2.1.tar.gz", "has_sig": false, "md5_digest": "06295e5a164c98c883c2d9c16627d73a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155115, "upload_time": "2017-08-22T14:56:53", "url": "https://files.pythonhosted.org/packages/6e/2e/8561d1e5ddccdc807ad611670963fdf59780f95d0a7c77e1f3ec00945b9d/django-spectator-3.2.1.tar.gz" } ], "3.2.2": [ { "comment_text": "", "digests": { "md5": "473e0aa5187e00b5a759746e574ab16f", "sha256": "832ab4e4beeb015761e34bfb29e09375ebd718edd69e20843d1b49a267f4f209" }, "downloads": -1, "filename": "django-spectator-3.2.2.tar.gz", "has_sig": false, "md5_digest": "473e0aa5187e00b5a759746e574ab16f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155102, "upload_time": "2017-08-22T14:58:32", "url": "https://files.pythonhosted.org/packages/92/15/d07ddbb385b1e91b1d5a91d99ba688d8b15f1fed558e41560fb9ec7519fc/django-spectator-3.2.2.tar.gz" } ], "3.2.3": [ { "comment_text": "", "digests": { "md5": "8596a882f994528aef692ce3d6685c39", "sha256": "ee6548932f19d623f41135211bbe38571d12f11fee8b1eed6f00bfb13197ed60" }, "downloads": -1, "filename": "django-spectator-3.2.3.tar.gz", "has_sig": false, "md5_digest": "8596a882f994528aef692ce3d6685c39", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155172, "upload_time": "2017-10-01T10:35:42", "url": "https://files.pythonhosted.org/packages/82/1c/b3a256c4df7bbf577eae54eacd03a282b80475cd61e2f8d68617344360ba/django-spectator-3.2.3.tar.gz" } ], "3.3.0": [ { "comment_text": "", "digests": { "md5": "4e0048fff125fab638b2839c0771fd39", "sha256": "8a1a0d602b5176d125df10df4c402f6804384a47c62aecfaf73e13a8ab914e1c" }, "downloads": -1, "filename": "django-spectator-3.3.0.tar.gz", "has_sig": false, "md5_digest": "4e0048fff125fab638b2839c0771fd39", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 162266, "upload_time": "2017-11-01T18:39:20", "url": "https://files.pythonhosted.org/packages/bf/39/98ec3a3f3640e50c3c99b96cf5ab4729c6533408f7457ebfc9df53ed09ed/django-spectator-3.3.0.tar.gz" } ], "4.0.0": [ { "comment_text": "", "digests": { "md5": "07136bfef63a3e4128b170fb118edd67", "sha256": "63018f5ad12ff5abee1ad1938dccb791fcf274f1dd3dcba51f79f9b032f5603b" }, "downloads": -1, "filename": "django-spectator-4.0.0.tar.gz", "has_sig": false, "md5_digest": "07136bfef63a3e4128b170fb118edd67", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 161946, "upload_time": "2017-12-14T14:55:04", "url": "https://files.pythonhosted.org/packages/53/62/bad0513704cbc40f04cb45e2036691380803b865f117cfbe37ff936c057a/django-spectator-4.0.0.tar.gz" } ], "4.0.1": [ { "comment_text": "", "digests": { "md5": "b3d2e65e97fae8b2fb254fb31b86f5c5", "sha256": "121fe7a7ad6502f4c9b09a0501b69e10f125ea92063c164bed23506ed8851012" }, "downloads": -1, "filename": "django-spectator-4.0.1.tar.gz", "has_sig": false, "md5_digest": "b3d2e65e97fae8b2fb254fb31b86f5c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 162086, "upload_time": "2017-12-14T15:15:16", "url": "https://files.pythonhosted.org/packages/b4/30/65230e1633264031e0563a5d9b2b95df7785153d49cedd18a527bc088065/django-spectator-4.0.1.tar.gz" } ], "4.1.0": [ { "comment_text": "", "digests": { "md5": "9f9f23166e783305f239d55bbaeb50be", "sha256": "c1499c2faaf2370de837a6014ade21c9b44b4eb337e7efdd5baa73c725f3b67b" }, "downloads": -1, "filename": "django-spectator-4.1.0.tar.gz", "has_sig": false, "md5_digest": "9f9f23166e783305f239d55bbaeb50be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 169755, "upload_time": "2017-12-30T19:01:51", "url": "https://files.pythonhosted.org/packages/06/c6/47ba0b5fc6ca81dfa028d1881404da605199427ac918438036d0d0b08e79/django-spectator-4.1.0.tar.gz" } ], "5.0.0": [ { "comment_text": "", "digests": { "md5": "f0e536207507e5a009e4935d3ecf41b7", "sha256": "0ca90246dc3ac6ade0b0a357f3d2bc008862633f6785bd66fd2628da034e3f98" }, "downloads": -1, "filename": "django-spectator-5.0.0.tar.gz", "has_sig": false, "md5_digest": "f0e536207507e5a009e4935d3ecf41b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 170628, "upload_time": "2018-01-02T12:47:44", "url": "https://files.pythonhosted.org/packages/11/2d/556246db03d13047ee3847ba9ce13dcb352908d51f2b55abf44005e81847/django-spectator-5.0.0.tar.gz" } ], "5.1.0": [ { "comment_text": "", "digests": { "md5": "8137464b25536cc9803eaaa48d816e65", "sha256": "d83c89cacb0e62d272134653683b704864def61e1bc4bc8e72df226593255937" }, "downloads": -1, "filename": "django-spectator-5.1.0.tar.gz", "has_sig": false, "md5_digest": "8137464b25536cc9803eaaa48d816e65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 170641, "upload_time": "2018-01-03T11:47:10", "url": "https://files.pythonhosted.org/packages/5a/65/50dba854ff0d5a45e79c3c008790e2a096de9c647064008e2ecfb1972d31/django-spectator-5.1.0.tar.gz" } ], "5.1.1": [ { "comment_text": "", "digests": { "md5": "0d76093c5fadc678380306d950c73cd0", "sha256": "1b2fc800ab20e7c10aa55cdd7bb64681e2b310f57bf685c146ca59f64a0029b1" }, "downloads": -1, "filename": "django-spectator-5.1.1.tar.gz", "has_sig": false, "md5_digest": "0d76093c5fadc678380306d950c73cd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 170674, "upload_time": "2018-01-17T16:46:00", "url": "https://files.pythonhosted.org/packages/f4/2f/57b31aeb40331115173ee3bd51ec9f3d923a20c24004bc15ee5f5dc633b7/django-spectator-5.1.1.tar.gz" } ], "5.1.2": [ { "comment_text": "", "digests": { "md5": "8d1f5f3073c4b81c859cdcb370d6371e", "sha256": "53c880f528bc2b559ad093d746ffa90e205453639e004d059619fef63aec3c7b" }, "downloads": -1, "filename": "django-spectator-5.1.2.tar.gz", "has_sig": false, "md5_digest": "8d1f5f3073c4b81c859cdcb370d6371e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 170698, "upload_time": "2018-01-17T16:51:34", "url": "https://files.pythonhosted.org/packages/4f/6d/c6627a4c9e84e5d32955d622f41ce4289a88be1a48894288ac349140919a/django-spectator-5.1.2.tar.gz" } ], "5.1.3": [ { "comment_text": "", "digests": { "md5": "e189c7f786da2de3f97aaa32fe009601", "sha256": "337e76adc494cd23ee1e9640791265fef78235ae3a45031aae01ed5ce7895fcd" }, "downloads": -1, "filename": "django-spectator-5.1.3.tar.gz", "has_sig": false, "md5_digest": "e189c7f786da2de3f97aaa32fe009601", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 170694, "upload_time": "2018-01-17T17:15:49", "url": "https://files.pythonhosted.org/packages/51/63/6f9eb99ee2aa7d5f572455cdde8e538dae178187463d951dbf166fe007f6/django-spectator-5.1.3.tar.gz" } ], "5.2.0": [ { "comment_text": "", "digests": { "md5": "a2f87f2a104f78ff4b88d58101537213", "sha256": "0806aafe04c4e740e50c68f64ec12e3f2a6b99d3f597d974d2162a22f59c2aa6" }, "downloads": -1, "filename": "django-spectator-5.2.0.tar.gz", "has_sig": false, "md5_digest": "a2f87f2a104f78ff4b88d58101537213", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171506, "upload_time": "2018-01-18T09:34:59", "url": "https://files.pythonhosted.org/packages/e9/a8/63aaef26fa9918b6a20ce9556bb5cb10fe9969380b3f10092bacd9dd1665/django-spectator-5.2.0.tar.gz" } ], "6.0.0": [ { "comment_text": "", "digests": { "md5": "00490e3c2bb456e1aa99c5ef1fb3ffc4", "sha256": "d59597819c198f57a4358025742177902beff4fc5ad11706a6f941eafeffe883" }, "downloads": -1, "filename": "django-spectator-6.0.0.tar.gz", "has_sig": false, "md5_digest": "00490e3c2bb456e1aa99c5ef1fb3ffc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171358, "upload_time": "2018-01-24T11:11:53", "url": "https://files.pythonhosted.org/packages/66/da/e5c0bb93fc94a1d0d0c87a114d7856434276b9312b694e60015e9d9c0eb6/django-spectator-6.0.0.tar.gz" } ], "7.0.0": [ { "comment_text": "", "digests": { "md5": "268285edb69ff20681c7149fbbe30ccb", "sha256": "9d1f0cc8557bc33361766360813ed44e401eee2d42da98955b52a0b43b2d5fbf" }, "downloads": -1, "filename": "django-spectator-7.0.0.tar.gz", "has_sig": false, "md5_digest": "268285edb69ff20681c7149fbbe30ccb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 173937, "upload_time": "2018-01-27T16:24:03", "url": "https://files.pythonhosted.org/packages/31/2f/e4925a9d83de44315211659be03921fc97c547aa75370d9d4764a70d882c/django-spectator-7.0.0.tar.gz" } ], "7.0.1": [ { "comment_text": "", "digests": { "md5": "091158446f97c92eeb9788f71ea17d23", "sha256": "7a0927007add536bb0735db1c1788032db92dc62d415ba83ec38dd4186479c7a" }, "downloads": -1, "filename": "django-spectator-7.0.1.tar.gz", "has_sig": false, "md5_digest": "091158446f97c92eeb9788f71ea17d23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 174857, "upload_time": "2018-01-27T17:11:47", "url": "https://files.pythonhosted.org/packages/ae/9f/5f72488066d7ed2730ccb746f808aee54c887ec3bc7ce3f0c79c7d17c745/django-spectator-7.0.1.tar.gz" } ], "7.0.2": [ { "comment_text": "", "digests": { "md5": "940ed38240267c157457940ad7e61a62", "sha256": "5761c3aa32aa16df694923d368a434221cfaccf8e473ddb0afcbf2baca819029" }, "downloads": -1, "filename": "django-spectator-7.0.2.tar.gz", "has_sig": false, "md5_digest": "940ed38240267c157457940ad7e61a62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175061, "upload_time": "2018-01-27T17:52:48", "url": "https://files.pythonhosted.org/packages/1f/04/b8d2e61babb2b1a2342b99e6aed9be021d80c6f63ed02a1ce375c1374987/django-spectator-7.0.2.tar.gz" } ], "7.1.0": [ { "comment_text": "", "digests": { "md5": "39f9accf66a57e8261bf303e282d869a", "sha256": "a9a03e2f6c3bd0477f4d4566c42a364ccd4ed3a6bdb24544df6c45949742659e" }, "downloads": -1, "filename": "django-spectator-7.1.0.tar.gz", "has_sig": false, "md5_digest": "39f9accf66a57e8261bf303e282d869a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175789, "upload_time": "2018-01-29T17:40:10", "url": "https://files.pythonhosted.org/packages/9f/3d/1c5b309099cc3d7fb561d8c248c2d03e76c0274da793d659b804ef335951/django-spectator-7.1.0.tar.gz" } ], "7.1.1": [ { "comment_text": "", "digests": { "md5": "5dffe4c2bd55e0fde6463ca60b3818b8", "sha256": "6ad64b7ecb4a7fc9344d9a5b36be94c1df3923d42b3111159ae06e1472f8e9d0" }, "downloads": -1, "filename": "django-spectator-7.1.1.tar.gz", "has_sig": false, "md5_digest": "5dffe4c2bd55e0fde6463ca60b3818b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175844, "upload_time": "2018-01-29T17:57:19", "url": "https://files.pythonhosted.org/packages/d9/7b/e1763e13395741ec0f906c97931c8a01dd83de215a895aaefa150ea37002/django-spectator-7.1.1.tar.gz" } ], "7.1.2": [ { "comment_text": "", "digests": { "md5": "d56cfbbb23e5ca79eb1b7c4436cf760b", "sha256": "705e2ccac440e7bc44e766769601b495a53f26f7c5c0f42a4713089e39036c37" }, "downloads": -1, "filename": "django-spectator-7.1.2.tar.gz", "has_sig": false, "md5_digest": "d56cfbbb23e5ca79eb1b7c4436cf760b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175899, "upload_time": "2018-01-29T18:09:14", "url": "https://files.pythonhosted.org/packages/89/41/86018e157c2fabaa0d75e7c78729db0868a929a6d5bc56c783e42b79f0bf/django-spectator-7.1.2.tar.gz" } ], "7.1.3": [ { "comment_text": "", "digests": { "md5": "d8424b06ef87409536299abb37c8a8bc", "sha256": "0d4c9f0a34e6b229565205ecb080a7ff7f99bcd3ff83fc7e695f3ec77036f490" }, "downloads": -1, "filename": "django-spectator-7.1.3.tar.gz", "has_sig": false, "md5_digest": "d8424b06ef87409536299abb37c8a8bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175894, "upload_time": "2018-01-30T15:20:32", "url": "https://files.pythonhosted.org/packages/3e/54/704fb584b3070ee42fed69cacd1b070db28bdde3d1edcf54d816bb429d80/django-spectator-7.1.3.tar.gz" } ], "7.2.0": [ { "comment_text": "", "digests": { "md5": "89b3957d967df6fbc5baecf3759171d8", "sha256": "3d229dbf421750e31d5e5ba5463fa2172a17a79a201b02c5681687956d548a34" }, "downloads": -1, "filename": "django-spectator-7.2.0.tar.gz", "has_sig": false, "md5_digest": "89b3957d967df6fbc5baecf3759171d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 176198, "upload_time": "2018-01-31T14:48:45", "url": "https://files.pythonhosted.org/packages/f9/2e/1d2d00497f704fd88879aa951097e1884f51b68d12194caf4a860d7ded73/django-spectator-7.2.0.tar.gz" } ], "7.3.0": [ { "comment_text": "", "digests": { "md5": "f77b5e5b5b373ed70898b98df221f3f9", "sha256": "6de61270ddccd8acd8484a6dc45dd70ba414fba4ba96d815a5291cb2c8a2f725" }, "downloads": -1, "filename": "django-spectator-7.3.0.tar.gz", "has_sig": false, "md5_digest": "f77b5e5b5b373ed70898b98df221f3f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 176506, "upload_time": "2018-01-31T16:11:28", "url": "https://files.pythonhosted.org/packages/ba/0a/258858cec2903898b61ec4aa9abd6ef6f89e2fa0bcef7e8193d4fa711cc8/django-spectator-7.3.0.tar.gz" } ], "7.3.1": [ { "comment_text": "", "digests": { "md5": "dc70f0ff79bd847420a76abc13dd4c9e", "sha256": "31c7785346792def158bf380b12d44b92784291bc71883acfc67422250456556" }, "downloads": -1, "filename": "django-spectator-7.3.1.tar.gz", "has_sig": false, "md5_digest": "dc70f0ff79bd847420a76abc13dd4c9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 176587, "upload_time": "2018-01-31T17:56:46", "url": "https://files.pythonhosted.org/packages/e5/26/b21c779eca6642549c3d0ba174bfcbedf0198f90645d6d3c996f7b75d30e/django-spectator-7.3.1.tar.gz" } ], "8.0.0": [ { "comment_text": "", "digests": { "md5": "b5e44a5ab0dc1b748779e55b92c36d9c", "sha256": "594ffb31184d32d42c7cf4ef5b172964e9ad6d92cee499ed454efaf64dad5d38" }, "downloads": -1, "filename": "django-spectator-8.0.0.tar.gz", "has_sig": false, "md5_digest": "b5e44a5ab0dc1b748779e55b92c36d9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175105, "upload_time": "2018-02-08T17:32:33", "url": "https://files.pythonhosted.org/packages/a6/69/547dbbc1958c2e48a9a7d830a088e20fd0671e4368589afec915c481899e/django-spectator-8.0.0.tar.gz" } ], "8.1.0": [ { "comment_text": "", "digests": { "md5": "05b6f68bfb9afe13d51f8533e1e7c7d0", "sha256": "4a6f5623b19f75872edca99b5361efecd7fe04451a2f88bee6d522932e6e4697" }, "downloads": -1, "filename": "django-spectator-8.1.0.tar.gz", "has_sig": false, "md5_digest": "05b6f68bfb9afe13d51f8533e1e7c7d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175649, "upload_time": "2018-02-14T15:02:50", "url": "https://files.pythonhosted.org/packages/9a/8b/cd270c9299b91573adfe94180a9731d1ab7e753689b458a93a6f28da5662/django-spectator-8.1.0.tar.gz" } ], "8.2.0": [ { "comment_text": "", "digests": { "md5": "fc4c5c328511fc1cb06d95cf18c24329", "sha256": "7e2017d3c07d5cd1b639366d1a2d2830c8ac6729c129708451338fdd3179e118" }, "downloads": -1, "filename": "django-spectator-8.2.0.tar.gz", "has_sig": false, "md5_digest": "fc4c5c328511fc1cb06d95cf18c24329", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175887, "upload_time": "2018-02-15T15:34:52", "url": "https://files.pythonhosted.org/packages/1b/f1/93b59281a12d3dff912dacccb53a0009093385186cb16f7ff31126243840/django-spectator-8.2.0.tar.gz" } ], "8.3.0": [ { "comment_text": "", "digests": { "md5": "30970dbebfb6650bf7068ccbc2a36e95", "sha256": "515f4e407bf3cd27afeb676ea1cca2d3bff849b405dad33f5a53a221f55ea9a0" }, "downloads": -1, "filename": "django-spectator-8.3.0.tar.gz", "has_sig": false, "md5_digest": "30970dbebfb6650bf7068ccbc2a36e95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175952, "upload_time": "2018-02-15T16:44:16", "url": "https://files.pythonhosted.org/packages/23/15/d7942f221a92784003d47cf54376faa84ed8a3d172207181f421f8e78a20/django-spectator-8.3.0.tar.gz" } ], "8.4.0": [ { "comment_text": "", "digests": { "md5": "abfa47a39fb085052cd96ad84716457b", "sha256": "78e89915b8540ce0d7141b827be8faa259cddfb6b7b41c0f75007ced3472b30e" }, "downloads": -1, "filename": "django-spectator-8.4.0.tar.gz", "has_sig": false, "md5_digest": "abfa47a39fb085052cd96ad84716457b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 183429, "upload_time": "2018-03-10T17:05:44", "url": "https://files.pythonhosted.org/packages/54/a3/c02c51e33db5a122ba56d1b709ecfd7c0055ee51f763828ce5d95805de2d/django-spectator-8.4.0.tar.gz" } ], "8.5.0": [ { "comment_text": "", "digests": { "md5": "9b85a53b3a9bc492208d6a3d26737d24", "sha256": "14dbfb39da725dd28559a291003a22b64624e664c164adc4b763102a15f3f534" }, "downloads": -1, "filename": "django-spectator-8.5.0.tar.gz", "has_sig": false, "md5_digest": "9b85a53b3a9bc492208d6a3d26737d24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 184010, "upload_time": "2018-03-12T16:53:53", "url": "https://files.pythonhosted.org/packages/44/93/dc3d6e904d27d78b08cd492c9557dc0c3566ff8225a56ac6c3f0440a2863/django-spectator-8.5.0.tar.gz" } ], "8.5.1": [ { "comment_text": "", "digests": { "md5": "ee05974bf4646f36ce18365d615ca837", "sha256": "629fe25d36e0cfa5b426ca1e07b5b689e9beeaa5567f4e677aedef27f50aa689" }, "downloads": -1, "filename": "django-spectator-8.5.1.tar.gz", "has_sig": false, "md5_digest": "ee05974bf4646f36ce18365d615ca837", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 184145, "upload_time": "2018-03-13T10:53:35", "url": "https://files.pythonhosted.org/packages/f5/2b/e5292f5f546df7f710e4615a7605be33b2d4268677f5c6cf56d2dfc599ca/django-spectator-8.5.1.tar.gz" } ], "8.5.2": [ { "comment_text": "", "digests": { "md5": "38c160608ba96abd247ed37a370ce5f5", "sha256": "feb7b8574f0bb1550b78a3e93c25447227b9c04f975fa3c7c8ffefc851fb5f69" }, "downloads": -1, "filename": "django-spectator-8.5.2.tar.gz", "has_sig": false, "md5_digest": "38c160608ba96abd247ed37a370ce5f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 184649, "upload_time": "2018-03-26T14:16:15", "url": "https://files.pythonhosted.org/packages/a5/e2/f31c26079d7538811e7625c2a8cfb1134191c4923ce2974cf77098b00ca4/django-spectator-8.5.2.tar.gz" } ], "8.6.0": [ { "comment_text": "", "digests": { "md5": "942c8bd7daa7ec1789a9601c86816215", "sha256": "045085296ffbbde142c2361e19f0d29fe10f4f92dda9ef97042c6d03b9acc314" }, "downloads": -1, "filename": "django-spectator-8.6.0.tar.gz", "has_sig": false, "md5_digest": "942c8bd7daa7ec1789a9601c86816215", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 191148, "upload_time": "2018-04-17T14:22:21", "url": "https://files.pythonhosted.org/packages/ce/4b/124f48cfafd632f76bda0f633494114fa432eb20a7f163bfb436c2961173/django-spectator-8.6.0.tar.gz" } ], "8.6.1": [ { "comment_text": "", "digests": { "md5": "374fd88539dbcc70d1bfad9690f578a8", "sha256": "8dbc71bed8d9ac97729efb2d787c92044ca1ee8bd587d3ec31c37b97045d7835" }, "downloads": -1, "filename": "django-spectator-8.6.1.tar.gz", "has_sig": false, "md5_digest": "374fd88539dbcc70d1bfad9690f578a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 190012, "upload_time": "2018-04-17T16:45:26", "url": "https://files.pythonhosted.org/packages/81/a6/a08870f4061913ea08d353ed0912cf66964809f67a7b6cebf33ea32f94c7/django-spectator-8.6.1.tar.gz" } ], "8.6.2": [ { "comment_text": "", "digests": { "md5": "1174bd1882ea70e8153a50c01de125c1", "sha256": "7eb7216068f76ff03f137aceb17bbc1b82b78fe165341ae5a2351f27158cd6ed" }, "downloads": -1, "filename": "django-spectator-8.6.2.tar.gz", "has_sig": false, "md5_digest": "1174bd1882ea70e8153a50c01de125c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 190073, "upload_time": "2018-04-17T17:23:48", "url": "https://files.pythonhosted.org/packages/de/a7/3a8a912a330f0ad48de34926b5430a7ce735be2d14f76775e0b9eea42026/django-spectator-8.6.2.tar.gz" } ], "8.6.3": [ { "comment_text": "", "digests": { "md5": "f03c83ab797223abdf759e1e9fa31fbb", "sha256": "e98730e966ce56449ac7b3c9d5b932ae30ed71546c404b95c688ff9bf00e834e" }, "downloads": -1, "filename": "django-spectator-8.6.3.tar.gz", "has_sig": false, "md5_digest": "f03c83ab797223abdf759e1e9fa31fbb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 190565, "upload_time": "2018-05-16T16:07:54", "url": "https://files.pythonhosted.org/packages/e7/39/6051b57bbe2a22bb8d9770f5abbbbc3d3e266cfabbf5be2f0e70f076c92d/django-spectator-8.6.3.tar.gz" } ], "8.7.0": [ { "comment_text": "", "digests": { "md5": "e24291797e50baba03226ebeea05abd4", "sha256": "6d47895bf14f5300d5b805ccc3f3c9ac18651e378f2f9d12a300fa203f847fd5" }, "downloads": -1, "filename": "django-spectator-8.7.0.tar.gz", "has_sig": false, "md5_digest": "e24291797e50baba03226ebeea05abd4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 191205, "upload_time": "2018-10-24T14:18:21", "url": "https://files.pythonhosted.org/packages/d7/bc/735700aef6ff1e0fd467858d989154dc487c2f1f2a93a1c27f012380673b/django-spectator-8.7.0.tar.gz" } ], "8.7.1": [ { "comment_text": "", "digests": { "md5": "f365e44aa71830764c0849fc9dcf1eae", "sha256": "82489d9f67d6957be671d7d59bd5794b51df4e60043664c2131eb3cc51cd8059" }, "downloads": -1, "filename": "django-spectator-8.7.1.tar.gz", "has_sig": false, "md5_digest": "f365e44aa71830764c0849fc9dcf1eae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 191282, "upload_time": "2018-11-08T13:01:04", "url": "https://files.pythonhosted.org/packages/f1/5f/6a69b9d1aea0c5a2772ed05b2040376065d9db24ea4ccb5013a455780bc3/django-spectator-8.7.1.tar.gz" } ], "8.7.2": [ { "comment_text": "", "digests": { "md5": "b045de349f78b546b0cdbca24ebddd09", "sha256": "5ad1bdc58435e618c39d9dd5f223b12de719c7009b6bcf4a1a16a76e9ccc7a8d" }, "downloads": -1, "filename": "django-spectator-8.7.2.tar.gz", "has_sig": false, "md5_digest": "b045de349f78b546b0cdbca24ebddd09", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 191312, "upload_time": "2019-05-05T16:09:56", "url": "https://files.pythonhosted.org/packages/b8/2a/7d1c1f5aa66b982e0dac28d432277913a6fce500465fcd040eb955a0f820/django-spectator-8.7.2.tar.gz" } ], "8.8.0": [ { "comment_text": "", "digests": { "md5": "ece855a36a3af41264fe164ed3db75ab", "sha256": "f4b0216f89745d2a26e788b9b4f28e4d967e8ebace221fa10529005b1128d8f4" }, "downloads": -1, "filename": "django-spectator-8.8.0.tar.gz", "has_sig": false, "md5_digest": "ece855a36a3af41264fe164ed3db75ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 202115, "upload_time": "2019-05-05T16:20:33", "url": "https://files.pythonhosted.org/packages/a0/86/c0a3d87179795278641a4694040459dd9be3bc8586ebb1c50e9abe11c27b/django-spectator-8.8.0.tar.gz" } ], "9.0.0": [ { "comment_text": "", "digests": { "md5": "77bcc7e107e45f8a7b5861f8ec6796a6", "sha256": "d6d7577991f199e6d4fb13606254da04ff3d5976bda101e4873b1cdc3b1c9057" }, "downloads": -1, "filename": "django-spectator-9.0.0.tar.gz", "has_sig": false, "md5_digest": "77bcc7e107e45f8a7b5861f8ec6796a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 205194, "upload_time": "2019-07-31T16:48:23", "url": "https://files.pythonhosted.org/packages/b5/dc/5f5207ad26290a516ac4839a4b9eb5cd035319a7ab46ee8d31317d0d0d5e/django-spectator-9.0.0.tar.gz" } ], "9.0.1": [ { "comment_text": "", "digests": { "md5": "66e39743d93ebf40a8b585d3e48bd4b9", "sha256": "1af8af4ebef6c444ba6dcb560eeb31b0bdd703275f5a8b6e368ff6c812d86fa0" }, "downloads": -1, "filename": "django-spectator-9.0.1.tar.gz", "has_sig": false, "md5_digest": "66e39743d93ebf40a8b585d3e48bd4b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 205189, "upload_time": "2019-08-07T17:25:28", "url": "https://files.pythonhosted.org/packages/25/2a/8ca927e4f4589de0c3f30cc3091caa2291a919a3bd6864746617c48aa3b9/django-spectator-9.0.1.tar.gz" } ], "9.1.0": [ { "comment_text": "", "digests": { "md5": "d302d1973b91ef8f1e142dd1bc1264bd", "sha256": "2874fda46a87174ed64b5456c00e1b6ee671933ba9c312fb28905ee6a7114a37" }, "downloads": -1, "filename": "django-spectator-9.1.0.tar.gz", "has_sig": false, "md5_digest": "d302d1973b91ef8f1e142dd1bc1264bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 205626, "upload_time": "2019-10-19T17:03:07", "url": "https://files.pythonhosted.org/packages/c9/61/e153dd2c84255f9082fcc4e70f7723485132ce7573fdb33a62615bb37852/django-spectator-9.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d302d1973b91ef8f1e142dd1bc1264bd", "sha256": "2874fda46a87174ed64b5456c00e1b6ee671933ba9c312fb28905ee6a7114a37" }, "downloads": -1, "filename": "django-spectator-9.1.0.tar.gz", "has_sig": false, "md5_digest": "d302d1973b91ef8f1e142dd1bc1264bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 205626, "upload_time": "2019-10-19T17:03:07", "url": "https://files.pythonhosted.org/packages/c9/61/e153dd2c84255f9082fcc4e70f7723485132ce7573fdb33a62615bb37852/django-spectator-9.1.0.tar.gz" } ] }